Mindket

VibeVoice

Newversion 2 · updated
GitHub trending
Star56.8k

Overview

Microsoft’s open-source family of voice AI models. VibeVoice-ASR transcribes up to 60 minutes of audio in one pass, with speakers and timestamps. VibeVoice-Realtime turns streaming text into speech. The notes cover the demos, a vLLM server and fine-tuning.

VibeVoice is an open-source project on GitHub in the Developer category, listed by Mindket. It is free. This is version 2, last updated on . Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.

At a glance

Runs in
  • An NVIDIA container: the ASR, streaming and Realtime pages all start from the NVIDIA PyTorch container
  • A vLLM server in Docker: serves the ASR models as an OpenAI-compatible API, with a streaming variant
  • Google Colab: the Realtime demo notebook
  • The ASR Playground and Azure AI Foundry Labs: hosted ways to try the ASR model
Start with
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice
pip install -e .

Platform

DockerContainer

About

What it is

VibeVoice is Microsoft’s family of open-source voice models, covering speech to text and text to speech. This listing covers what the repository still lets you run. VibeVoice-ASR takes up to 60 minutes of audio in one pass and returns who spoke, when and what they said. A streaming version transcribes while the audio arrives. VibeVoice-Realtime speaks streaming text in one voice. The long multi-speaker TTS model is left out, because Microsoft removed its code after misuse.

  1. You give it a recording of up to 60 minutes
  2. You add hotwords such as names and technical terms
  3. One pass reads the whole recording, with no slicing
  4. It returns who spoke, when and what was said

Who it suits

Developers and researchers who want speech recognition or speech synthesis they can run themselves. The ASR model fits long recordings with several speakers, such as meetings and interviews, where a transcript that says who spoke is the point. The Realtime model is built so that a language model can start speaking from its first tokens. Yet the page’s TODO list still has “Implement streaming text input function to feed new tokens while audio is still being generated” unchecked. Its two usages are a websocket demo and a text-file script. The docs’ install route assumes an NVIDIA GPU in the NVIDIA PyTorch container. The ASR demo script also runs on mps, xpu or cpu. VibeASR.cpp runs the ASR model on a CPU, and the Realtime page names a Mac M4 Pro among the devices that reached real-time speed. Microsoft calls them research models and does not recommend commercial use without further testing.

Who uses it, and how
IndustryWho uses itHow they use itExample
Research and universitiesSpeech researchers and studentsRun the ASR model on long recordings, or fine-tune it with LoRA on their own labelled audioA student fine-tunes the ASR model on labelled recordings from one field, with that field’s terms listed as context.
Software and voice productsDevelopers building speech featuresServe the ASR model through vLLM as an OpenAI-compatible API, or run the Realtime model’s text-to-speech demoA developer starts the vLLM container and sends a recording to its transcription endpoint.
Media and podcastsAudio teams with long interviewsTranscribe a whole recording in one pass, labelled by speaker and timeAn editor transcribes a long interview and gets each line with its speaker and its time range.
Meetings and callsTeams that keep recordingsAdd product and people names as hotwords before transcribingA team lists its product names as hotwords, which the docs say improves recognition of such terms in the call transcript.

Skip it if you need a voice of your own or long multi-speaker speech from text: that model is disabled, and the Realtime model ships embedded voices only.

Where to use it

VibeVoice is not an agent skill. It is a set of models you run on your own GPU machine, in a container, or try in a hosted demo.

  • An NVIDIA container: the ASR, streaming and Realtime pages all start from the NVIDIA PyTorch container
  • A vLLM server in Docker: serves the ASR models as an OpenAI-compatible API, with a streaming variant
  • Google Colab: the Realtime demo notebook
  • The ASR Playground and Azure AI Foundry Labs: hosted ways to try the ASR model
  • Hugging Face Transformers: the VibeVoice-ASR-HF model
  • A CPU: VibeASR.cpp, the ASR engine the README links for machines with no GPU
The models and what each does
ModelWhat it doesGood to know
VibeVoice-ASR-7BSpeech to text for up to 60 minutes in one passWho, when and what, hotwords, over 50 languages
VibeVoice-ASR-StreamingSpeech to text while the audio arrivesOne chunk of text at a time, hotwords, 10 languages
VibeVoice-ASR-BitNetThe ASR model on a CPURuns through VibeASR.cpp with no GPU
VibeVoice-Realtime-0.5BText to speech from streaming textOne speaker, English only, about 10 minutes of audio
VibeVoice-TTS-1.5BLong multi-speaker text to speechDisabled, and its code is removed

How to set it up

Get it saves a zip of Mindket’s setup notes in your downloads folder, with each model’s steps from Microsoft’s docs. Every route with commands in Microsoft’s docs starts from a clone of the repository.

What you need first
NeedDetail
A GPU machineThe docs recommend the NVIDIA PyTorch container. The ASR demo script also accepts mps, xpu or cpu as its device
Python3.10 or newer, from the project’s pyproject.toml
DockerFor the container route and the vLLM server
ffmpegFor the demos: apt update && apt install ffmpeg -y
A Hugging Face downloadThe demos fetch each model by the name you pass in
  1. Start the container the docs recommend. Or use your own CUDA environment.
  2. Clone the repository and install it with pip.
  3. Install ffmpeg for the demos.
  4. Start the demo or server for your model.
  5. Point it at a recording or a text file.
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice

pip install -e .

The Realtime model installs with an extra, which pins its own transformers version.

pip install -e .[streamingtts]

How to use it

Pick the script that fits the job. For a recording, transcribe a file or launch the Gradio demo. For text, run the Realtime demo or speak a text file.

python demo/vibevoice_asr_inference_from_file.py --model_path microsoft/VibeVoice-ASR --audio_files [add an audio path here]
python demo/realtime_model_inference_from_file.py --model_path microsoft/VibeVoice-Realtime-0.5B --txt_path demo/text_examples/1p_vibevoice.txt --speaker_name Carter

The streaming ASR script takes --context_info to bias recognition toward the terms you list. The vLLM test scripts take --hotwords for the same job. The docs’ Gradio command ends with --share, which the script describes as “Create a public link”. Drop it, and add --host 127.0.0.1, to keep the demo on your machine: the script binds to 0.0.0.0 on port 7860 by default.

Example

You have an hour-long recording of a team meeting and want a transcript that says who spoke. You run the file command with your own path in place of the bracket.

python demo/vibevoice_asr_inference_from_file.py --model_path microsoft/VibeVoice-ASR --audio_files meeting.wav

The model reads the hour in one pass instead of slicing it into short chunks. The docs say that keeps speaker tracking consistent across the whole recording, and that the output holds who, when and what. You get lines with a speaker and a time range, ready to search or edit.

For newcomers and experts

If you are new. ASR means automatic speech recognition, which is speech to text. TTS is the reverse. Diarization is the “who spoke” part, which VibeVoice-ASR does together with the transcript and the timestamps. A GPU is a graphics card that runs the model fast, and the docs’ container route assumes an NVIDIA one. Start with the ASR Playground or the Realtime Colab notebook, which need no install. Move to your own machine when the audio must stay there.

For experts. The README describes next-token diffusion. A language model reads the text and the dialogue flow, and a diffusion head generates the acoustic detail from continuous tokens at 7.5 Hz. The Realtime model drops the semantic tokenizer and keeps only the acoustic one, with an interleaved, windowed design.

The streaming ASR checkpoint sets its own chunk and lookahead in preprocessor_config.json. The vLLM streaming server reuses the cache of every earlier chunk, so the cost stays flat as a session grows. It has no --dp option, because a session lives in one replica. Run one server per GPU and route whole sessions. The non-streaming server does take --dp and --tp.

The vLLM streaming server speaks WebSocket at /v1/stream and REST at /v1/transcribe and /v1/chat/completions. Its HTTP endpoints take inline base64 audio only, with no HTTP(S) audio URLs, up to 256 MiB decoded per file. The WebSocket takes float32 PCM frames. For fine-tuning, the LoRA defaults are rank 16 and alpha 32. The bundled toy dataset is synthetic audio from VibeVoice TTS, for demonstration only, not a full fine-tuning dataset.

Good to know

Read the maker’s warnings before you build on it.

  • Research use: the README says the models are for research and development, and Microsoft does not recommend commercial use or use in live products without further testing
  • Misuse: Microsoft removed the VibeVoice-TTS code on 2025-09-05 after finding uses it called inconsistent with its intent, and the TTS page reads “Disabled due to widespread misuse”. The risk text warns of impersonation, fraud and disinformation, and calls it best practice to disclose AI-made audio when you share it
  • Wrong output: the models can give output that is unexpected, biased or inaccurate. The TTS and Realtime pages say they inherit the biases of a Qwen2.5 base model. Check a transcript before you rely on it
  • Realtime limits: one speaker and English only, with nine experimental languages not extensively tested. Voices are embedded, and for voice customization the page says to reach out to Microsoft’s team. It reads no code or formulas, and is unstable on input of three words or fewer. Streaming text input is still unchecked on the page’s TODO list
  • Public links: the docs’ Gradio command ends with --share, and the vLLM demo’s --cloudflared flag downloads a binary and makes one. Leave both off for private audio, and pass --host 127.0.0.1: both demos bind to 0.0.0.0 by default
  • Container rights: the docs’ docker run line uses --privileged and --net=host, which give the container wide access to your machine
  • Downloads: the demos fetch model weights from Hugging Face, and the experimental voices script pulls nine archives with wget. The model cards on Hugging Face may carry their own terms, and Mindket’s notes did not read them
  • Removal: the docs give no uninstall steps. Mindket’s notes give pip uninstall vibevoice, and deleting the clone and the Hugging Face cache
  • License: MIT. The LICENSE file reads “Copyright (c) 2025 Microsoft”

README and files

README

VibeVoice: setup notes

This kit holds setup notes only. Mindket wrote them. The models, demos and code come from Microsoft's repository: https://github.com/microsoft/VibeVoice

These notes are not made or endorsed by Microsoft. The README calls VibeVoice "Open-Source Frontier Voice AI" and says it is "a family of open-source frontier voice AI models that includes both Text-to-Speech (TTS) and Automatic Speech Recognition (ASR) models." The project page is https://microsoft.github.io/VibeVoice

License: MIT. The LICENSE file (https://github.com/microsoft/VibeVoice/blob/main/LICENSE) is the MIT License text and reads "Copyright (c) 2025 Microsoft". The ASR pages repeat "This project is licensed under the MIT License." The model weights live on Hugging Face, where each model card may carry its own terms. These notes did not read those cards, so read them before you rely on a model.

The README and the TTS and Realtime pages say the models are meant for research and development only, and that Microsoft does not recommend them for commercial or real-world applications without further testing. Their risk section warns that high-quality synthetic speech can be misused for impersonation, fraud and disinformation, and calls it best practice to disclose the use of AI when sharing AI-generated content.

What you can run from the repository

| Model | What it does | Notes in this kit |
|---|---|---|
| VibeVoice-ASR-7B | Speech to text for up to 60 minutes of audio in one pass, with who, when and what | setup/asr.md |
| VibeVoice-ASR-Streaming | Speech to text while the audio is still arriving | setup/asr-streaming.md |
| VibeVoice-Realtime (0.5B) | Text to speech with streaming text input, one speaker | setup/realtime-tts.md |
| ASR through vLLM | The ASR models served as an OpenAI-compatible API | setup/vllm-server.md |
| ASR fine-tuning | LoRA fine-tuning of VibeVoice-ASR | setup/finetuning.md |
| Hosted demos and the CPU engine | Links only: the Playground, Colab, Azure AI Foundry Labs, Transformers, VibeASR.cpp | setup/hosted-and-cpu.md |

Source: https://github.com/microsoft/VibeVoice/blob/main/README.md

What is no longer in the repository

The README says that on 2025-09-05 Microsoft removed the VibeVoice-TTS code after finding "instances where the tool was used in ways inconsistent with the stated intent". Its model table lists VibeVoice-TTS-1.5B with the quick try "Disabled", and the TTS page (https://github.com/microsoft/VibeVoice/blob/main/docs/vibevoice-tts.md) reads "Installation and Usage: Disabled due to widespread misuse." These notes give no steps for it.

What installs

  • The vibevoice Python package, from a clone of the repository with pip install -e .. Its pyproject.toml says Python 3.10 or newer, and lists among its dependencies torch, transformers (at least 4.51.3 and below 5.0.0), accelerate, diffusers, gradio, fastapi and uvicorn. Source: https://github.com/microsoft/VibeVoice/blob/main/pyproject.toml
  • For the Realtime model, pip install -e .[streamingtts], which pins transformers to 4.51.3.
  • The model weights, which the demos take from Hugging Face by the name you pass in --model_path. The vLLM page says the weights download into the Hugging Face cache, ~/.cache/huggingface, inside the container.
  • For the vLLM route, a Docker image: vllm/vllm-openai:v0.14.1.

What you need first

  • A GPU machine. The ASR and Realtime pages recommend the NVIDIA Deep Learning Container (NVIDIA PyTorch Container 24.07 to 25.12 verified for ASR) to manage the CUDA environment. The ASR demo script also accepts --device with auto, cuda, mps, xpu or cpu. The Realtime page says an NVIDIA T4 and a Mac M4 Pro reached real-time speed in the maker's tests.
  • ffmpeg for the demos: apt update && apt install ffmpeg -y
  • Flash attention, when your environment lacks it: the pages point to https://github.com/Dao-AILab/flash-attention.
  • A Hugging Face download for each model.

Main install commands

Every page with commands starts from a clone. The ASR and streaming ASR pages then run pip install -e . as below. The Realtime page runs pip install -e .[streamingtts] instead, and the vLLM pages only clone and start Docker.

git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice

pip install -e .

Source: https://github.com/microsoft/VibeVoice/blob/main/docs/vibevoice-asr.md

Per-model notes

  • setup/asr.md
  • setup/asr-streaming.md
  • setup/realtime-tts.md
  • setup/vllm-server.md
  • setup/finetuning.md
  • setup/hosted-and-cpu.md

Update or remove

The README and the docs give no update or uninstall steps. These notes (Mindket's, not Microsoft's) go by the package name in pyproject.toml: pip uninstall vibevoice removes the package, and deleting the cloned folder removes the code. Downloaded weights stay in the Hugging Face cache until you delete them there. For a vLLM container, the vLLM pages give docker stop vibevoice-vllm, and docker stop vibevoice-vllm-streaming for the streaming one.

Usage data and outbound connections

The README and the docs say nothing about usage data. These notes did not audit the dependencies, among them Gradio. What the pages do show reaching out:

  • Hugging Face, for the model weights.
  • The Gradio demo command in the ASR page ends with --share. The script describes that flag as "Create a public link". Source: https://github.com/microsoft/VibeVoice/blob/main/demo/vibevoice_asr_gradio_demo.py
  • The streaming demo's --cloudflared flag, which the vLLM streaming page says downloads the cloudflared binary and makes a public link. See setup/vllm-server.md.
  • Docker images pulled from nvcr.io and from vllm/vllm-openai, and pip installs from the package index.

Sources

Files
README.md  6 KB
setup/asr-streaming.md  3 KB
setup/asr.md  3 KB
setup/finetuning.md  4 KB
setup/hosted-and-cpu.md  2 KB
setup/realtime-tts.md  4 KB
setup/vllm-server.md  8 KB

7 files, 31 KB, downloaded as a zip.

What’s new

  • Version 2 · 2026-11-09

    Updated by Mindket to the current version of this kit.

  • Version 1 · 2026-11-03

Reviews

No ratings yet

Write a review

No reviews yet.

What people say

Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search and on Trendshift. Mindket doesn’t write or check them. Open one to read it where it was posted.

mustaphahMicrosoft pulls VibeVoice speech synthesis repo after misuse5 points · 1 replyAmos WengerWow VibeVoice ASR 7B (!!) is absolute trash. Hallucinations, token loops, zero resilience to background noise. Another L from Microsoft who are quick to pat themselves on the back for essentially nothing of value. Qwen3 ASR 1.7B runs circles around it still, or Granite 4.1. Frontier my ass.24 likes · 3 replies@METHEZONEVoice is a cheap way to make an agent feel real. The open-source options have gotten good. Repos for speech-to-text, TTS and voice agents, ranked by GitHub stars: 1. VoiceStudio (105k★) Local ElevenLabs alternative: voice cloning, voice design, dubbing. 2. GPT-SoVITS (64.6k★) Train a decent TTS…watsonmusicMicrosoft releases VibeVoice, generates 90-minute, 4-speaker audio3 points · 3 repliesDrastic ActionsI'm trying out VibeVoice (Microsoft ASR for speech-to-text) for a project I want to work on. Testing it with some @deadblossomjesse.bsky.social clips, this is how it interprets their laugh.12 likes@iRehmanAhmad→ 60 minutes in ONE pass — no chopping audio into pieces → Speaker labels + timestamps → 50+ languages → A CPU version too — no GPU needed, runs on a normal laptopbehnamohMicrosoft Removed VibeVoice AI after open-sourcing it4 points · 1 reply@ai-trend-to-know.bsky.socialmicrosoft/VibeVoice 💻 Python #Python #OpenSource #AIAgents #GitHub 🔗 trendtoknow.com/microsoft/Vi...3 likes@leandro1ie会议录音转文字,很多人用的是按时长收费的转写服务。 微软开源的 VibeVoice-ASR 免费:一次处理 60 分钟音频,标出谁在什么时候说了什么,支持 50 多种语言,也测过中文会议数据。 不如收费服务的地方:要自己有显卡部署。 地址:https://t.co/08WSPvsk9oputlakeMicrosoft releases VibeVoice-ASR, an open speech-to-text model3 points · 1 replySynthesisMicrosoft open-sourced VibeVoice: frontier voice AI that replaces ElevenLabs and runs 100% locally with zero fees. Full setup in Telegram: https://t.me/synthesis_feed #ai #tech #opensource #coding #devtools #automation2 likes@iluciddreaming微软的 VibeVoice 在 GitHub 上有 56097 颗星,今天只加了 223。它能上 trending 靠的是早就攒下的底子,不是今天突然爆了。 它给自己的定位就一句:Open-Source Frontier Voice AI。 这口气不小。但 56097 颗星说明的是有多少人在关注它,不说明它好不好用。一个语音项目该讲清楚的音质、延迟、支持哪些语言,这句定位里一样都没有。

Searched

More from Mindket

See all from Mindket

Huashu Design

alchaincyf · Skill

Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

New29.4k

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

Similar in Developer

See all in Developer

buzz

block · Kit

Self-hostable workspace where people and AI agents share the same rooms, built on a Nostr relay that logs every action as a signed event. For teams that want t…

New37.3k

plannotator

backnotprop · Kit

Opens your AI coding agent's plans, specs and code changes in a browser so you can annotate or comment on them and send the feedback straight back to the agent.

New10.5k

open-code-review

alibaba · Kit

Reviews Git changes with an AI agent that reads files and searches the codebase, then writes comments tied to exact lines. It suits developers who want automat…

New50.7k