返回广场

VibeVoice:微软46K星开源语音AI,60分钟长音频一次性转文字,小白也能跑

你是不是也遇到过这些头疼事? 开会一小时的录音,转文字软件只能5分钟5分钟地切,切完还不知道谁说的哪句话。做播客的想合成多人对话,结果AI语音工具不是不支持长音频,就是只能单人说。想给AI Agent加个实时语音能力,发现开源方案要么延迟高到离谱,要么根本不支持流式输入。 现在,微软开源了

你是不是也遇到过这些头疼事?

开会一小时的录音,转文字软件只能5分钟5分钟地切,切完还不知道谁说的哪句话。做播客的想合成多人对话,结果AI语音工具不是不支持长音频,就是只能单人说。想给AI Agent加个实时语音能力,发现开源方案要么延迟高到离谱,要么根本不支持流式输入。

现在,微软开源了一个叫 VibeVoice 的项目,一口气把这些问题全解决了——语音转文字、文本转语音、实时流式语音,三件套齐活,而且完全开源免费。

VibeVoice 是什么?

VibeVoice 是微软开源的前沿语音AI框架,GitHub 已有 46,000+ 星,包含三个核心模型:

  1. VibeVoice-ASR:语音转文字,60分钟长音频一次性处理,自动识别谁说的、什么时间说的、说了什么
  2. VibeVoice-TTS:文本转语音,90分钟长音频合成,最多4人对话
  3. VibeVoice-Realtime:实时流式语音合成,200毫秒出声

简单说,它就是一个语音领域的瑞士军刀——不管你是要录音转文字、文字转语音,还是给AI加上实时说话能力,这一个项目全搞定。

三个模型的核心能力

🎙️ VibeVoice-ASR — 录音转文字的神器

能力说明
60分钟长音频一次过不用切片,60分钟音频直接丢进去,上下文不断
谁+什么时候+说了什么自动做说话人分离(diarization)、时间戳标注、语音识别,三合一
50+语言支持中文、英语、日语、韩语等50多种语言,不用手动选语言
自定义热词你可以把专业术语、人名提前告诉模型,识别准确率大幅提升
HuggingFace Transformers集成直接pip install transformers就能用
vLLM加速部署支持vLLM高并发推理,多GPU跑满吞吐
LoRA微调提供完整的微调代码,可以针对你的领域优化

中文实测表现

数据集语言说话人错误率(DER)词错误率(WER)
AISHELL-4中文6.77%21.40%
AliMeeting中文10.92%27.40%

在中文会议场景下,说话人识别错误率只有6.77%——这意味着一个1小时的会议,几乎不会搞混谁说的哪句话。

🎵 VibeVoice-TTS — 90分钟多人对话语音合成

⚠️ 注意:VibeVoice-TTS 代码因被滥用已于2025年9月从仓库移除,目前仅保留ASR和Realtime两个模型可用。不过TTS的论文和效果展示仍在,说明技术本身已经成熟。

TTS模型的核心能力:

  • 90分钟长音频一次性合成,不用分段
  • 4人对话场景,说话人角色各不相同,语气情感自然
  • 支持中文、英语等多种语言
  • 甚至支持跨语言对话(比如一个人说中文、一个人说英文的会议场景)
  • 论文被 ICLR 2026 接收为Oral(口头报告),学术水平顶尖

⚡ VibeVoice-Realtime — 200毫秒实时语音

能力说明
0.5B参数模型轻量,部署友好
200毫秒首字出声几乎感觉不到延迟
流式文本输入LLM一边生成文本,VibeVoice一边出声,不用等完整回答
10分钟长音频上下文窗口8K,可持续合成约10分钟语音
Colab一键试玩不需要GPU也能跑

这个模型的典型用途是给AI Agent加上"嘴巴"——LLM开始推理的同时,Realtime模型就开始念出来,体验上就像真人在跟你说话一样。

安装教程

方法一:Docker安装(推荐)

VibeVoice依赖CUDA环境,最省心的方式是用NVIDIA官方Docker镜像。

第1步:拉取Docker镜像并启动

# 拉取NVIDIA PyTorch镜像(24.07及以上版本都行)
sudo docker run --privileged --net=host --ipc=host \
  --ulimit memlock=-1:-1 --ulimit stack=-1:-1 \
  --gpus all --rm -it \
  nvcr.io/nvidia/pytorch:25.12-py3

第2步:在容器内安装VibeVoice

# 克隆项目
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice

# 安装ASR功能
pip install -e .

# 如果要安装流式TTS功能
pip install -e .[streamingtts]

# 如果Docker镜像没自带flash-attn,手动装一下
pip install flash-attn --no-build-isolation

方法二:本地Python环境安装

如果你本地已经有CUDA环境(Linux + NVIDIA GPU),可以直接装:

# 克隆项目
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice

# 创建虚拟环境
conda create -n vibevoice python=3.10 -y
conda activate vibevoice

# 安装PyTorch(需要CUDA 12.x)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

# 安装VibeVoice
pip install -e .

# 安装flash-attn(需要编译,耐心等几分钟)
pip install flash-attn --no-build-isolation

方法三:用HuggingFace Transformers直接调用(适合只想做语音转文字的用户)

pip install transformers torch

然后在Python里:

from transformers import AutoModelForCausalLM, AutoProcessor

model = AutoModelForCausalLM.from_pretrained("microsoft/VibeVoice-ASR-HF", trust_remote_code=True)
processor = AutoProcessor.from_pretrained("microsoft/VibeVoice-ASR-HF", trust_remote_code=True)

# 传入音频文件路径
inputs = processor(audio="your_meeting.mp3", return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=4096)
result = processor.decode(outputs[0], skip_special_tokens=True)
print(result)  # 输出结构化文字:谁在什么时候说了什么

使用方法

用法1:启动网页界面做语音转文字

安装好后,最简单地体验方式是启动一个Gradio网页界面:

# 安装ffmpeg(Gradio界面需要)
apt update && apt install ffmpeg -y

# 启动网页Demo(--share生成公网链接)
python demo/vibevoice_asr_gradio_demo.py \
  --model_path microsoft/VibeVoice-ASR \
  --share

启动后会输出一个 *.gradio.live 链接,浏览器打开就能上传音频、实时看转写结果。

用法2:命令行直接转写文件

适合批量处理录音文件:

python demo/vibevoice_asr_inference_from_file.py \
  --model_path microsoft/VibeVoice-ASR \
  --audio_files /path/to/your/meeting_recording.mp3

如果你有多个文件,用空格隔开就好:

python demo/vibevoice_asr_inference_from_file.py \
  --model_path microsoft/VibeVoice-ASR \
  --audio_files meeting1.mp3 meeting2.wav meeting3.m4a

用法3:vLLM高并发部署(适合企业场景)

如果你要给整个团队提供语音转文字API服务,用vLLM部署是最高效的方式:

# 克隆项目后,用Docker启动vLLM服务
docker run -d --gpus all --name vibevoice-vllm \
  --ipc=host \
  -p 8000:8000 \
  -e VIBEVOICE_FFMPEG_MAX_CONCURRENCY=64 \
  -e PYTORCH_ALLOC_CONF=expandable_segments:True \
  -v $(pwd):/app \
  -w /app \
  --entrypoint bash \
  vllm/vllm-openai:v0.14.1 \
  -c "python3 /app/vllm_plugin/scripts/start_server.py"

启动后,你就有了一个兼容OpenAI API格式的语音转文字服务,团队任何应用都可以通过HTTP接口调用:

# 调用示例
curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "microsoft/VibeVoice-ASR",
    "messages": [
      {"role": "user", "content": [{"type": "audio_url", "audio_url": {"url": "file:///path/to/audio.mp3"}}]}
    ]
  }'

多GPU部署也支持,4卡、8卡都能跑满吞吐:

# 4卡并行
docker run -d --gpus '"device=0,1,2,3"' --name vibevoice-vllm \
  ... \
  -c "python3 /app/vllm_plugin/scripts/start_server.py --dp 4"

用法4:实时语音合成(给AI Agent加嘴巴)

# 启动WebSocket Demo
python demo/vibevoice_realtime_demo.py \
  --model_path microsoft/VibeVoice-Realtime-0.5B

# 或者从文本文件直接生成语音
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

想下载更多语音风格?运行:

bash demo/download_experimental_voices.sh

目前已经有9种语言的实验性语音(德语、法语、意大利语、日语、韩语、荷兰语、波兰语、葡萄牙语、西班牙语)和11种英语口音风格。

用法5:Google Colab免费试玩(没有GPU也能体验)

不用装任何东西,浏览器打开官方Colab链接即可:

实际场景举例

场景怎么用VibeVoice
公司周会录音转纪要用ASR一口气处理60分钟会议录音,自动区分发言人+时间戳,直接出结构化纪要
播客后制字幕ASR转写后导出带时间轴的SRT字幕,不用手动打时间点
法律/医疗领域录音用"自定义热词"功能,把专业术语加进去,识别率大幅提升
AI客服语音应答用Realtime模型,LLM生成文本的同时200ms出声,客户几乎感觉不到延迟
多人会议摘要ASR的"谁说了什么"功能自动做发言人分离,直接喂给GPT做摘要
教育/培训录音整理老师讲课1小时直接转文字,学生不用回听找重点

跟同类项目对比

功能VibeVoiceWhisperFunASRMoonshine
最大音频时长60分钟30秒(需切片)约30分钟约30秒
说话人分离✅ 内置❌ 需外挂
时间戳✅ 精确到词⚠️ 粗粒度
自定义热词✅ 支持
语音合成(TTS)✅ 三件套
实时语音✅ 200ms⚠️ 非实时
中文支持✅ 50+语言含中文
vLLM高并发✅ 原生支持
星数46K45K11K8K
开源协议MITMITApache 2.0MIT

核心优势:VibeVoice最大的不同是"一次过60分钟"——Whisper处理长音频必须切成30秒一段再拼接,切断了上下文导致说话人识别不连续;VibeVoice直接一次吃进60分钟音频,说话人识别从头到尾一致。再加上它内置了TTS和实时语音能力,一个项目覆盖语音输入和输出两件事。

微调教程:让模型认识你的专业术语

VibeVoice-ASR 提供了完整的 LoRA 微调代码:

cd VibeVoice/finetuning-asr

# 准备你的训练数据(JSON格式,包含audio_path和transcription字段)
# 具体格式参考 finetuning-asr/README.md

# 启动微调
bash scripts/train_lora.sh \
  --model_path microsoft/VibeVoice-ASR \
  --data_path your_training_data.json \
  --output_dir ./lora_output \
  --lora_rank 16 \
  --learning_rate 1e-4 \
  --num_epochs 3

微调后,模型对专业术语的识别准确率可以提升10-30%,对医疗、法律、金融等垂直领域特别有用。

常见问题

Q:没有NVIDIA GPU能跑吗?

ASR可以用HuggingFace Transformers在CPU上跑(但速度会很慢);Realtime模型的0.5B版本在Mac M4 Pro上可以跑到实时性能;最方便的方式是用Google Colab免费GPU。

Q:中文识别效果怎么样?

在AISHELL-4(中文会议场景)上,说话人错误率6.77%,词错误率21.4%。日常会议、播客等场景完全可用,专业领域建议用热词或微调优化。

Q:TTS代码为什么被删了?

微软发现TTS生成的高质量合成语音被滥用于冒充身份、虚假信息传播等目的,因此移除了TTS推理代码。ASR和Realtime模型不受影响,仍在正常维护。

Q:和商业产品(讯飞、腾讯云语音)比呢?

商业产品通常有更完善的工程优化和中文适配,但VibeVoice的优势在于:完全开源(MIT协议)、可私有化部署(数据不出门)、免费无限量调用、支持自定义微调。对于对数据安全有要求的企业来说,自建VibeVoice服务比用商业API更合适。

小结

VibeVoice 是微软开源的语音AI全栈方案——ASR(60分钟长音频转写)、Realtime(200ms实时语音),一个项目解决语音"听"和"说"两个核心需求。46K星的社区热度、MIT开源协议、支持中文、可私有化部署,这些特点让它成为中国开发者最值得关注的语音AI项目之一。

项目地址:https://github.com/microsoft/VibeVoice

在线试玩:https://aka.ms/vibevoice-asr

HuggingFace模型:https://huggingface.co/collections/microsoft/vibevoice-68a2ef24a875c44be47b034f

写评论

读者评论

0

暂无评论,来分享你的看法吧

相关推荐

结合当前内容、你的浏览习惯和搜索偏好推荐。