En bref
VibeVoice est la famille d'IA vocale open-source de Microsoft, comprenant trois modèles : VibeVoice-1.5B pour la synthèse vocale (jusqu'à 90 minutes, 4 locuteurs), VibeVoice-Realtime-0.5B pour le TTS en streaming, et VibeVoice-ASR pour la reconnaissance vocale (audio de 60 minutes, plus de 50 langues, 7,77 % WER). Tous les modèles sont sous licence MIT et fonctionnent localement. Ce guide couvre l'installation, l'utilisation et l'intégration API.
Essayez Apidog dès aujourd'hui
Introduction
Microsoft a lancé VibeVoice, un framework d'IA vocale open-source, début 2026. Il comprend des modèles pour la synthèse vocale (text-to-speech) et la reconnaissance vocale (automatic speech recognition), tous fonctionnant localement sur votre matériel sans dépendance au cloud.
Le framework propose trois modèles :
- VibeVoice-1.5B : génère un son conversationnel expressif et multi-locuteurs à partir de scripts textuels. Il peut synthétiser jusqu'à 90 minutes de parole avec 4 locuteurs distincts en un seul passage.
- VibeVoice-Realtime-0.5B : variante légère en streaming qui produit de l'audio avec une latence d'environ 300 ms pour le premier chunk.
- VibeVoice-ASR : transcrit jusqu'à 60 minutes d'audio continu avec identification des locuteurs, horodatage et sortie structurée dans plus de 50 langues.
Après la publication, les modèles TTS ont suscité la controverse. Microsoft a temporairement désactivé le dépôt GitHub principal à cause d'une mauvaise utilisation du clonage vocal. La communauté a forké le code, et Microsoft a réactivé le dépôt avec des protections supplémentaires : clause de non-responsabilité audible sur l'IA dans l'audio généré et filigrane imperceptible pour vérifier la provenance.
VibeVoice-ASR est disponible sur Azure AI Foundry pour le déploiement cloud. Les modèles TTS restent axés sur la recherche et sont sous licence MIT.
Ce guide présente l'installation, la génération texte-vers-parole, la reconnaissance vocale, l'intégration API et le test des API d'IA vocale avec Apidog.
Fonctionnement de VibeVoice : aperçu de l'architecture
La percée du tokeniseur
L'avancée majeure de VibeVoice réside dans ses tokeniseurs de parole continus fonctionnant à un débit d'images ultra-faible de 7,5 Hz (contre 50-100 Hz pour la majorité des modèles). Cette réduction permet au modèle de gérer de longues séquences (jusqu'à 90 minutes d'audio) sans perte de contexte.
Le système utilise deux tokeniseurs :
- Tokeniseur acoustique : Variante sigma-VAE (~340M paramètres), encodeur-décodeur à symétrie miroir. Sous-échantillonne 3 200 fois l'audio d'entrée de 24 kHz.
- Tokeniseur sémantique : Miroite l'architecture acoustique, entraîné en proxy ASR pour capturer la signification linguistique.
Diffusion par jeton suivant
Le modèle combine un noyau LLM (Qwen2.5-1.5B) avec une tête de diffusion légère (~123M paramètres). Le LLM gère le contexte textuel et le dialogue, la tête de diffusion génère les détails acoustiques avec DDPM (Denoising Diffusion Probabilistic Models) guidé.
Nombre total de paramètres : 3 milliards (tokeniseurs + tête de diffusion inclus).
Approche d'entraînement
VibeVoice utilise l'apprentissage par curriculum, s'entraînant progressivement sur des séquences toujours plus longues (4K, 16K, 32K, 64K jetons). Les tokeniseurs pré-entraînés restent figés ; seuls le LLM et la tête de diffusion sont mis à jour. Cela permet au modèle de traiter efficacement de longs audios.
Spécifications des modèles VibeVoice
| Modèle | Paramètres | Objectif | Durée max | Langues | Licence |
|---|---|---|---|---|---|
| VibeVoice-1.5B | 3 milliards (total) | Texte-vers-parole | 90 minutes | Anglais, Chinois | MIT |
| VibeVoice-Realtime-0.5B | ~0.5 milliards | TTS en streaming | Longue durée | Anglais, Chinois | MIT |
| VibeVoice-ASR | ~9 milliards | Reconnaissance vocale | 60 minutes | 50+ langues | MIT |
VibeVoice-1.5B (TTS)
| Spécification | Valeur |
|---|---|
| Base LLM | Qwen2.5-1.5B |
| Longueur de contexte | 64K jetons |
| Max. locuteurs | 4 simultanés |
| Sortie audio | 24kHz WAV mono |
| Type de tenseur | BF16 |
| Format | Safetensors |
| Téléchargements HF | 62 630/mois |
| Forks communautaires | 12 variantes affinées |
VibeVoice-ASR
| Spécification | Valeur |
|---|---|
| Base architecturale | Qwen2.5 |
| Paramètres | ~9 milliards |
| Traitement audio | Jusqu'à 60 minutes/passage |
| Débit d'images | 7.5 Hz |
| WER moyen | 7,77 % (8 datasets anglais) |
| WER LibriSpeech Clean | 2.20% |
| WER TED-LIUM | 2.57% |
| Langues | 50+ |
| Sortie | Structurée (Qui + Quand + Quoi) |
| Audio supporté | WAV, FLAC, MP3 à 16kHz+ |
Installation et configuration
Prérequis
- Python 3.8+
- GPU NVIDIA avec support CUDA
- 7-8 Go de VRAM min pour TTS
- 24 Go de VRAM min pour ASR (A100/H100 recommandé)
- 32 Go de RAM min (64 Go recommandé pour ASR)
- CUDA 11.8+ (12.0+ recommandé)
Installer VibeVoice TTS
# Cloner le repo
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice
# Installer les dépendances
pip install -r requirements.txt
Les modèles sont téléchargés automatiquement depuis HuggingFace à la première exécution. Pour les pré-télécharger :
from huggingface_hub import snapshot_download
# Télécharger le modèle TTS 1.5B
snapshot_download(
"microsoft/VibeVoice-1.5B",
local_dir="./models/VibeVoice-1.5B",
local_dir_use_symlinks=False
)
Installation via pip (paquet communautaire)
pip install vibevoice
Installation pour l'ASR
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice
pip install -r requirements-asr.txt
Ou déployez via Azure AI Foundry pour l'inférence cloud gérée.
Génération de parole avec VibeVoice-1.5B
Génération par un seul locuteur
Créez un fichier texte (script.txt) avec votre contenu :
Alice: Welcome to the Apidog developer podcast. Today we're covering API testing strategies for 2026.
Lancez l'inférence :
python VibeVoice \
--model_path microsoft/VibeVoice-1.5B \
--txt_path script.txt \
--speaker_names Alice \
--cfg_scale 1.5
La sortie est un fichier .wav dans outputs/.
Génération de podcast multi-locuteurs
Créez podcast_script.txt :
Alice: Welcome back to the show. Today we have two API experts joining us.
Bob: Thanks for having me. I've been working on REST API design patterns for the past five years.
Carol: And I focus on GraphQL performance optimization. Happy to be here.
Alice: Let's start with the debate everyone wants to hear. REST versus GraphQL for microservices.
Bob: REST gives you clear resource boundaries. Each endpoint maps to a specific resource.
Carol: GraphQL gives you flexibility. One endpoint, and the client decides what data it needs.
Lancez :
python VibeVoice \
--model_path microsoft/VibeVoice-1.5B \
--txt_path podcast_script.txt \
--speaker_names Alice Bob Carol \
--cfg_scale 1.5
Le modèle maintient chaque identité vocale sur toute la durée.
Clonage de voix (zero-shot)
Préparez un échantillon audio :
- Format : WAV (mono)
- 24 000 Hz
- 30-60 secondes de parole claire
Convertissez au bon format :
ffmpeg -i source_recording.m4a -ar 24000 -ac 1 reference_voice.wav
Lancez l'interface Gradio :
python demo/gradio_demo.py
Interface web sur http://127.0.0.1:7860 : téléchargez l'audio de référence, sélectionnez la voix clonée et générez la parole.
Streaming avec VibeVoice-Realtime-0.5B
Pour une sortie à faible latence (~300 ms) :
python demo/streaming_inference_from_file.py \
--model_path microsoft/VibeVoice-Realtime-0.5B \
--txt_path script.txt \
--speaker_name Alice
Le modèle Realtime est plus rapide mais avec une fidélité réduite.
Utilisation de VibeVoice avec Python
API Pipeline
from transformers import pipeline
from huggingface_hub import snapshot_download
# Télécharger le modèle
model_path = snapshot_download("microsoft/VibeVoice-1.5B")
# Charger le pipeline
pipe = pipeline(
"text-to-speech",
model=model_path,
no_processor=False
)
# Script multi-locuteurs
script = [
{"role": "Alice", "content": "How do you handle API versioning?"},
{"role": "Bob", "content": "We use URL path versioning. v1, v2, and so on."},
]
# Template chat
input_data = pipe.processor.apply_chat_template(script)
# Générer l'audio
generate_kwargs = {
"cfg_scale": 1.5,
"n_diffusion_steps": 50,
}
output = pipe(input_data, generate_kwargs=generate_kwargs)
Wrapper FastAPI pour la production
La communauté propose un wrapper FastAPI qui expose VibeVoice comme une API TTS compatible OpenAI :
git clone https://github.com/ncoder-ai/VibeVoice-FastAPI.git
cd VibeVoice-FastAPI
docker compose up
Vous obtenez un endpoint compatible OpenAI :
curl -X POST http://localhost:8000/v1/audio/speech \
-H "Content-Type: application/json" \
-d '{
"model": "vibevoice-1.5b",
"input": "Your API documentation should be a conversation, not a monologue.",
"voice": "alice"
}' \
--output speech.wav
Testez ce endpoint via Apidog avec le même format de requête que l'API TTS d'OpenAI.
Utilisation de VibeVoice-ASR pour la reconnaissance vocale
Transcription de base
python asr_inference.py \
--model_path microsoft/VibeVoice-ASR \
--audio_path meeting_recording.wav
Format de sortie structuré
VibeVoice-ASR produit des transcriptions structurées :
{
"segments": [
{
"speaker": "Speaker 1",
"start": 0.0,
"end": 4.2,
"text": "Let's review the API endpoints for the new release."
},
{
"speaker": "Speaker 2",
"start": 4.5,
"end": 8.1,
"text": "I've added three new endpoints for the billing module."
}
]
}
ASR en tant que serveur MCP
Pour intégrer à des agents de codage IA :
pip install vibevoice-mcp-server
vibevoice-mcp serve
Votre agent peut transcrire réunions ou notes vocales dans son workflow.
Quand utiliser VibeVoice-ASR vs Whisper
| Cas d'utilisation | Meilleur choix | Pourquoi |
|---|---|---|
| Longues réunions (30-60 min) | VibeVoice-ASR | 60min d'un coup, ID locuteur |
| Interviews multi-locuteurs | VibeVoice-ASR | Diarisation intégrée |
| Podcasts avec horodatages | VibeVoice-ASR | Sortie structurée Qui/Quand/Quoi |
| Multilingue (50+ langues) | VibeVoice-ASR | Couverture large |
| Clips courts bruyants | Whisper | Meilleure robustesse au bruit |
| Déploiement edge/mobile | Whisper | Modèle plus petit |
| Langues non anglaises (spécialisées) | Whisper | Affinage multilingue mature |
Test des API d'IA vocale avec Apidog
Que vous utilisiez le wrapper FastAPI, Azure AI Foundry, ou votre propre API, Apidog accélère les tests et le debug des intégrations.
Tester le point de terminaison TTS
- Créez une requête POST dans Apidog vers votre serveur FastAPI VibeVoice.
- Corps de la requête (compatible OpenAI) :
{
"model": "vibevoice-1.5b",
"input": "Test speech synthesis with proper intonation and pacing.",
"voice": "alice",
"response_format": "wav"
}
- Vérifiez que la réponse inclut l'en-tête
audio/wav. - Enregistrez le fichier WAV et vérifiez la qualité audio.
Tester le point de terminaison ASR
- Créez une requête POST avec
multipart/form-data. - Ajoutez votre fichier audio dans le formulaire.
- Vérifiez que la réponse JSON contient les locuteurs, horodatages et texte transcrit.
Valider les contrats API audio
Apidog gère :
- Upload de fichiers binaires (ASR)
- Corps JSON (TTS)
- Validation de la réponse structurée
- Variables d'environnement pour basculer local/cloud
Téléchargez Apidog pour tester vos intégrations IA vocale avant la mise en production.
Sécurité et utilisation responsable
Microsoft a ajouté plusieurs protections :
- Avertissement audible sur l'IA : chaque audio généré inclut « Ce segment a été généré par l'IA »
- Filigrane imperceptible : vérification tierce possible
- Journalisation de l'inférence : détection d'abus via logs hachés
- Licence MIT : usage commercial autorisé, mais pas recommandé en prod sans tests poussés
Ce qui est autorisé
- Recherche et académique
- Prototypage, tests internes
- Podcasts avec divulgation IA
- Accessibilité (synthèse vocale pour malvoyants)
Ce qui n'est pas autorisé
- Usurpation vocale sans consentement
- Deepfakes ou présentation d'audio IA comme humain authentique
- Conversion vocale live pour deepfake temps réel
- Génération audio non-vocale (musique, FX)
Limitations à connaître
Support linguistique TTS limité : VibeVoice-1.5B ne gère que anglais et chinois. Autres langues = sortie inintelligible. VibeVoice-ASR couvre 50+ langues.
Exigences matérielles élevées pour l'ASR : 24 Go VRAM requis (A100/H100). TTS fonctionne sur GPU grand public (7-8 Go).
Pas de gestion du chevauchement de parole : TTS fonctionne en tours de parole seulement.
Biais de modèle hérités : les modèles Qwen2.5 peuvent produire du contenu inattendu ou biaisé.
Logiciel de niveau recherche : non prêt pour la production; attendez-vous à des bugs sur cas limites et langues non prises en charge.
Déploiement de VibeVoice-ASR sur Azure AI Foundry
Pour éviter la gestion d'une infra GPU, VibeVoice-ASR est dispo sur Azure AI Foundry avec point d'API géré. Le déploiement Azure gère la scalabilité, les mises à jour et la maintenance.
Pour tester un endpoint VibeVoice Azure : configurez l'URL et les en-têtes d'auth dans Apidog, puis lancez des transcriptions de test sur vos fichiers audio.
Communauté et écosystème
VibeVoice bénéficie d'une communauté active :
- 62 630 téléchargements/mois sur HuggingFace (1.5B)
- 2 280+ J'aime sur HuggingFace
- 79+ Espaces HuggingFace en exécution
- 12 variantes affinées communautaires
- 4 versions quantifiées (moins de VRAM)
-
Fork communautaire :
vibevoice-community/VibeVoice
Projets notables :
- VibeVoice-FastAPI : API REST de production avec Docker
- Serveur MCP VibeVoice : intégration outils IA via MCP
- Support Apple Silicon : scripts pour Mac M-series
- Quantification : GGUF et autres formats VRAM réduite
FAQ
VibeVoice est-il gratuit ?
Oui, tous les modèles sont sous licence MIT. Usage commercial et non commercial. Azure AI Foundry facturé séparément.
VibeVoice fonctionne-t-il sur Mac Apple Silicon ?
Oui, via scripts communautaires pour Mac M-series (voir discussions HF). Performances plus lentes qu'un GPU CUDA.
Différences VibeVoice vs ElevenLabs ?
VibeVoice fonctionne localement (pas de frais API, confidentialité). ElevenLabs offre plus de voix, meilleure qualité, configuration simple, mais requiert un abonnement cloud. Pour confidentialité/offline, VibeVoice est à privilégier. Pour la qualité et la facilité, ElevenLabs est devant.
Pourquoi le dépôt GitHub a-t-il été désactivé ?
Mauvaise utilisation pour usurpation vocale et deepfakes. Désactivation temporaire, ajout de protections, réouverture et développement communautaire continu.
Peut-on affiner VibeVoice avec des voix personnalisées ?
Oui, 12 variantes communautaires déjà publiées. Nécessite 30-60s d'audio WAV 24kHz mono et un GPU pour l'entraînement.
Formats audio produits ?
WAV 24kHz mono. À convertir en MP3/OGG/FLAC avec ffmpeg si besoin.
VibeVoice-ASR peut-il remplacer Whisper ?
Pour longs enregistrements avec identification de locuteur, oui. Pour courts clips bruyants ou edge, Whisper reste meilleur.
Chat vocal temps réel ?
VibeVoice-Realtime-0.5B gère du streaming texte→audio (~300 ms de latence), mais pas de duplex intégral. Pour du vrai temps réel, voir GPT-Realtime d'Azure OpenAI ou équivalents.






Top comments (0)