小米开源的声音克隆大模型OmniVoice,3秒克隆人声,支持600多种语言,Apache-2.0协议可免费商用,附整合包一键安装

小阿雅 0

小米开源的声音克隆大模型OmniVoice,3秒克隆人声,支持600多种语言,Apache-2.0协议可免费商用,附整合包一键安装


前段时间在群里看到有人分享小米开源了一个声音克隆的大模型,叫OmniVoice,说是3秒就能克隆别人的声音,还支持600多种语言。当时没太当回事,后来下下来试了一下,效果确实不差,就整理了一下相关信息分享给大家。


小米开源的声音克隆大模型OmniVoice,3秒克隆人声,支持600多种语言,Apache-2.0协议可免费商用,附整合包一键安装-第1张图片-力界网

OmniVoice 是什么

OmniVoice 是小米 AI 实验室旗下的语音团队 k2-fsa(下一代 Kaldi 团队)于 2026 年 4 月正式对外开源的一个多语言文本转语音模型(TTS)。官方把它定位成”零样本多语言语音克隆系统”,意思是给它一段 3 到 10 秒的参考音频,它就能学会这个声音的特征,然后用这个声音去朗读任意文字,不需要专门训练。

模型参数量是 0.8B,用 58.1 万小时的开源语音数据训练而来,代码和模型权重都放在了 GitHub 和 Hugging Face 上,采用 Apache-2.0 协议,也就是说个人用、商业用都不收费。

和市面上很多 TTS 工具不一样,OmniVoice 没有用传统的两段式架构(先把文字转成语义 token,再转成语音),而是用了一个单阶段的扩散语言模型,直接从文字映射到声学 token,减少了中间步骤,理论上误差也更少。


有哪些功能

语音克隆

这是最核心的功能。上传一段 3 到 10 秒的参考音频,输入想要朗读的文字,模型就会用参考音频里的声音生成新的音频。参考音频的质量要求不算高,手机录的也能用,噪音大一点没关系,模型内置了去噪处理。

有人在论坛里说,测了一下自己录的声音,出来的效果还挺像,音色基本对上了,但如果参考音频太短或者噪音太多,克隆出来的声音会有些飘。建议录音时尽量找安静的环境,清晰说一句完整的话。

语音设计

如果不想用已有的声音,可以用文字描述来”设计”一个声音,比如”male, elderly, low pitch, British accent”(男性、年长、低音调、英式口音),模型会自动生成一个符合描述的声音。支持的属性包括性别、年龄、音调、方言、口音、耳语风格等,不同类别可以自由组合。这个功能对于需要批量生成角色配音的场景很实用,比如有声书或者游戏。

非语言符号控制

可以在文本里插入特殊标签来控制情绪表达:

  • [laughter] — 笑声
  • [sigh] — 叹气
  • [breath] — 呼吸声

这样生成出来的语音会带一点情感,听起来不那么机械。

拼音/音素发音纠正

这个功能主要给中文用户用,对于多音字或者专有名词,可以直接用拼音标注读音,模型会按照指定的读法来生成,解决了很多 TTS 工具发音出错的老问题。


需要什么配置

这块有些人可能会踩坑,先说清楚。

推荐配置

  • 显卡:NVIDIA GPU,显存 6GB 起步可用,10GB 以上更稳。推荐 RTX 3090 / 4090 / A10 这类。官方给出的最佳硬件是 H800 / H20,但家用机基本不可能有这些。
  • 系统:Linux 最稳,macOS(Apple Silicon,也就是 M 系列芯片)也支持,Windows 用 WSL2 或者整合包可以跑。
  • 内存:16GB 以上为宜。

最低配置能跑吗

有人在贴吧反映,4GB 显存也能跑,但是要用整合包,且生成速度会慢一点。B站有 UP 主测试过,4G 显存跑起来没问题,就是每次生成要等几秒,和官方说的那种”40倍实时速度”差得远。如果只是偶尔用,4G 显存勉强能用。

没有独立显卡

CPU 理论上也能跑,但速度会非常慢,实测生成 1 秒语音可能要 10 秒以上,日常使用基本不现实,只能用来测试功能是否正常。

整合包解压后大小

完整的整合包解压后大约占 14GB 硬盘空间,下载前先确认有足够空间。


和同类工具对比

目前市面上比较常见的开源 TTS 工具还有阿里的 CosyVoice、IndexTTS、GPT-SoVITS 等,商业产品里比较知名的是 ElevenLabs 和 MiniMax。

对比项 OmniVoice CosyVoice3 ElevenLabs v2 GPT-SoVITS
语言覆盖 646种 约50种 约30种 中英日等少数
推理速度(RTF) 0.025 约0.1 云端服务 约0.3~0.5
参考音频时长 3~10秒 3秒以上 需注册上传 5秒以上
是否免费 完全免费 完全免费 付费 完全免费
是否可商用 可(Apache-2.0) 需订阅付费 需确认协议
本地部署 支持 支持 不支持 支持
中文词错误率(WER) 0.84% 约1.5% 约2% 视模型而定
说话人相似度(SIM-o) 高于ElevenLabs v2 较好 行业对标 依赖训练质量

从官方公布的测试数据来看,OmniVoice 在 Seed-TTS 中文测试集上的词错误率只有 0.84%,说话人相似度也超过了 ElevenLabs v2。语言覆盖范围是目前所有开源模型里最广的。

速度方面,RTF 0.025 的意思是生成 1 秒音频只需要 0.025 秒,比实时快 40 倍,生成 40 秒的音频大概只要 1 秒左右(在好显卡上)。而 GPT-SoVITS 的 RTF 通常在 0.3 到 0.5 之间,差距明显。

知乎上有人比较了 OmniVoice 和 IndexTTS 的效果,说 OmniVoice 的延迟更低、输出更稳定,IndexTTS 在某些语言上效果略好,但语言覆盖差很多。各有侧重,做中文内容的话 OmniVoice 完全够用。


安装教程

安装方式分两种:整合包(推荐新手)源码安装(适合有 Python 基础的人)

方法一:整合包(新手推荐)

整合包是有开发者把环境和模型打包好的版本,解压就能用,不需要自己配 Python 环境。

下载地址:

操作步骤:

  1. 下载 .7z 压缩包,推荐用 WinRAR 解压(不要用 Windows 自带的解压,也不要用 360 解压,容易报错)
  2. 解压到一个路径里没有中文字符的文件夹,例如 D:\OmniVoice(路径里的文件夹名也不能有中文)
  3. 双击文件夹里的 一键启动.bat,等待启动
  4. 第一次启动会自动下载模型,默认从国内镜像站 hf-mirror.com 下载,速度还可以
  5. 等浏览器自动弹出界面,或者手动打开 http://127.0.0.1:8081

使用界面操作:

  • 语音克隆:在文本框输入要生成的文字,上传参考音频,点击”生成”
  • 语音设计:切换到”声音设计”模式,用文字描述声音属性,点击”生成”
  • 生成完成后右侧会出现音频,点击下载按钮保存

方法二:源码安装

需要有 Python 基础,适合想折腾或者想接入自己项目的人。

前置条件:

  • Python 3.10 以上
  • NVIDIA 显卡 + CUDA(版本匹配 PyTorch 要求)
  • 安装 uv(依赖管理工具)

安装步骤:

# 1. 克隆代码仓库
git clone https://github.com/k2-fsa/OmniVoice.git
cd OmniVoice

# 2. 安装依赖(国内用户加速)
uv sync --default-index "https://mirrors.aliyun.com/pypi/simple"

# 3. 启动 Web 界面
uv run omnivoice-demo --ip 0.0.0.0 --port 8081

下载模型(国内用户):

Hugging Face 在国内访问慢,可以设置镜像加速:

# 设置镜像
export HF_ENDPOINT="https://hf-mirror.com"

用命令行生成语音:

# 语音克隆
omnivoice-infer \
  --model k2-fsa/OmniVoice \
  --text "这是一个测试。" \
  --ref_audio ref.wav \
  --ref_text "参考音频的文本内容" \
  --output output.wav

# 声音设计
omnivoice-infer \
  --model k2-fsa/OmniVoice \
  --text "这是一个测试。" \
  --instruct "male, British accent" \
  --output output.wav

Python 代码调用示例:

from omnivoice import OmniVoice
import soundfile as sf
import torch

model = OmniVoice.from_pretrained(
    "k2-fsa/OmniVoice",
    device_map="cuda:0",      # Apple Silicon 用 "mps"
    dtype=torch.float16
)

# 语音克隆(ref_text 可以不填,模型会自动转录)
audio = model.generate(
    text="你好,这是测试。",
    ref_audio="ref.wav",
    ref_text="参考音频对应的文字",
)

sf.write("output.wav", audio[0], 24000)

使用注意事项

  • 参考音频时长控制在 3 到 10 秒,太长会拖慢速度,效果也不一定更好
  • 跨语言克隆时(比如用中文录音去生成英文),生成的语音会带有参考音频语言的口音,这是正常现象
  • 文件路径里不要有中文,包括音频文件名,否则可能会报错
  • 如果要做方言,在语言参数里指定对应的方言代码,比如粤语是 zh-yue,四川话是 zh-sichuan
  • Apache-2.0 协议允许商用,但如果用别人的声音克隆,需要确保有合法授权,这点要注意

GitHub 地址

项目地址:https://github.com/k2-fsa/OmniVoice

收藏
点赞

下载地址:https://pan.baidu.com/s/1m0uzJFs4bSyBxsgXdLqdCQ?pwd=lijj

  • 百度网盘

抱歉,评论功能暂时关闭!