DEV Community

Cover image for Apa Itu Microsoft VibeVoice? Cara Menggunakan Model AI Suara Open Source
Walse
Walse

Posted on • Originally published at apidog.com

Apa Itu Microsoft VibeVoice? Cara Menggunakan Model AI Suara Open Source

Intinya

VibeVoice adalah keluarga AI suara open source dari Microsoft yang terdiri dari tiga model: VibeVoice-1.5B (teks-ke-suara hingga 90 menit, 4 pembicara), VibeVoice-Realtime-0.5B (TTS streaming latensi rendah), dan VibeVoice-ASR (pengenalan suara hingga 60 menit audio, 50+ bahasa, WER 7,77%). Semua model berlisensi MIT dan dapat dijalankan lokal. Panduan ini fokus pada instalasi, penggunaan, dan integrasi API secara praktis.

Coba Apidog hari ini

Pendahuluan

Microsoft merilis VibeVoice sebagai kerangka kerja AI suara open source di awal 2026. VibeVoice menyediakan model untuk sintesis suara (teks-ke-suara) dan pengenalan suara (ASR), semuanya berjalan lokal tanpa perlu layanan cloud eksternal.

VibeVoice Overview

Tiga model utamanya:

  • VibeVoice-1.5B: Sintesis ucapan multi-pembicara ekspresif dari teks, dukung hingga 90 menit dan 4 pembicara dalam sekali jalan.
  • VibeVoice-Realtime-0.5B: TTS streaming ringan dengan latensi awal ~300ms.
  • VibeVoice-ASR: Transkripsi hingga 60 menit audio, deteksi pembicara, timestamp, dan output terstruktur untuk 50+ bahasa.

VibeVoice Models

Model TTS sempat kontroversial karena penyalahgunaan kloning suara. Microsoft sempat menonaktifkan repo GitHub, lalu mengaktifkan kembali dengan penafian AI yang dapat didengar dan watermark. VibeVoice-ASR tersedia di Azure AI Foundry, model TTS tetap berfokus pada riset dan open source MIT.

Panduan ini berisi langkah-langkah instalasi, pembuatan TTS, ASR, integrasi API, dan cara pengujian endpoint AI suara menggunakan Apidog.

Cara Kerja VibeVoice: Gambaran Arsitektur

Terobosan Tokenizer

Tokenizer VibeVoice beroperasi pada laju bingkai ultra-rendah 7,5 Hz, jauh lebih rendah dari model ucapan lain (umumnya 50-100 Hz). Ini memungkinkan pemrosesan urutan panjang (hingga 90 menit audio) tanpa kehilangan konteks.

Tokenizer
Tokenizer Architecture

Dua tokenizer utama:

  • Tokenizer Akustik: Sigma-VAE, ~340M parameter, downsample audio 24kHz hingga 3.200x.
  • Tokenizer Semantik: Arsitektur mirip, dilatih untuk menangkap makna linguistik.

Difusi Token Berikutnya

Menggabungkan LLM (Qwen2.5-1.5B) sebagai backbone dengan kepala difusi ringan (~123M parameter) untuk detail audio. LLM menangani konteks dan alur dialog, kepala difusi menghasilkan audio high-fidelity dengan DDPM dan Classifier-Free Guidance.

Total parameter model: 3B.

Pendekatan Pelatihan

Model dilatih secara bertahap pada urutan lebih panjang (4K → 64K token). Tokenizer tetap beku; hanya LLM dan kepala difusi yang diupdate. Ini memungkinkan penanganan audio panjang tanpa melupakan kemampuan audio pendek.

Spesifikasi Model VibeVoice

Model Parameter Tujuan Panjang Maks Bahasa Lisensi
VibeVoice-1.5B 3B Teks-ke-suara 90 menit Inggris, Mandarin MIT
VibeVoice-Realtime-0.5B ~0.5B TTS Streaming Bentuk panjang Inggris, Mandarin MIT
VibeVoice-ASR ~9B ASR 60 menit 50+ bahasa MIT

VibeVoice-1.5B (TTS)

Spesifikasi Nilai
Basis LLM Qwen2.5-1.5B
Panjang konteks 64K token
Pembicara maksimum 4
Output audio 24kHz WAV mono
Tipe tensor BF16
Format Safetensors
Unduhan HF 62.630/bulan
Fork komunitas 12 varian fine-tune

VibeVoice-ASR

Spesifikasi Nilai
Basis arsitektur Qwen2.5
Parameter ~9B
Pemrosesan audio Hingga 60 menit
Laju bingkai 7.5 Hz
WER rata-rata 7.77% (8 dataset Inggris)
LibriSpeech Clean WER 2.20%
TED-LIUM WER 2.57%
Bahasa 50+
Output Terstruktur (Siapa/Kapan/Apa)
Audio didukung WAV, FLAC, MP3 (16kHz+)

Instalasi dan Pengaturan

Prasyarat

  • Python 3.8+
  • GPU NVIDIA dengan CUDA
  • 7-8 GB VRAM (TTS), 24 GB+ VRAM (ASR, A100/H100 disarankan)
  • RAM 32 GB+ (64 GB untuk ASR)
  • CUDA 11.8+ (12.0+ disarankan)

Instal VibeVoice TTS

# Clone repo
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice

# Install dependensi
pip install -r requirements.txt
Enter fullscreen mode Exit fullscreen mode

Model otomatis diunduh dari HuggingFace saat pertama run, atau bisa manual:

from huggingface_hub import snapshot_download

# Download model TTS 1.5B
snapshot_download(
    "microsoft/VibeVoice-1.5B",
    local_dir="./models/VibeVoice-1.5B",
    local_dir_use_symlinks=False
)
Enter fullscreen mode Exit fullscreen mode

Instal via pip (paket komunitas)

pip install vibevoice
Enter fullscreen mode Exit fullscreen mode

Instal untuk ASR

git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice
pip install -r requirements-asr.txt
Enter fullscreen mode Exit fullscreen mode

Atau gunakan Azure AI Foundry untuk inferensi cloud.

Membuat Ucapan dengan VibeVoice-1.5B

Pembuatan Satu Pembicara

Buat file teks:

Alice: Welcome to the Apidog developer podcast. Today we're covering API testing strategies for 2026.
Enter fullscreen mode Exit fullscreen mode

Jalankan inferensi:

python VibeVoice \
  --model_path microsoft/VibeVoice-1.5B \
  --txt_path script.txt \
  --speaker_names Alice \
  --cfg_scale 1.5
Enter fullscreen mode Exit fullscreen mode

Output: file .wav di folder outputs/.

Pembuatan Podcast Multi-Pembicara

Script hingga 4 pembicara:

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.
Enter fullscreen mode Exit fullscreen mode
python VibeVoice \
  --model_path microsoft/VibeVoice-1.5B \
  --txt_path podcast_script.txt \
  --speaker_names Alice Bob Carol \
  --cfg_scale 1.5
Enter fullscreen mode Exit fullscreen mode

Kloning Suara (Zero-Shot)

Audio referensi:

  • Format: WAV mono, 24kHz
  • Durasi: 30-60 detik ucapan jelas

Konversi audio:

ffmpeg -i source.m4a -ar 24000 -ac 1 reference_voice.wav
Enter fullscreen mode Exit fullscreen mode

Jalankan demo Gradio:

python demo/gradio_demo.py
Enter fullscreen mode Exit fullscreen mode

Akses di http://127.0.0.1:7860, upload audio referensi dan sintesis suara.

Streaming dengan VibeVoice-Realtime-0.5B

Untuk TTS latensi rendah (~300ms):

python demo/streaming_inference_from_file.py \
  --model_path microsoft/VibeVoice-Realtime-0.5B \
  --txt_path script.txt \
  --speaker_name Alice
Enter fullscreen mode Exit fullscreen mode

Model Realtime lebih cepat, kualitas audio sedikit di bawah 1.5B.

Menggunakan VibeVoice dengan Python

API Pipeline

from transformers import pipeline
from huggingface_hub import snapshot_download

# Download model
model_path = snapshot_download("microsoft/VibeVoice-1.5B")

# Load pipeline
pipe = pipeline(
    "text-to-speech",
    model=model_path,
    no_processor=False
)

# Multi-speaker script
script = [
    {"role": "Alice", "content": "How do you handle API versioning?"},
    {"role": "Bob", "content": "We use URL path versioning. v1, v2, and so on."},
]

# Apply chat template
input_data = pipe.processor.apply_chat_template(script)

# Generate audio
generate_kwargs = {
    "cfg_scale": 1.5,
    "n_diffusion_steps": 50,
}

output = pipe(input_data, generate_kwargs=generate_kwargs)
Enter fullscreen mode Exit fullscreen mode

Pembungkus FastAPI untuk Produksi

Jalankan API TTS kompatibel OpenAI:

git clone https://github.com/ncoder-ai/VibeVoice-FastAPI.git
cd VibeVoice-FastAPI
docker compose up
Enter fullscreen mode Exit fullscreen mode

Contoh request:

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
Enter fullscreen mode Exit fullscreen mode

Endpoint ini dapat diuji dengan Apidog menggunakan format request OpenAI.

Menggunakan VibeVoice-ASR untuk Pengenalan Suara

Transkripsi Dasar

python asr_inference.py \
  --model_path microsoft/VibeVoice-ASR \
  --audio_path meeting_recording.wav
Enter fullscreen mode Exit fullscreen mode

Format Keluaran Terstruktur

Hasil ASR berupa JSON:

{
  "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."
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

ASR sebagai Server MCP

pip install vibevoice-mcp-server
vibevoice-mcp serve
Enter fullscreen mode Exit fullscreen mode

Integrasi dengan Claude Code, Cursor, dan alat AI coding lainnya untuk transkripsi audio secara otomatis.

Kapan Gunakan VibeVoice-ASR vs Whisper

Kasus Penggunaan Pilihan Terbaik Alasan
Rapat panjang (30-60 menit) VibeVoice-ASR Pemrosesan 60 menit sekali jalan, ID pembicara
Wawancara multi-pembicara VibeVoice-ASR Diarisasi bawaan
Podcast dengan timestamp VibeVoice-ASR Output terstruktur Siapa/Kapan/Apa
Konten multibahasa (50+ bahasa) VibeVoice-ASR Dukungan bahasa luas
Klip pendek di lingkungan bising Whisper Noise robustness lebih baik
Deploy edge/mobile Whisper Model lebih kecil, support device lebih luas
Bahasa non-Inggris spesifik Whisper Fine-tuning multibahasa lebih matang

Menguji API AI Suara dengan Apidog

Baik menggunakan FastAPI VibeVoice, Azure AI Foundry, maupun custom API, Apidog membantu pengujian endpoint AI suara Anda.

Apidog Testing

Uji Endpoint TTS

  1. Buat request POST di Apidog ke server FastAPI VibeVoice.
  2. Isi body dengan format OpenAI:

    {
      "model": "vibevoice-1.5b",
      "input": "Test speech synthesis with proper intonation and pacing.",
      "voice": "alice"
    }
    
  3. Kirim dan verifikasi response header audio/wav.

  4. Simpan response untuk verifikasi kualitas audio.

Uji Endpoint ASR

  1. Buat request POST multipart/form-data.
  2. Attach file audio.
  3. Pastikan response JSON memuat ID pembicara, timestamp, dan teks.

Validasi Kontrak API Audio

  • Unggah file biner untuk ASR.
  • Format JSON untuk TTS.
  • Validasi output terstruktur.
  • Gunakan environment variable untuk switching endpoint lokal/cloud.

Unduh Apidog untuk menguji API AI suara Anda sebelum production.

Keamanan dan Penggunaan yang Bertanggung Jawab

Pengamanan utama oleh Microsoft:

  • Penafian AI terdengar: Audio selalu mengandung pesan "Segmen ini dihasilkan oleh AI".
  • Watermarking: Penanda tersembunyi untuk verifikasi konten.
  • Inferensi logging: Hash log untuk deteksi penyalahgunaan.
  • MIT License: Bebas komersial, namun tidak disarankan langsung production tanpa pengujian.

Diizinkan

  • Riset dan akademik
  • Prototyping/internal testing
  • Podcast dengan disclosure AI
  • Aplikasi aksesibilitas

Tidak Diizinkan

  • Peniruan suara tanpa izin tertulis
  • Deepfake audio yang menyesatkan
  • Voice conversion real-time untuk deepfake live
  • Generasi audio non-speech (musik, efek suara)

Batasan yang Perlu Diketahui

Bahasa terbatas TTS: Hanya Inggris & Mandarin. Bahasa lain keluarannya tidak dapat dimengerti. ASR mendukung 50+ bahasa.

Bahasa

Kebutuhan hardware tinggi ASR: VRAM 24GB+ (A100/H100), TTS bisa di GPU 7-8GB.

Tidak handle overlapping speech: Semua dialog berbasis giliran.

Bias model: Output bisa mengandung bias atau konten tidak akurat.

Status riset: Belum siap produksi, bisa error pada edge case atau output non-Inggris.

Menerapkan VibeVoice-ASR di Azure AI Foundry

Untuk tim tanpa GPU, gunakan VibeVoice-ASR via Azure AI Foundry. Dapatkan endpoint HTTPS, upload audio, dapatkan transkripsi terstruktur (Siapa/Kapan/Apa). Deploy Azure menangani scaling, update, dan SLA.

Untuk uji integrasi, atur endpoint dan header authentication di Apidog, lalu tes transkripsi ke file audio sampel Anda.

Komunitas dan Ekosistem

Komunitas VibeVoice aktif:

  • 62.630+ unduhan/bulan HuggingFace 1.5B
  • 2.280+ likes di HuggingFace
  • 79+ HuggingFace Spaces
  • 12 varian fine-tune komunitas
  • 4 versi kuantisasi untuk VRAM rendah
  • Fork aktif di vibevoice-community/VibeVoice

Proyek komunitas:

  • VibeVoice-FastAPI: REST API wrapper dengan Docker support
  • VibeVoice MCP Server: Integrasi Model Context Protocol
  • Apple Silicon support: Skrip inferensi Mac M-series
  • Model kuantisasi: GGUF & format lain untuk VRAM kecil

FAQ

Apakah VibeVoice gratis untuk digunakan?

Ya, semua model (TTS 1.5B, Realtime 0.5B, ASR) berlisensi MIT. Azure AI Foundry berbayar untuk inferensi cloud.

Bisakah VibeVoice berjalan di Mac Apple Silicon?

Ada skrip komunitas untuk Mac M-series. Diskusi HuggingFace 1.5B membahas detailnya. Performa lebih lambat dari GPU CUDA.

Bagaimana VibeVoice dibandingkan ElevenLabs?

VibeVoice: gratis, lokal, privasi penuh. ElevenLabs: kualitas lebih tinggi, suara lebih banyak, mudah dipakai, tapi berbayar & cloud. Untuk privasi/offline, VibeVoice unggul. Untuk produksi/kualitas, ElevenLabs lebih baik.

Kenapa repo GitHub sempat dinonaktifkan?

Penyalahgunaan kloning suara untuk peniruan dan deepfake. Microsoft tambahkan penafian, watermark, lalu aktifkan kembali. Fork komunitas tetap berjalan selama downtime.

Bisakah saya fine-tune VibeVoice untuk suara kustom?

Bisa. Ada 12 varian fine-tune di HuggingFace. Butuh sample audio (WAV 24kHz mono, 30-60 detik) dan GPU training.

Output audio apa yang dihasilkan VibeVoice?

WAV 24.000 Hz mono. Konversi ke MP3, OGG, FLAC pakai ffmpeg.

Bisakah VibeVoice-ASR menggantikan Whisper?

Untuk audio panjang & ID pembicara, ya. VibeVoice-ASR handle 60 menit sekali jalan. Whisper lebih baik untuk klip pendek/bising/device edge.

Apakah VibeVoice mendukung voice chat real-time?

VibeVoice-Realtime-0.5B dukung input teks streaming (latensi ~300ms), cocok aplikasi semi-realtime. Untuk voice chat duplex penuh, gunakan GPT-Realtime Azure OpenAI atau solusi lain.

Top comments (0)