abc小站

2026-10-20

一个 0.5B 的语音模型能做什么:蚂蚁 inclusionAI 悄悄开源 Ming-3.0 语音家族

蚂蚁 inclusionAI 悄悄放出 Ming-3.0 语音家族:0.5B 主干的 TTS 主打音色设计、情绪、方言和笑声,MIT 许可;它和 vLLM 食谱里的 Ming-omni-tts-0.5B 不是同一个模型。

语音合成的"最后一公里"

文字转语音(TTS)这件事,现在已经不稀奇了。

打开手机的读屏功能,或者随便找一个在线工具,都能把一段文字念出来。

但是,大家可能有这样的感觉:念是念出来了,就是不像人。

为什么不像?

因为人说话,不只是把字读准。

人会笑,会叹气,会停顿,会带着情绪,会有口音。这些东西不在文字里,语言学上叫做"副语言"(paralinguistic),也就是文字之外、跟着声音一起传递的信息。

副语言做不好,机器念得再准,听起来也是在"播报",不是在"说话"。

过去,想要好的副语言效果,一般只能调用大公司的云端接口。自己在本地跑一个小模型,往往做不到。

本周,我看到蚂蚁集团 inclusionAI 团队在 Hugging Face 上放出了 Ming-3.0 系列,其中的 TTS 模型 Ming-3.0-tts-0.5B 主干只有 0.5B,却主打音色设计、情绪、方言、笑声这些副语言能力。

有意思的是,这件事几乎没有官方宣发。

Ming-3.0 合集里有什么

先说事实。

这次放出的模型,可以分成两组。

第一组是语音合成(TTS),对应 GitHub 上的 Ming-3.0-tts 项目。

1、Ming-3.0-tts-0.5B

一个稠密的 TTS 模型,基于 Qwen2.5-0.5B。按模型卡的说法,仓库里除了语言模型主干,还包括一个 DiT 头、一个音频 tokenizer、一个说话人编码器和文本 tokenizer。

2、Ming-3.0-tts-tiny

名字叫 tiny,其实并不比 0.5B 小。模型卡写明,它是基于 Ling V3 的混合专家(MoE)模型,主干总参数 7.9B,每个 token 激活约 1.3B,还多了一个 0.5B 版没有的多人对话(播客)生成功能。

第二组是音频理解。

3、Ming-3.0-audio-flash

一个原生的音频-语言模型,可以做语音识别、语音问答、音频理解与推理,还可以选择用语音来回复。模型卡写的规格是混合专家结构,总参数 126B,每步激活 6.5B。

4、Ming-3.0-audio-tiny

同一系列的紧凑版,模型卡写的是总参数 9.3B,每步激活 2.7B。

顺便说一句,Hugging Face 上的 Ming-3.0 合集目前列出的是 audio-flash、asr-tiny、tts-tiny、audio-tiny 四个仓库,tts-0.5B 是单独的仓库,没有列在合集里。

也就是说,这个系列覆盖了语音的两个方向:一个是"把文字变成声音",一个是"听懂声音"。

0.5B 是怎么回事

看到 0.5B,很多人的第一反应是:这么小?

这里要澄清一下。

据 OrcaRouter 的梳理,0.5B 指的是语言模型主干的参数量,实际下载的整包要大得多,单个 model.safetensors 文件约 2.96GB。

为什么会这样?

前面说过,这个 TTS 模型不只是一个语言模型。语言模型负责"想说什么、怎么说",DiT 头、音频 tokenizer、说话人编码器负责把这些想法变成真正的声音。

可以打一个比方。

语言模型像是一个配音导演,它读剧本,决定这句话该高兴还是低落,哪里停顿,哪里笑一下。

其他组件像是录音棚里的设备,负责把导演的意图变成一段可以播放的音频。

(这个比方是我自己打的,帮助理解组件分工,具体结构以模型卡为准。)

所以,"0.5B"说的是导演的规模,不是整个录音棚的规模。下载和部署的时候,要按整包来准备,不能只看 0.5B 这个数字。

它能做什么

根据 OrcaRouter 的文章,Ming-3.0-tts 有这样几个特点。

最后一点值得说一下。

采样率越高,声音里能保留的细节一般越多。一个 0.5B 主干的小模型直接输出 44.1kHz,对需要高音质的场景(比如有声书、播客)比较友好(这是我的判断,不是官方说法)。

"文字描述生成音色"也很实用。

以前做音色,一般需要找一段参考录音。现在只要写一句描述,就能设计一个新声音,不涉及任何真人的嗓音。

这里也要提醒一句。

说话人编码器这类组件,通常用来捕捉和复现某个人的声音特征。如果你要用任何工具克隆某个真人的声音,必须先取得本人授权。 这既是法律问题,也是基本的尊重。

这次发布为什么"安静"

OrcaRouter 那篇文章的标题里,用了"quiet release"这个词。

据 OrcaRouter 梳理的时间线:

GitHub 仓库里有推理代码、Dockerfile、一键运行的示例和 cookbook,许可证是 MIT。

也就是说,权重早就放出来了,但代码、文档和许可证在一个月后才补齐,而且一直没有什么宣传。

MIT 许可证意味着,个人和企业都可以比较自由地使用、修改和集成,限制很少。

我觉得,这种"先放东西,不做宣传"的方式,恰恰说明了开源模型的一种常态:好东西不一定上热搜,需要有人去翻 Hugging Face 才能发现。

怎么跑起来

对于开发者来说,最关心的是怎么用。

这里先说一个容易踩的坑。

vLLM 的部署食谱里有一个 Ming-omni-tts-0.5B,通过 vLLM-Omni 提供兼容 OpenAI 格式的 /v1/audio/speech 接口。但它跟 Ming-3.0-tts-0.5B 不是同一个模型,也不是改名。

Ming-omni-tts-0.5B 是上一代,Hugging Face 仓库 2026 年 2 月创建,许可证是 Apache-2.0,主打语音、环境音和音乐的统一生成。Ming-3.0-tts-0.5B 的模型卡把 Ming-omni-tts 称为"上一代",并说这一版的音频 tokenizer 是在它的基础上做的。vLLM 食谱里"0.5B 指主干、整包约 1.6B"的说法,说的也是这个上一代模型。截至发稿,我没有在 vLLM 食谱里找到 Ming-3.0-tts 的条目。

Ming-3.0-tts-0.5B 的模型卡写得很明确:Hugging Face 仓库只用来分发权重,推理要用 GitHub 上的 Ming-3.0-tts 项目。按模型卡,准备步骤大致如下。

git clone https://github.com/inclusionAI/Ming-3.0-tts.git
    cd Ming-3.0-tts
    pip install -r requirements.txt
    hf download inclusionAI/Ming-3.0-tts-0.5B --local-dir Ming-3.0-tts-0.5b
    

然后用仓库里的 infer.py 命令行,或者 Python 接口 ming_tts.MingTTS 来合成语音。数字、日期、单位的文本规范化依赖 pynini,模型卡建议用 conda 安装 2.1.6 版,也可以加 --no_text_normalization 跳过。

模型卡说测试环境是 NVIDIA H800-80GB 和 H20-96G。消费级显卡上跑得怎么样,目前还没有看到公开数据。

GitHub 仓库里还有 Dockerfile 和一键示例,也是一个起点。

我的看法

语音技术有一个特点:数据敏感。

客服录音、医疗问诊、会议纪要、家里的智能音箱,这些声音都很私密。很多机构不愿意、也不能把它们传到外部的云端接口。

所以,一个能在本地或私有服务器上运行、又能做好副语言的小模型,降低的是私有化语音应用的门槛。

Ming-3.0 系列同时给了 TTS 和音频理解两组模型,加上 MIT 许可证,自己搭一套"能听又能说"的语音服务,难度比以前低了不少(这是我的推断,实际效果需要自己测试)。

当然,它目前几乎没有官方宣发,第三方评测也还很少。效果到底怎么样,音色和方言是否自然,还要大家自己去试。

如果你需要一个可以本地部署、能做情绪和音色设计的语音合成模型,可以试试它。

(完)

来源:模型卡 Ming-3.0-tts-0.5B;模型卡 Ming-3.0-tts-tiny;模型卡 Ming-3.0-audio-flash;模型卡 Ming-3.0-audio-tiny;Hugging Face Ming-3.0 合集;OrcaRouter;vLLM 食谱(上一代 Ming-omni-tts-0.5B)。参数规格均出自各模型卡;时间线、整包文件大小与“几乎没有官方宣发”出自 OrcaRouter 梳理;能力描述为官方自报,第三方评测还很少;克隆真人声音须取得本人授权。