跳到主要内容

Qwen3-TTS 完整指南:开源模型、本地部署与 API 对比

· 阅读需 9 分钟
一介布衣
全栈开发者

2026 年,开源 TTS 领域迎来一个重要节点:阿里通义千问团队正式开源了 Qwen3-TTS 系列模型。这是目前开源社区中功能最全面的 TTS 方案之一,支持语音克隆、语音设计、指令控制情绪语速,并且模型完全开放下载。

我花了一些时间把 Qwen3-TTS 的公开资料、官方文档、定价信息和竞品对比整理了一遍,尽量把"能跑起来"和"能落地到产品里"这两件事分清楚。

一、Qwen3-TTS 是什么

Qwen3-TTS 是阿里通义千问团队开源的文本转语音(Text-to-Speech)模型系列。它采用了一个比较独特的架构:12Hz 离散多码本 Tokenizer + 自回归语言模型,把语音生成问题转化成了离散的 token 预测问题。

这个设计带来几个直接好处:

  • 生成质量稳定:离散 token 避免了连续空间中的漂移问题
  • 支持多任务:同一个架构可以同时做 TTS、语音克隆、语音设计
  • 推理效率高:相比传统的流式声学模型 + 声码器两阶段方案,端到端生成延迟更低

核心架构亮点

特性说明
Tokenizer12Hz 离散多码本,每秒仅 12 个 token
语言模型基于 Transformer 的自回归模型
多任务TTS / 语音克隆 / 语音设计 / 指令控制
多语言中文、英文、日文、韩文等 10+ 语言
情感控制自然语言指令描述情绪、语速、风格

二、已发布的 5 个模型

Qwen3-TTS 目前发布了 5 个模型,按功能分为四类:

模型参数量功能
Qwen3-TTS-12Hz-0.6B-Base6 亿基础 TTS,轻量级
Qwen3-TTS-12Hz-1.7B-Base17 亿基础 TTS,效果更好
Qwen3-TTS-12Hz-1.7B-CustomVoice17 亿语音克隆,3 秒参考音频
Qwen3-TTS-12Hz-1.7B-VoiceDesign17 亿语音设计,文字描述生成音色

四个核心功能:

  1. 基础 TTS:输入文本,选择预置音色,直接生成
  2. 语音克隆:提供 3 秒参考音频,克隆该音色生成新内容
  3. 语音设计:用自然语言描述想要的音色(如"中年男性,声音低沉沙哑"),模型直接生成对应音色
  4. 指令控制:在生成时通过 instruct 参数控制情绪、语速、风格

三、本地部署:硬件要求与安装

最低硬件配置

模型FP16 显存INT8 显存INT4 显存
0.6B~2 GB~1.5 GB~1 GB
1.7B~4-6 GB~3 GB~2 GB

硬件推荐

级别GPU显存内存适用场景
入门GTX 10704 GB(INT8)16 GB能跑 0.6B
推荐RTX 30608 GB+32 GB全部模型流畅
生产RTX 4090 / A10016 GB+64 GB批量生成

重要提示:Qwen3-TTS 依赖 CUDA 和 FlashAttention 2,不支持 Apple Silicon(M1/M2/M3/M4)原生运行。Mac 用户只能走 API 调用。

安装与使用

pip install qwen-tts soundfile

基础 TTS 示例:

import torch
import soundfile as sf
from qwen_tts import Qwen3TTSModel

model = Qwen3TTSModel.from_pretrained(
"Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice",
device_map="cuda:0",
dtype=torch.bfloat16,
attn_implementation="flash_attention_2",
)

wavs, sr = model.generate_custom_voice(
text=["欢迎来到今天的教程。", "我们将学习语音合成。"],
language="Chinese",
speaker="Vivian",
instruct="用自然、专业的语气说",
)

for i, wav in enumerate(wavs):
sf.write(f"segment_{i}.wav", wav, sr)

语音克隆示例(3 秒参考音频):

clone_model = Qwen3TTSModel.from_pretrained(
"Qwen/Qwen3-TTS-12Hz-1.7B-Base",
device_map="cuda:0",
dtype=torch.bfloat16,
)

# 创建克隆 prompt(只需计算一次)
prompt = clone_model.create_voice_clone_prompt(
ref_audio="my_voice.wav",
ref_text="参考音频对应的文字内容",
)

# 批量生成
wavs, sr = clone_model.generate_voice_clone(
text=["第一句台词", "第二句台词"],
language="Chinese",
voice_clone_prompt=prompt,
)

四、DashScope API:零部署方案

如果不想自己部署 GPU,阿里云百炼平台(DashScope)提供了 Qwen3-TTS 的云端 API。

计费方式

按输入文本的字符数计费,输出音频不计费。

字符计算规则

字符类型计算方式
汉字(简/繁/日/韩)每个字 = 2 字符
英文/数字/标点/空格每个 = 1 字符
SSML 标签不计入

价格表

模型功能价格(每万字符)免费额度
qwen3-tts-instruct-flash指令控制¥0.81 万字符
qwen3-tts-vd语音设计¥0.81 万字符
qwen3-tts-vc语音克隆¥0.81 万字符
qwen3-tts-flash基础 TTS¥0.81 万字符

实际成本估算

场景文案量字符数费用
短视频(1 分钟)~200 字400 字符¥0.032
中视频(10 分钟)~2000 字4000 字符¥0.32
长视频(60 分钟)~12000 字24000 字符¥1.92
有声书(10 万字)100000 字200000 字符¥16

API 调用示例

import dashscope
from dashscope.audio.tts_v2 import SpeechSynthesizer

dashscope.api_key = 'sk-xxxxxxxx'

synthesizer = SpeechSynthesizer(
model='qwen-tts',
voice='Vivian',
)

audio = synthesizer.call("今天天气真不错,适合出去走走。")

with open("output.wav", "wb") as f:
f.write(audio)

新用户开通百炼后,每个模型有 1 万字符免费额度(90 天有效期),足够测试和小规模使用。

五、竞品对比:Qwen3-TTS vs Fish Audio

Fish Audio 是目前 TTS 领域非常热门的商业平台,音质口碑极佳。两者定位不同,适合不同场景。

功能对比

维度Qwen3-TTSFish Audio
开源✅ 完全开源❌ 闭源
本地部署✅ 支持❌ 不支持
语音克隆3 秒音频10 秒音频
情感控制自然语言指令自然语言指令
音质口碑开源方案领先业界顶级
Mac 可用❌ 需 NVIDIA GPU✅ 仅需 API Key

价格对比

方案计费方式10 万字中文成本
DashScope Qwen3-TTS¥0.8/万字符~¥16
Fish Audio s2.1-pro$15/百万字节$4.50(¥33)
Fish Audio s2.1-pro-free免费¥0

选型建议

  • 追求性价比:DashScope Qwen3-TTS,中文配音成本约为 Fish Audio 的一半
  • 追求极致音质:Fish Audio s2.1-pro,口碑更好
  • 需要本地部署 / 数据隐私:只能选 Qwen3-TTS
  • 想免费试:Fish Audio 的 s2.1-pro-free 模型完全免费

六、本地部署 vs 线上 API:怎么选

成本对比

项目本地部署线上 API
GPU 显卡¥2,000 ~ ¥15,000+¥0
电费~¥50-200/月¥0
开发时间1-3 天10 分钟
免费额度无限1 万字符
10 万字成本~¥0(仅电费)~¥16

性能对比

指标本地部署线上 API
网络依赖无需联网必须联网
数据隐私完全本地数据传到云端
首次加载模型加载 10-30 秒冷启动 ~1 秒
批量生成无限制受并发限制
运维自己维护零运维

盈亏平衡点

以 RTX 4060 Ti 16GB(¥4,000)为例:

  • 10 万字配音约需 2 小时,电费约 ¥1
  • DashScope 10 万字约 ¥16
  • 盈亏平衡 ≈ 4000 ÷ 16 × 10 万 = 2500 万字

即大约 156 部 10 万字有声书之后,本地部署才开始划算。

决策树

你需要配音功能吗?

├─ 有 NVIDIA GPU(显存 ≥ 8GB)
│ ├─ 月配音量 > 20 万字? → 本地部署
│ ├─ 需要数据隐私? → 本地部署
│ └─ 其他情况 → 线上 API(省心)

├─ Mac 用户 / 无 GPU
│ └─ 线上 API(DashScope 或 Fish Audio)

└─ 想先测试效果?
└─ 线上 API(免费额度 → 验证 → 再决定)

七、视频配音工程化方案

如果要把 Qwen3-TTS 用于视频配音,整体流程是:写文案 → TTS 生成语音 → 对齐时间轴 → 合成输出

脚本格式建议

{
"title": "AI配音教程",
"characters": {
"narrator": { "speaker": "Uncle_Fu", "instruct": "沉稳专业" },
"host": { "speaker": "Vivian", "instruct": "活泼亲切" }
},
"scenes": [
{ "time": 0, "character": "narrator", "text": "欢迎来到AI配音教程" },
{ "time": 5, "character": "host", "text": "今天我们来学习..." }
]
}

多角色配音示例

characters = {
"旁白": {"speaker": "Uncle_Fu", "instruct": "沉稳、有磁性的男声"},
"女主": {"speaker": "Vivian", "instruct": "活泼、带点俏皮"},
"男主": {"speaker": "Dylan", "instruct": "自然、略带慵懒"},
}

script = [
("旁白", "那是一个普通的下午。"),
("女主", "你怎么才来啊,我等了你好久了!"),
("男主", "抱歉抱歉,路上堵车了。"),
]

for i, (role, text) in enumerate(script):
char = characters[role]
wavs, sr = model.generate_custom_voice(
text=text,
language="Chinese",
speaker=char["speaker"],
instruct=char["instruct"],
)
sf.write(f"dialog_{i}_{role}.wav", wavs[0], sr)

FFmpeg 合成

# 拼接音频片段
ffmpeg -f concat -safe 0 -i list.txt -c copy full_dialog.wav

# 替换视频音轨
ffmpeg -i input.mp4 -i full_audio.wav \
-c:v copy -map 0:v -map 1:a -shortest output.mp4

关键注意事项

问题解决方案
语速控制instruct 里写明"语速偏快/偏慢"
情感表达instruct 支持自然语言描述情绪
长文本按句子拆分生成,避免一次性输入过长
音频对齐生成后测量时长,与视频时间轴对比调整
批量加速create_voice_clone_prompt 预计算,避免重复提取特征

八、在线试听

如果不想部署,可以直接在线体验:

总结

Qwen3-TTS 是目前开源 TTS 领域功能最全面的方案之一。它的核心价值在于:

  1. 完全开源:模型权重、训练代码、推理框架全部开放
  2. 功能全面:TTS + 语音克隆 + 语音设计 + 指令控制,一个模型系列覆盖
  3. 部署灵活:可以本地部署(需 NVIDIA GPU),也可以走 DashScope API(按量付费)
  4. 成本可控:API 价格 ¥0.8/万字符,10 分钟视频配音不到 4 毛钱

对于 Mac 用户或者不想折腾 GPU 部署的场景,DashScope API 是最务实的选择;对于需要大批量生产或数据隐私要求高的场景,本地部署是更好的长期方案。