Знакът на КАГАМИ КАГАМИ
kagami.bg/academy · lesson · machine-readable viewUPDATED 2026-10-03
IDENTITY
module
GX10-04-62 · Audio2Face-3D: facial animation from speech audio
series
GX10 (local AI server class: NVIDIA GB10, e.g. ASUS Ascent GX10 / DGX Spark)
level
Intermediate
duration
about 2 h
prerequisites
Docker with the NVIDIA Container Toolkit; an NGC personal API key; Python 3 with venv; a short 16 kHz mono 16-bit WAV file
trust_label
UPDATED 2026-10-03 (re-checked against the Audio2Face-3D NIM documentation, the build.nvidia.com catalogue page and the Hugging Face card of Audio2Face-3D-v3.0) · NOT TESTED: no GB10 machine was available; no command was run; no latency or memory figure was measured; GB10 is not named in the documentation's lists of pre-generated engines, and ARM64 support of the NIM was not confirmed
language
human view: bg · english edition: /en/academy/gx10/ (same file name)
previous / next
04-61_Digital_Human_NPC.html / GX10 series index
PURPOSE

Show how audio-driven facial animation works with the Audio2Face-3D NIM (version 2.0 in the documentation read): speech audio goes in over gRPC, facial animation data (blendshapes) comes out together with the audio and emotion data. The lesson covers the documented launch commands, the health check, the sample client, the model and container licences, the rule against using the software for emotion recognition, and the duty to disclose that a talking face is AI. It does not claim performance figures.

KEY CONCEPTS
COMMANDS / PATHS
CHECKLIST
NEXT MODULE

Series index: kagami.bg/academy/gx10/ · previous: 04-61 Digital human · related: 04-79 LipSync video, 04-104 Riva Speech API · offer: Quick experiment (kagami.bg/stalbata/)

SOURCES
TAGS
gx10audio2facefacial-animationnimgrpclicencesai-act
ОБНОВЕНО · 03.10.2026

Audio2Face-3D на GX10: лицева анимация по глас

Audio2Face-3D на NVIDIA получава звукозапис на реч и връща движенията на лицето на аватар: устни, челюст, очи. Тук минаваме по пътя, описан в официалната документация: контейнер, проверка на здравето, примерен клиент, лицензи и правилата за говорещи лица. Предупреждаваме отсега: GB10 не е сред изброените в документацията графични процесори, а ние не сме пускали нищо на такава машина.

⏱ 2 ч Средно GX10 Audio2Face-3D NIM 2.0 gRPC · Лицензи · Регламент за ИИ
Audio2Face-3D NIM (контейнер)🔒 локално Примерен клиент (Python, gRPC)🔒 локално
🔄
ОБНОВЕНО · 03.10.2026 — какво
Урокът е преработен по официалната документация на NVIDIA. Махнахме таблицата с „измерени“ стойности (под 8 ms на кадър, под 300 ms от край до край, 3,2 GB памет, над 60 кадъра в секунда и сравнението с облачна карта): документацията не дава такива числа за GB10, а ние не сме мерили. Махнахме и кода, който ползваше несъществуващи имена на извиквания, адрес на образа „1.0.0“, порт 52001 и „режим на поточно предаване“ на настолното приложение: никое от тях не е потвърдено в документацията. Поправихме: образът е audio2face-3d:2.0, gRPC е на порт 52000, проверката на здравето е по HTTP на порт 8000. Бележката, че езикът не е проблем, също е махната: не е потвърдена. Добавихме: лицензите по части, забраната за разпознаване на емоции, факта, че облачният адрес на каталога е спрян, ограниченията за видовете графични процесори и правилата по Регламента за ИИ. Примерът вече не е свързан с конкретна организация.
⚠️
Какво не сме пускали сами
Нямахме машина от класа GB10, затова няма етикет „ТЕСТВАНО“. Командите са преписани от документацията и не са пускани. Не знаем дали контейнерът върви на GB10: тя не е в списъка с готови профили, документацията описва инсталация за Ubuntu 24.04 с хранилища за x86_64, а изискването за CUDA е „12.8 или по-висока, под 13.0“. Не сме мерили забавяне, памет или кадри в секунда. Не знаем и колко добре моделът се справя с български реч: документацията не го твърди.

01Какво ще научиш

02Преди да започнеш

Какво казва документацията (към 03.10.2026)

ТемаКакво пише
Версия и образКонтейнер nvcr.io/nim/nvidia/audio2face-3d:2.0; gRPC на порт 52000; HTTP на порт 8000 за здраве, метрики и версия
ПерсонажиГотови модели james (по подразбиране), claire, mark и multi (дифузионен). Това са имена на еталонните лица на NVIDIA, не на реални хора от нашия свят
Готови профилиЗа A10G, A30, L4, L40S, RTX 4090, RTX 5080, RTX 5090, RTX 6000 Ada, RTX PRO 6000 Blackwell и B200. За карти без профил (като пример са дадени A100 и H100) двигателите се изграждат локално. GB10 не е в списъка
CUDAВерсията, която показва nvidia-smi в контейнера, трябва да е 12.8 или по-висока и под 13.0 (препоръчва се 12.9). Не сме проверявали как това се връзва с GB10
ИнсталацияСтъпките в документацията са за Ubuntu 24.04 и хранилища за x86_64. Дали контейнерът има вариант за ARM64, не потвърдихме
Модел v3.0 (описание в Hugging Face)Около 180 милиона параметъра; трансформър и дифузия; на изхода — движение на кожата, езика, челюстта и очите. Известно ограничение: при лош звук устните може да се движат неточно
Облачен адрес на каталогаСтраницата в build.nvidia.com отбелязва, че облачната крайна точка е спряна. Урокът ползва само изтегляния контейнер

Лицензи (по официалните страници, 03.10.2026)

ЧастЛиценз по страницатаНа какво да внимаваш
SDK и приставкиMITКодът, не моделите
Рамка за обучениеApacheСамо ако обучаваш свои модели
Модели (напр. Audio2Face-3D-v3.0)NVIDIA Open Model License; описанието казва „ready for commercial/non-commercial use“Прочети самия лиценз за твоята употреба
Audio2EmotionСобствен („custom“) лицензУпотреба само заедно с Audio2Face
Примерен набор данниСамо за оценкаНе за обучение на продукт
Контейнер (NIM)NVIDIA Software License Agreement и специфичните условия за продукти с ИИРазличен договор от горните
⚠️
Забрана по документацията
Документацията на контейнера забранява употребата на софтуера за разпознаване на емоции. Изходът с емоции служи за управление на анимацията, не за да „четеш“ хората пред камерата.
⚠️
Това не е правно становище
Таблицата препраща към онова, което пише на официалните страници, и то може да се промени. За публичен или платен продукт прочети самите текстове или питай юрист.

03Стъпки

  1. Правила, преди да има лице

    • Казваме, че е ИИ. Чл. 50, пар. 1 на Регламент (ЕС) 2024/1689: системите, предназначени да взаимодействат пряко с хора, се проектират така, че засегнатите да са информирани, че имат работа със система с ИИ, освен ако е очевидно. Говорещо лице на екран в зала не е очевидно за всеки посетител: сложи ясен надпис.
    • Не имитираме реален човек. Чл. 50, пар. 4 изисква оповестяване при дийпфейк съдържание. Лице и глас на истински човек се ползват само с негово писмено съгласие и с оповестяване. Дали си „доставчик“ или „ползвател“ по смисъла на Регламента, е правен въпрос.
    • Не четем емоции. Виж забраната в „Преди да започнеш“.

    Текстът е от EUR-Lex както е публикуван; по чл. 113 Регламентът се прилага от 2 август 2026 г., с изброените там изключения. Не сме проверявали за по-късни изменения.

  2. Влез в каталога на NVIDIA

    bash
    export NGC_API_KEY=<твоят-ключ>
    echo "$NGC_API_KEY" | docker login nvcr.io --username '$oauthtoken' --password-stdin

    Потребителското име $oauthtoken е буквално така: то казва, че влизаш с ключ, а не с парола. Командата е по документацията и не е пускана от нас.

  3. Стартирай контейнера

    Първо виж кои профили съществуват, после стартирай с автоматичен избор:

    bash
    docker run -it --rm --network=host --gpus all \
      --entrypoint nim_list_model_profiles \
      nvcr.io/nim/nvidia/audio2face-3d:2.0
    
    docker run -it --rm --network=host --gpus all \
      -e NGC_API_KEY=$NGC_API_KEY \
      nvcr.io/nim/nvidia/audio2face-3d:2.0
    • Профилът трябва да съвпада с картата. Всеки профил съдържа двигатели (TensorRT), изградени за конкретен вид карта. Чужд профил се сваля, но не работи.
    • Автоматичният избор винаги сваля „james“. За друг персонаж задаваш профил с NIM_MANIFEST_PROFILE по таблицата в документацията.
    • Няма готов профил? Документацията описва локално изграждане на двигателите с NIM_DISABLE_MODEL_DOWNLOAD=true и PERF_A2F_MODEL; първото пускане отнема няколко минути. За GB10 не знаем дали това върви.
    • Грешно име на модел се прощава мълчаливо: контейнерът се връща към „james_v2.3.1“. Прочети в записите кой модел е зареден.

    Не сме пускали тези команди.

  4. Провери, че услугата е готова

    bash
    curl -s http://localhost:8000/v1/health/ready

    Документацията показва отговор със състояние „ready“. Има и /v1/health/live, /v1/metrics и /v1/version.

  5. Пусни примерния клиент

    bash
    git clone https://github.com/NVIDIA/Audio2Face-3D-Samples.git
    cd Audio2Face-3D-Samples
    git checkout tags/v2.0
    cd scripts/audio2face_3d_microservices_interaction_app
    python3 -m venv .venv
    source .venv/bin/activate
    pip3 install ../../proto/sample_wheel/nvidia_ace-1.2.0-py3-none-any.whl
    pip3 install -r requirements.txt
    
    python3 a2f_3d.py health_check --url 0.0.0.0:52000
    python3 a2f_3d.py run_inference ../../example_audio/Mark_neutral.wav config/config_james.yml -u 0.0.0.0:52000

    При успех клиентът пише състояние SUCCESS и записва папка с резултата. Според документацията в нея има: animation_frames.csv (движенията на лицето), out.wav (получения звук), a2f_3d_input_emotions.csv и a2f_3d_smoothed_emotion_output.csv (емоциите: подадените и изгладените във времето). Командите са по документацията и не са пускани от нас.

  6. Със собствен звук и с двигател за лица

    • Подай собствен WAV (16 kHz, 16 бита, един канал). При лош звук лицето може да се движи неточно: това е известно ограничение на модела.
    • Хранилището съдържа и приставки за програми за 3D (в таблицата с лицензите са Maya и Unreal). Не сме ги пускали и не даваме стъпки; започни от официалното хранилище.
    • Не записвай звука на посетители и не пази данните без ясна цел и правно основание: гласът на човек е лични данни.
  7. Измери собствените си числа

    Ние нямаме измервания за GB10, затова не ти даваме числа. Пусни един и същи запис пет пъти и попълни таблицата си:

    Какво меришТвоето число
    Време от подаването на звука до първите кадри…
    Общо време за запис от 30 секунди…
    Заета памет на графичния процесор (nvidia-smi)…

04Проверка

Тест

1. Какво подаваш на Audio2Face-3D?

2. Защо урокът не дава числа за забавяне и памет на GB10?

3. Какво е изрично забранено по документацията на контейнера?

4. Кога трябва да изградиш двигателите (TensorRT) локално?

05Какво следва

06Източници

  1. Audio2Face-3D NIM — документация 🔒 локално — стартиране, профили, здраве, примерен клиент, забрана за емоции.
  2. Страница в каталога на NVIDIA — бележка, че облачната крайна точка е спряна.
  3. Audio2Face-3D-v3.0 — описание на модела — лиценз, вход и изход, ограничения.
  4. NVIDIA Audio2Face-3D — хранилище — таблица с лицензите на частите.
  5. Audio2Face-3D-Samples — примерен клиент.
  6. EUR-Lex: Регламент (ЕС) 2024/1689 (Регламент за ИИ) — чл. 50 и чл. 113.