NVIDIA NemotronLabs VoiceChat 11B : un IA vocale open source en full-duplex avec appels d'outils en temps réel
NVIDIA a publié NemotronLabs VoiceChat 11B, un modèle de voix-à-voix de bout en bout en temps réel, conçu pour des conversations vocales naturelles en full-duplex. Contrairement aux approches par pipeline courantes,

NVIDIA NemotronLabs VoiceChat 11B apporte la voix full-duplex et l'appel d'outils en temps réel à l'IA vocale ouverte
Introduction
NVIDIA a publié NemotronLabs VoiceChat 11B, un modèle voix-voix en temps réel de bout en bout, conçu pour des conversations vocales full-duplex naturelles.
Contrairement aux pipelines courants qui enchaînent la reconnaissance vocale automatique, le grand modèle de langage et la synthèse vocale, VoiceChat traite la compréhension et la génération vocales en continu au sein d'une architecture unifiée. L'objectif est de réduire les étapes intermédiaires qui ajoutent généralement de la latence et rendent les assistants vocaux moins naturels.
Le modèle peut écouter pendant que la conversation se déroule, céder la parole lorsque l'utilisateur l'interrompt, puis reprendre naturellement une fois que l'utilisateur a fini de parler. NVIDIA rapporte une latence de prise de parole fluide de 448 millisecondes sur Full-Duplex-Bench 1.0, et une latence d'interruption d'environ 480 millisecondes.
VoiceChat introduit également une fonctionnalité particulièrement pertinente pour les agents vocaux en production : l'appel d'outils en temps réel pendant que la conversation vocale reste active. Un canal de sortie séparé peut émettre des instructions d'appel d'outils, tandis que des messages de confirmation prédéfinis aident l'agent à éviter les silences gênants pendant les requêtes API externes.
Cette publication est significative, mais elle en est encore à ses débuts. NVIDIA qualifie le modèle de recherche uniquement, recommande une mémoire GPU conséquente pour le déploiement et documente plusieurs limitations concernant les longues conversations, les environnements bruyants, le raisonnement, l'utilisation multi-outils et la parole incontrôlée.
Une architecture voix-voix unifiée
Les assistants vocaux temps réel traditionnels se présentent généralement comme suit :
Vocal de l'utilisateur
↓
ASR (reconnaissance vocale automatique)
↓
Texte
↓
LLM (grand modèle de langage)
↓
Réponse textuelle
↓
TTS (synthèse vocale)
↓
Vocal de l'agent
VoiceChat intègre ces capacités dans un modèle beaucoup plus étroitement intégré.
NVIDIA décrit ce système de 11B comme une architecture hybride Mamba/Transformer composée de :
- Un encodeur vocal Fast Conformer
- Un tronc de modèle de langage Nemotron Nano v2 9B
- Un décodeur TTS NVIDIA et un codec audio
- Un canal séparé pour les scripts d'appel d'outils
L'utilisateur fournit la parole à 16 kHz. Les sorties incluent le texte de l'agent, la voix de l'agent et la transcription de l'utilisateur, l'audio de l'agent étant généré à 22,05 kHz.
Le full-duplex signifie que les conversations peuvent se chevaucher
Les assistants half-duplex traitent les conversations comme des talkies-walkies : une personne parle, puis l'autre répond.
Les systèmes full-duplex peuvent modéliser en continu les deux côtés de la conversation. Cela permet de gérer les interruptions, les pauses, les échanges aller-retour et une prise de parole plus naturelle.
Les résultats publiés par NVIDIA pour Full-Duplex-Bench 1.0 incluent :
| Métrique | Résultat VoiceChat 11B |
|---|---|
| TOR de prise de parole fluide | 0,82 |
| Latence de prise de parole fluide | 448 ms |
| TOR d'interruption utilisateur | 1,0 |
| Latence d'interruption utilisateur | 480 ms |
| Score GPT-4o pour l'interruption utilisateur | 4,33 |
La valeur de 448 millisecondes mentionnée dans l'article original provient du benchmark de prise de parole fluide. NVIDIA résume le modèle comme offrant une latence de réponse d'environ 450 millisecondes.
VoiceChat est conçu pour céder la parole lorsque l'utilisateur l'interrompt
La gestion des interruptions est l'une des plus grandes différences entre une démonstration vocale et un agent conversationnel utilisable.
VoiceChat
Le modèle a été entraîné directement pour la prise de parole conversationnelle. Lorsque l'utilisateur commence à parler au milieu de la réponse du modèle, le système peut arrêter son tour de parole et écouter.
La documentation des limitations connues de NVIDIA précise également que ce comportement n'est pas parfait dans tous les cas. Le modèle peut encore interrompre l'utilisateur à ses pauses, continuer à parler après avoir dû s'arrêter, initier de nouveaux tours sans nouvelle entrée, tomber dans des boucles ou mal gérer les signaux de retour.
L'appel d'outils en temps réel est la fonctionnalité technique la plus intéressante
VoiceChat 11B est le premier modèle full-duplex open source de NVIDIA à prendre en charge l'appel d'outils, conçu pour maintenir une interaction vocale naturelle lors de l'utilisation d'outils.
Les agents vocaux ont souvent besoin d'informations qui ne sont pas contenues dans le modèle. Par exemple :
Quel est le statut actuel de ma commande ?
Le modèle peut avoir besoin d'appeler une API de gestion de commandes avant de pouvoir répondre.
VoiceChat prend en charge les messages de confirmation pour les outils. Les développeurs peuvent définir de courtes phrases comme :
D'accord, laissez-moi vérifier cela pour vous.
Lorsque le modèle décide d'appeler un outil, le système peut prononcer l'une de ces phrases pendant le traitement de la requête externe.
Le flux simplifié est le suivant :
L'utilisateur parle
↓
VoiceChat répond
↓
Le modèle détermine qu'un outil est nécessaire
↓
L'événement d'appel d'outil est envoyé au client
↓
Le client exécute la fonction externe
↓
Le résultat de l'outil est renvoyé à VoiceChat
↓
VoiceChat reprend la réponse vocale
Limitations importantes de l'appel d'outils
NVIDIA recommande au maximum environ cinq outils par session, car les performances peuvent se dégrader avec davantage d'outils disponibles.
Le modèle ne peut actuellement pas appeler plusieurs outils de manière fiable en même temps.
Les autres limitations incluent des erreurs de sélection d'outils, des appels d'outils ignorés, des paramètres hallucinés, une mauvaise transcription des résultats d'outils, et le fait de s'appuyer sur des connaissances internes alors qu'un outil devrait être utilisé.
Un détail particulièrement important : bien que VoiceChat prenne en charge les interruptions par l'utilisateur en conversation normale, l'utilisateur ne peut actuellement pas interrompre l'agent pendant l'exécution d'un outil.
Résultats des benchmarks d'appel d'outils
Les résultats rapportés pour le harnais AU sont :
| Catégorie d'appel d'outils | Score |
|---|---|
| Simple | 58,5 % |
| Multiple | 62,5 % |
| Parallèle | 42,5 % |
| Parallèle multiple | 27,5 % |
| Non-pertinence | 89,6 % |
| Moyenne | 56,1 % |
Sur Full-Duplex-Bench v3, NVIDIA rapporte :
| Métrique | Score |
|---|---|
| Sélection d'outils | 82,5 % |
| Précision des paramètres | 44,2 % |
| Pass@1 | 33 % |
Ces chiffres indiquent que l'appel d'outils en production devrait toujours être protégé par la logique applicative et la validation des paramètres.
VoiceChat se classe parmi les meilleurs modèles full-duplex open source
NVIDIA rapporte que VoiceChat se classe deuxième parmi les modèles full-duplex open source sur VoiceBench et Full-Duplex-Bench 1.0.
Le modèle est optimisé pour le compromis entre l'intelligence générale et la conversation naturelle en temps réel. NVIDIA avertit explicitement que ses performances en matière de connaissances, de respect des instructions, de sécurité et de tâches de raisonnement peuvent être inférieures à celles du modèle de langage sous-jacent Nemotron Nano v2.
Le modèle est entraîné sur environ 550 000 heures d'audio
La fiche technique du modèle NVIDIA indique environ 550 000 heures de données audio d'entraînement.
Ces données mixtes
incluent de la parole réelle et synthétique, ainsi que des données textuelles pour les composants du modèle de langage. Les sources de données nommées incluent Fisher, LibriVox, LibriTTS, HiFi-TTS, VCTK, PromptTTS, UltraChat, des données vocales internes NVIDIA, de la parole synthétique, des données d'appel de fonctions Nemotron et des données d'entraînement PersonaPlex.
VoiceChat utilise une voix fixe
Le checkpoint actuel de VoiceChat ne prend pas en charge le clonage vocal.
Le dépôt NVIDIA indique que le checkpoint publié utilise une voix fixe. L'objectif de cette publication est plus ciblé : faible latence, comportement conversationnel full-duplex et interaction vocale consciente des outils.
Les exigences matérielles sont assez élevées
Les prérequis actuels de déploiement en temps réel de NVIDIA exigent explicitement :
Un GPU NVIDIA avec au moins 80 Go de mémoire vidéo
Les GPU pris en charge par le conteneur documenté incluent les NVIDIA A100, H100, RTX 6000 Pro et B200. La fiche technique plus large liste également les compatibilités H200 et B100.
Pour le conteneur temps réel optimisé, NVIDIA exige actuellement x86_64, Linux, Docker, le kit d'outils de conteneur NVIDIA et des pilotes NVIDIA compatibles.
Le guide de dépannage indique que le modèle lui-même utilise environ 66 Go de mémoire GPU.
Aucune API d'inférence gérée mature n'est disponible
Au 11 août, la page du modèle Hugging Face ne répertorie aucun fournisseur d'inférence actif pour ce checkpoint.
À la place, NVIDIA propose deux voies principales :
- Inférence hors ligne, à partir du checkpoint Hugging Face
- Streaming interactif, via des conteneurs NVIDIA optimisés
Les conteneurs temps réel intègrent CUDA, Triton, vLLM et la pile complète d'inférence VoiceChat, et exposent un service WebSocket bidirectionnel.
Comment exécuter l'inférence hors ligne
Clonez la branche expérimentale VoiceChat de NVIDIA :
git clone https://github.com/NVIDIA-NeMo/Speech.git
cd Speech
git switch nemotron-labs-voicechat
export NEMO_DIR="$(pwd)"
Créez l'environnement :
conda create -y -n voicechat python=3.12
conda activate voicechat
pip install torch==2.10.0 torchvision==0.25.0 torchaudio==2.10.0
pip install -e ".[all]"
pip uninstall -y nvidia-resiliency-ext
pip install transformers==4.56.0 tokenizers==0.22.0 lhotse==1.32.2 huggingface-hub==0.34.4 hf-xet==1.1.9 torchcodec==0.10.0 torch_audiomentations jinja2
pip install ninja packaging wheel einops
pip install --no-build-isolation --no-deps causal-conv1d==1.6.2.post1 mamba-ssm==2.3.2.post1
Téléchargez le checkpoint :
hf download nvidia/NVIDIA-NemotronLabs-VoiceChat-11B --local-dir /path/to/checkpoint
Exécutez l'exemple :
conda activate voicechat
export NEMO_DIR=/path/to/Speech
python "$NEMO_DIR/examples/speechlm2/offline_voicechat_infer.py" --checkpoint /path/to/checkpoint --wav "$NEMO_DIR/examples/speechlm2/sample_audio/sample_general.wav" --output-dir /path/to/output
NVIDIA recommande d'ajouter suffisamment de silence à la fin de l'audio d'entrée personnalisé pour laisser au modèle le temps de répondre.
Comment déployer le conteneur temps réel
Téléchargez le dépôt du modèle :
ngc registry model download-version nim/nvidia/nemotron-labs-voicechat:1.0.0
chmod -R 777 nemotron-labs-voicechat_v1.0.0
Démarrez le service :
docker run -it --rm
--name=nemotron-labs-voicechat --runtime=nvidia --gpus '"device=0"' --shm-size=8GB -e NIM_HTTP_API_PORT=9000 -p 9000:9000 -v $(pwd)/nemotron-labs-voicechat_v1.0.0:/data/models --entrypoint /s2s/run_s2s_server.sh nvcr.io/nim/nvidia/nemotron-labs-voicechat:latest
Vérifiez l'état de préparation :
curl 'http://localhost:9000/v1/realtime/health'
Le serveur expose ensuite un point de terminaison WebSocket bidirectionnel à l'adresse suivante :
ws://localhost:9000/v1/realtime
Une définition d'outil simple
Un exemple simplifié de définition d'outil est le suivant :
[
{
"name": "get_weather",
"description": "Obtenir la météo actuelle d'une ville",
"ack_messages": [
"Très bien, laissez-moi vérifier cela pour vous."
],
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string"
}
},
"required": ["city"]
}
}
]
Le champ ack_messages fournit au système un contenu de réponse naturel pendant l'exécution de l'outil.
Réservé à la recherche uniquement — les équipes de production doivent être prudentes
NVIDIA marque explicitement VoiceChat 11B comme étant réservé à la recherche uniquement.
Le modèle a été entraîné avec une fenêtre de contexte audio ne dépassant pas environ deux minutes ; les contextes de conversation plus longs risquent donc de ne pas être conservés de manière fiable.
Les problèmes connus incluent des erreurs d'inférence, des hallucinations, une dégradation de la qualité vocale après plusieurs tours de conversation, des répétitions, du texte illisible, des coupures vocales, des enchaînements incontrôlés, des dialogues avec soi-même, des boucles de clarification, des mots manquants dans la transcription, des changements de langue peu fiables, ainsi que des performances médiocres dans des environnements bruyants ou très réverbérants.
Cas d'usage potentiels pour VoiceChat 11B
Les scénarios de recherche et de prototypage potentiels incluent :
Centres de contact
Les agents peuvent écouter naturellement, gérer les interruptions, appeler des outils de service client et utiliser des messages de confirmation en attendant les réponses des API.
Assistants embarqués
Les conducteurs peuvent interrompre l'assistant sans attendre la fin complète de la réponse vocale. La sensibilité actuelle au bruit de fond implique que le déploiement embarqué nécessite un travail d'optimisation supplémentaire.
Commande en restauration et commerce de détail
Les agents vocaux peuvent collecter les commandes, répondre aux corrections et interroger les systèmes de produits ou de stocks.
Accessibilité
Des tours de parole plus naturels facilitent les interfaces mains libres et les applications vocales, mais les déploiements d'accessibilité nécessitent des tests utilisateurs minutieux.
Agents vocaux d'entreprise
Les organisations peuvent expérimenter avec des outils internes et des interactions vocales auto-hébergées, tout en gardant le modèle dans leur propre infrastructure.
Un modèle ouvert, mais sous deux licences différentes
L'expression « open source » mérite d'être précisée.
Le code NeMo Speech utilisé par VoiceChat est distribué sous licence Apache 2.0.
Les matériaux du modèle VoiceChat sont distribués sous licence OpenMDW 1.1.
Il est donc plus prudent de qualifier VoiceChat 11B de modèle ouvert ou de modèle à poids ouverts, plutôt que de supposer que la licence du modèle est identique à celle du logiciel environnant sous licence Apache.
Les équipes prévoyant une redistribution ou une utilisation commerciale doivent examiner directement la licence OpenMDW.
Ce que les développeurs devraient tester avant la production
Un plan d'évaluation utile devrait couvrir :
Les tours de parole et la gestion des interruptions utilisateur
Les pauses en milieu de phrase et les signaux de retour
L'audio bruyant, avec écho et multi-locuteurs
Les paramètres d'outil erronés ou manquants
Délais d'attente des outils et échecs d'appel API
- Conversations longues
- Parole incontrôlée
- Hallucinations et problèmes de qualité du raisonnement
- Approbation requise pour les opérations sensibles
- Journalisation, limitation de débit et escalade humaine
Les agents vocaux capables d'appeler des outils nécessitent les mêmes contrôles d'autorisation que les autres agents autonomes.
Questions fréquentes
Qu'est-ce que le NVIDIA NemotronLabs VoiceChat 11B ?
Le NemotronLabs VoiceChat 11B est un modèle de conversation vocale de bout en bout en temps réel développé par NVIDIA pour l'IA conversationnelle en duplex intégral. Il combine la compréhension vocale en flux continu, le backbone de modèle de langage Nemotron, la génération vocale et un canal d'appel d'outils indépendant.
Quelle est la vitesse du VoiceChat 11B ?
NVIDIA rapporte une latence de prise de parole fluide de 448 millisecondes et une latence d'interruption d'environ 480 millisecondes sur le benchmark Full-Duplex-Bench 1.0.
Les utilisateurs peuvent-ils interrompre VoiceChat pendant qu'il parle ?
Oui, les conversations normales prennent en charge les insertions et les interruptions. Cependant, NVIDIA indique que les utilisateurs ne peuvent actuellement pas interrompre l'agent pendant l'exécution d'un outil.
VoiceChat 11B prend-il en charge les appels de fonction ?
Oui. Le modèle peut émettre des appels d'outils via un canal de sortie indépendant, et les développeurs peuvent définir des messages de confirmation annoncés pendant l'exécution d'outils externes.
De combien de mémoire GPU VoiceChat 11B a-t-il besoin ?
Le conteneur en temps réel de NVIDIA nécessite un GPU avec au moins 80 Go de mémoire vidéo. La documentation de dépannage indique que le modèle chargé utilise environ 66 Go.
Existe-t-il une API hébergée pour VoiceChat 11B ?
NVIDIA propose actuellement une inférence hors ligne auto-hébergée et une documentation optimisée sur les conteneurs en temps réel. La page du modèle sur Hugging Face ne répertorie actuellement aucun fournisseur d'inférence hébergée.
VoiceChat peut-il cloner des voix ?
Non. Le point de contrôle publié utilise une voix fixe et ne prend pas en charge le clonage vocal.
VoiceChat 11B peut-il être utilisé en production ?
NVIDIA marque ce modèle comme étant réservé à la recherche uniquement. Les développeurs doivent évaluer ses limites en matière de longueur de contexte, de raisonnement, d'utilisation d'outils, d'audio bruyant, de répétitions, de transcription et de parole incontrôlée avant tout déploiement en production.
Outils associés
- NVIDIA NemotronLabs VoiceChat 11B : fiche officielle du modèle, poids, benchmarks, architecture, licence et instructions d'inférence.
- NVIDIA NeMo Speech : dépôt vocal officiel contenant l'implémentation de VoiceChat et la branche de déploiement.
- Guide du conteneur en temps réel NVIDIA VoiceChat : documentation officielle de déploiement Docker, WebSocket et appels de fonction.
- Boîte à outils de conteneurs NVIDIA : permet aux conteneurs Docker d'accéder aux GPU NVIDIA.
- vLLM : moteur d'inférence répertorié dans la fiche du modèle NVIDIA VoiceChat.
- VoiceBench : benchmark ouvert pour évaluer les assistants vocaux basés sur des LLM.
Liens connexes
La source principale couvre la date de sortie, les benchmarks, les données d'entraînement, l'architecture et le statut de recherche uniquement.
- Branche GitHub VoiceChat : code source officiel, instructions d'installation, exigences matérielles, limites et description du modèle.
- Prérequis de déploiement en temps réel : exigences matérielles, Linux, Docker, pilotes et boîte à outils de conteneurs.
- Guide de déploiement en temps réel : documentation NVIDIA sur le démarrage du conteneur, les vérifications de santé, WebSocket, les clients et les appels d'outils.
- Licence OpenMDW 1.1 : licence régissant les éléments du modèle VoiceChat.
- Full-Duplex-Bench : benchmark pour évaluer la gestion des pauses, la prise de parole alternée et les comportements d'interruption.
- Full-Duplex-Bench v3 : benchmark axé sur les interactions vocales en duplex intégral avec appels d'outils.
Résumé
Le NVIDIA NemotronLabs VoiceChat 11B intègre la compréhension vocale, la modélisation du langage, la génération vocale, la gestion des interruptions et les appels d'outils dans une architecture unifiée en duplex intégral. NVIDIA rapporte une latence de prise de parole alternée de seulement 448 millisecondes et positionne ce modèle en tête des benchmarks ouverts actuels de conversation vocale en duplex intégral.
La caractéristique d'ingénierie la plus remarquable est l'appel d'outils. Un canal de sortie indépendant peut déclencher des fonctions externes, tandis que des messages de confirmation évitent le silence pendant les appels API.
Cette version ne constitue pas encore un service complet prêt pour la production. Le déploiement en temps réel nécessite au moins 80 Go de mémoire GPU, le point de contrôle actuel utilise une voix fixe, l'inférence hébergée n'est pas encore largement disponible, et NVIDIA documente explicitement des limites significatives concernant les sessions plus longues, le raisonnement, l'audio bruyant et l'exécution d'outils.
VoiceChat 11B doit être davantage considéré comme une plateforme de recherche ouverte pour construire et étudier des agents vocaux à faible latence, plutôt que comme une solution mature destinée à remplacer les centres d'appels ou les API vocales grand public en production.