实时交互数字人与TTS调研.md

实时交互式数字人(直播 / 语音对话)+ 语音合成链路 · 选型调研

目标硬件:单张 RTX 5060 Ti 16GB(sm_120 / Blackwell)、32GB 内存、Ubuntu 调研日期:2026-09-22 信息时效:要求并已按「2026 年 9 月最新状态」检索

本机实测环境核对(2026-09-22,来源:本机 nvidia-smi + GPU 机 venv 实测)

  • GPU:NVIDIA GeForce RTX 5060 Ti,16311 MiB,驱动 610.43.02,CUDA 13.2
  • 实测 PyTorch:2.11.0+cu130,torch.cuda.get_arch_list() = ['sm_75','sm_80','sm_86','sm_90','sm_100','sm_120'] → 本机 torch 已原生含 sm_120 kernel(这是最关键的可行性前提)
  • 内存 32GB、NVMe 盘剩余约 138 GiB

来源分级约定(全文遵守):


摘要:四个必须先知道的结论

  1. 14B 级「实时」数字人全部与 16GB 单卡无缘。 SoulX-FlashTalk-14B 官方 README 原文:单卡需 >64G 显存,--cpu_offload 后可降到 40G;第三方横评实测峰值 57,805 MiB。Wan2.2-S2V-14B(58,681 MiB)、LiveAvatar(61,401 MiB)、LongCat-1.5(46,827 MiB)同理。这与量化无关——它们依赖多卡序列并行。
  2. 16GB 单卡能跑「真·实时流式」的只有三类:① SoulX-FlashHead-1.3B(Lite) —— 峰值显存 5,763 MiB,第三方横评原话「16 GB 以下:SoulX-FlashHead Lite 是经过验证的唯一一款完全适配的全功能生成器」,代价是画质偏弱(512×512);② LiveTalking(wav2lip/musetalk 封装)—— sm_120 最安全、生态最成熟;③ NanoAvatar(2026-09 新品)—— 仅 834 MiB、4090 量化版首帧 18ms,但口型权重 CC BY-NC 不可商用。另有 Ditto(45 FPS,但 TRT 8.6.1 不支持 sm_120)与 AvatarForcing(一步流式 34ms/帧,待实测)。
  3. TTS 侧的瓶颈不是显存而是「流式 + 商用许可 + sm_120 兼容」。实时链路首选 Qwen3-TTS(阿里) —— 官方首包 97ms(全场最低,论文原文)、Apache-2.0、本次调研中唯一「sm_120 零 issue」的 TTS 模型(专项检索命中 0 条),且已实测可跑通 LiveTalking + vLLM-Omni(0.6B 首包 ~130ms)。次选 Fun-CosyVoice3-0.5B-2512(Apache-2.0、流式 150ms、CV3-Eval 中文相似度 80.01 最高)但必须先升 torch ≥2.7+cu128(CosyVoice issue #1815 直接点名 5060 Ti)。IndexTTS-2.5 中文更强但官方仓库没有流式。OmniVoice 权重是 CC-BY-NC,不可商用——这是最容易被「代码 Apache-2.0」误导的坑。
  4. 真正会卡住你的是「整合层」而不是模型本身:① 没有任何 TTS 框架天生不支持 sm_120,但照抄官方 requirements 在 5060 Ti 上必挂(钉死的 torch ≤2.3/2.4 只编到 sm_90)——CosyVoice issue #1815 直接点名 RTX 5060 Ti;② LiveTalking 硬编码要求 TTS 输出 16kHz 单声道 / 20ms 分块,而多数模型原生 22–48kHz,接入前必须重采样。

第一块:实时数字人驱动框架对比

表 1-A:驱动框架总表(16GB 单卡视角)

项目实现方式许可证(能否商用)显存需求 / 16GB 单卡延迟 / FPS流式中文半身/全身Star(2026-09-22)维护
SoulX-FlashHead-1.3B<br>Soul-AILab/SoulX-FlashHead2D 扩散(1.3B DiT = Wan2.1-T2V-1.3B 架构 + LTX-VAE,流式仅 4 步去噪)Apache-2.0 ✅峰值 5,763 MiB(Lite) 🟢;权重 6.107GB 但全是 F32(本报告实测:843 个张量 dtype 全为 F32)→ 转 fp16 仅 ≈3GB ✅ 可跑,余量大Lite:96 FPS(单卡)🟢;热启动 0.19 s/块 🟢 ⚠️ 硬件口径矛盾:README/摘要写 RTX 4090,论文 Evaluation 段写「measured on a single NVIDIA H20 GPU」✅ 无限时长流式(Temporal Audio Context Cache)✅ 中文(VividHead 数据集 15 语种 / wav2vec2-base)头肩;全身 🔴1.1–1.5k2026-02 首发,2026-05 仍有提交
SoulX-FlashTalk-14B<br>Soul-AILab/SoulX-FlashTalk2D 扩散(14B)Apache-2.0 ✅单卡 >64G,--cpu_offload 40G 🟡;实测 57,805 MiB 🟢 ❌ 16GB 不可行宣称 0.87s 首帧 / 32 FPS(8×H800)🟡;H200 实测 331.93s/3.63s 音频 🟢✅ 流式✅头肩1.5k2026-01 权重
LiveTalking<br>lipku/LiveTalking2D 视频驱动封装(wav2lip / musetalk / ultralight)Apache-2.0 ✅wav2lip ~200MB、musetalk ~600MB(fp16)🟡;⚠️ musetalk 修复前实测 17.62GB(OOM),PR #612 修复后 3.9GB 🟢 ✅ 可跑wav2lip256:3060 60 FPS / 3080Ti 120 FPS🟡;musetalk:3080Ti 42 / 4090 72 FPS🟡✅ 流式 + 支持打断✅ 原生中文✅ 支持全身视频拼接9.6k最活跃(2026-09 仍有提交,PR #612 于 2026-08-20 合并)
OpenAvatarChat<br>HumanAIGC-Engineering/OpenAvatarChat模块化编排(LiteAvatar / LAM 3D / MuseTalk / FlashHead)Apache-2.0 ✅官方旧版 README 表:LiteAvatar/LAM 2–3GB、本地 TTS 档 8–10GB、全本 MiniCPM 20GB+(int4 后 10GB)🟡 ✅ 可跑平均响应 2.2s 🟡;输出 25fps 🔵✅ 全后端支持手动 + 双工(barge-in)打断✅ SenseVoice + CosyVoice头肩;LAM 为 3D3.8k活跃(2026-07 提交,v0.6.0 = 2026.04)
MuseTalk 1.5<br>TMElyralab/MuseTalk2D 视频驱动(latent 空间 UNet + Whisper + VAE)代码/权重可商用(README 声明;GitHub 许可字段 NOASSERTION,子模型需各自核验)⚠️ 同款卡实测:RTX 5060 Ti 16GB 实测 ~3.6GB(issue #409,361 帧验证)🟢;但必须 torch 2.10+cu128,且需绕开 mmcv(Py3.12 编译失败→改用 face-alignment)⚠️ 该 5060 Ti 实测仅 ≈5.8 FPS(非实时!)(3090/4090 上 TTFV 1769/2095ms);对比官方宣称 30fps+ @ V100🟡、LiveTalking 内 3080Ti 42 / 4090 72 FPS🟡❌ 官方成员确认不支持音频流式(issue #33)—— LiveTalking 里的实时化是外层封装的功劳✅ 中英日头肩(256×256,高清需超分)6.6k⚠️ 停更近一年(最后提交 2025-09-26)
LatentSync 1.6<br>bytedance/LatentSync2D 口型扩散(audio-conditioned latent diffusion)Apache-2.0 ✅官方:1.5 8GB;1.6 需 18GB 🟡 ❌ 1.6 在 16GB 上不可行(1.5 可)🔴 未查到实时 FPS(离线批处理定位)❌ 非流式✅ 1.5 起改善中文头肩6.1k2025-06 最后提交,停滞
Ultralight-Digital-Human<br>anliyuan/Ultralight-Digital-Human2D 视频驱动(超轻量 UNet + HuBERT/Wenet)许可证字段未指定(🔴 需逐文件核验)🔴 无实测显存;LiveTalking 估算 ~1.5GB(fp32)🟡;真正的坑是内存(第三方实测 1080p 推理 ~10GB RAM)🟢 ✅ 可跑主打移动端实时🟡;无桌面 FPS 数字✅(README 明确给了流式推理素材拍摄指引)✅ 原生中文头肩(160×160)2.6k2025-07;作者已转向 FeatherTalk
Duix.Avatar(原 Duix.Heygem)<br>duixcom/Duix.Avatar(已改名)2D 视频驱动 + Docker 一体化⚠️ 自定义(GitHub 许可字段不可识别);且 LICENSE 与 README 口径差 100 倍(LICENSE 写 1000 MAU vs README 写 10 万用户)+ 5 项附加义务,🔴 商用须法务审官方硬件要求:内存 32GB、磁盘 100GB+;社区称 lite 版 6GB 显存可用🟢。🔴 但在 sm_120 上当前是坏的(issue #624,2026-09-04,Open 零回复:RTX 5070 报 no kernel image is available,根因是默认 Docker 镜像的 PyTorch 无 CC12.0 内核,用户无力自救;仅有 5090 专用 compose,未验证 5060 Ti)🔴 无官方延迟数字偏批量/直播一体化(TTS 仅 fish-speech-ziming,且 "streaming": false 固定关闭流式)✅ 原生中文头肩16k2026-04 最后提交
Wav2Lip<br>Rudrabha/Wav2Lip2D 视频驱动(CNN 编解码 + 空间注意力)❌ 明确禁止商用(模型基于 LRS2 训练,README 原文「any form of commercial use is strictly prohibited」)LiveTalking 估算 ~200MB🟡 ✅ 极轻LiveTalking 内 3060 60 FPS🟡经 LiveTalking 封装后 ✅语言无关(纯口型)头肩13k2025-06;停更
LivePortrait<br>KwaiVGI/LivePortrait → KlingAIResearch/LivePortrait2D 肖像动画(implicit-keypoint warp + SPADE)代码 MIT ✅ 但依赖 InsightFace 模型 = 仅限非商用,商用须替换检测器权重仅 ~500MB / 130M 参数🟡;第三方封装称 6GB🟢 ✅ 可跑单帧 14.77ms ≈ 67.7 FPS(4090 + torch.compile)🟡❌ 官方非流式(社区有 TensorRT 实时版 FasterLivePortrait)语言无关(不是音频驱动 lip-sync)人像/头肩(无全身)19k2026-06 最后提交,低维护
Linly-Talker<br>Kedreamix/Linly-Talker一体化管线(ASR+LLM+TTS+SadTalker/Wav2Lip/ER-NeRF/MuseTalk)MIT ✅🔴 官方无显存数字;第三方估算「最轻组合也 >10GB,12GB 为最低门槛」🟢(估算,无截图)🔴 无端到端数字❌ 主仓 Gradio 轮次式;流式在分仓 Linly-Talker-Stream✅ 原生中文头肩3.5k⚠️ 主仓 2026-02 后停更 7 个月
Fay<br>xszyou/FayAgent 框架 + 数字人连接器(自身不渲染)⚠️ GPL-3.0(README 自称「商用免责」,但 GPL 传染性仍在;SaaS 不触发网络条款,二进制分发受限)本体不需要 GPU;显存取决于外挂模型 ✅🔴 无毫秒数字,仅声明「全时流式」✅ 全时流式 + 唤醒/打断✅ FunASR 原生中文由外挂决定(含 2.5D/3D/UE 通道)13.5k极活跃(2026-09-21 仍有提交)
AigcPanel<br>modstart-lib/aigcpanelElectron 桌面客户端 + 本地模型管理器Apache-2.0 ✅文档原文:界面本身对硬件无要求;本地跑模型需 NVIDIA 卡(具体 GB 🔴 未给) ✅🔴 无延迟数字(离线视频合成定位)❌ 任务式(提交→生成→下载)✅ 原生中文取决于上传素材5.6k活跃(2026-09-18)
AVTR-1(2026 新)<br>avaturn-live/avtr-12D 流匹配自回归,双流音频(说话 + 主动倾听)⚠️ 三层许可:权重「年营收 <1000 万美元可商用」;Renderer/Streamer 为 PolyForm Noncommercial 仅限非商用;且依赖 InsightFace 非商用模型官方实测:RTX 4060 Ti 166ms/块(RTF 1.2×)、3070 181ms(1.1×)、3060 Ti 206ms(0.97×)🟡 ✅ 5060 Ti 预计可实时(实时阈值 = 200ms/块)25 fps,5 帧块 = 200ms 预算;RTF ≥1.0 即实时✅ 原生流式(WebRTC + TURN)🔴 未查到中文评测头肩(支持对话双方)4692026 新项目,活跃
NanoAvatar(2026-09 新品)<br>wpydcr/NanoAvatar端侧 2D 口型(HuBERT + 口型网络)⚠️ 代码 MIT,但口型权重是 CC BY-NC 4.0 → 不可商用(中文 HuBERT 权重为 MIT)🟢 仅 ~834 MiB(官方表;骁龙 8 Gen 3 上 39 FPS / 115ms;Lite 700 MiB / 41 FPS / 103ms);RTX 4090 CUDA 量化版 333 FPS / 18ms 首帧 / 834 MiB,全精度 224 FPS / 37ms / 1119 MiB ✅ 可跑,余量极大✅ 首帧 103–115ms(端侧)/ 18ms(4090 量化);官方称「流式 LLM + 流式 TTS 下约 0.3s 开始说话」✅ 原生流式✅ 有中文 demo/中文 HuBERT头肩152026-09 新项目
AvatarForcing(2026-03,快手 Kling)<br>KlingAIResearch/AvatarForcing一步流式扩散(局部未来滑窗 + 异构噪声),1.3B studentApache-2.0 ✅权重文件约 19GB(未实测)⚠️;1.3B student → 16GB 有希望但 🔴 无实机报告论文:34 ms/帧(1.3B student,硬件未标注)🟡;25 FPS / 832×480,B=4 帧/块✅ 一步流式(每步固定成本)🔴 未查到头肩812026-03,活跃
SentiAvatar(2026-04,SentiPulse + 人大 GSAI)<br>SentiAvatar/SentiAvatar3D 动作路线(输出 BVH,非像素渲染)⚠️ CC BY-NC-SA 4.0 → 不可商用权重 ~2.9GB ✅ 可跑✅ 6s 音频 / 0.3s(🟡 官方口径)✅✅3D 全身(BVH 骨骼)4532026-04
Ditto-talkinghead<br>antgroup/ditto-talkinghead2D Motion-Space Diffusion + 光流 warp(借鉴 LivePortrait)Apache-2.0 ✅权重 ~2.4GB(PyTorch 路线)🟡 → 推断 16GB 充足 ✅FPS 45.04(流式) 🟢 FlashHead 论文 Table 3(28.12 同类对比中唯一实时档)✅ 流式(v0.4_hubert_cfg_trt_online.pkl 在线配置)🔴 未查到(音频编码器 hubert)头肩(运动 VAE 抽象表示,非统一像素潜空间)891⚠️ 2026 年无新提交(最新 2025-11 开源训练码)
LiveAvatar<br>Alibaba-Quark/LiveAvatar2D 扩散 + LoRA(挂 Wan2.2-S2V)Apache-2.0 ✅实测峰值 61,401 MiB 🟢;官方单卡 80GB / FP8 后 48GB ❌ 16GB 不可行45 FPS(5×H800)🟡✅🔴头肩2.4k2026-08 有提交;ECCV 2026 Spotlight

注:SoulX-FlashHead / Ditto / AVTR-1 为 2026 年新增或本次新发现的项目,详见「表 1-B」。Realtime-Venus(inclusionAI,9B Omni/Audio,全双工流式音视频对话,含后台任务框架)属「实时对话模型」而非纯数字人渲染器,可作语音对话大脑候选。

表 1-B:2026 年新增 / 新发现的实时数字人项目

项目时间实现方式许可16GB 可行性备注
SoulX-FlashHead-1.3B2026-02-12扩散,1.3BApache-2.0✅ 唯一第三方验证 <16GB 全功能生成器本报告第一推荐
SoulX-FlashTalk-14B2026-01-08扩散,14BApache-2.0❌ 40–64GB8×H800 才实时
EchoMimicV3-Flash2026-01-22扩散,1.3B / 8 步,无需 face maskApache-2.0✅ 官方明写「12G VRAM Requirement」+ 支持到 768×768(2026-01-22 更新);另有官方条目「EchoMimicV3 can run on 16G VRAM using ComfyUI」。⚠️ 但第三方横评在 768 档实测峰值 33,726 MiB → 实测与官方宣称冲突,须自测横评评为「最有吸引力的部署候选」「最佳的实际质量与基础设施平衡」🟢;AAAI 2026 接收
LongCat-Video-Avatar 1.52026-05-21扩散 13.6B + DMD2 8 步MIT⚠️ 押注 int8(权重 14.81 GiB)+ 分层 offload;实测 bf16 46,827 MiB原生多人 + 长视频续写;Whisper-large-v3,中文原生
LiveAvatar(阿里)2025-12-08扩散 + LoRA(挂 Wan2.2-S2V)Apache-2.0❌ 实测 61,401 MiB画质第一(横评)
AVTR-12026流匹配自回归,双流音频⚠️ 混合(见上表)✅ 预计可唯一支持主动倾听的
Ditto-talkinghead2025-11(ACM MM 2025)Motion-Space Diffusion + TRTApache-2.0✅ 推断可(权重 ~2.4GB)FPS 45.04 流式🟢;⚠️ 钉 tensorrt==8.6.1,TRT 8.6.1 不支持 sm_120(需升 TRT 10.x + 重转引擎 + 重编 libgrid_sample_3d_plugin.so)
Realtime-Venus2026实时数字人🔴 待核🔴 待核2026 新出现,资料较少
Wan-Dancer2026Wan 系舞蹈/动作🔴 待核🔴见 Comfy-Org/Wan-Dancer,社区报告与 sageattention 不兼容
Hallo3 / Hallo42025–2026扩散🔴 待核❌ 重量级非实时定位
HunyuanVideo-Avatar2025扩散🔴 待核❌ 重量级腾讯混元
MEMO2025扩散🔴❌表情+口型

方法论提醒:本项目组另有一份离线口播(批量出片)方向的独立调研,与「实时交互」是不同需求。离线出片质量与显存严格成反比(画质最好的 LiveAvatar 需 61GB),不要把它当成实时方案。参见同目录 数字人选型结论-20260922.md。


第二块:配套 TTS / 语音克隆模型对比

表 2-A:TTS / 语音克隆模型总表

模型参数量许可证(能否商用)中文质量(数字)流式 / 首包延迟显存 / 16GB 可行性与数字人框架集成
Fun-CosyVoice3-0.5B-2512<br>FunAudioLLM/CosyVoice0.5BApache-2.0 ✅ 代码+权重均可自由商用test-zh CER 1.21%(RL 0.81%)/ SS 78.0 🟡;第三方 CV3-Eval zh SS 80.01(该表最高) 🟢✅ Bi-Streaming,官方宣称低至 150ms 🟡;vLLM-Omni 实测 TTFP ~810ms → ~195ms(H100 优化后)🟢0.5B → 16GB 轻松 ✅vLLM-Omni 一等公民;OpenAvatarChat 默认 TTS;LiveTalking 历史内置
IndexTTS-2.5<br>index-tts/index-tts0.8Bbilibili Model Use License ✅ 中小企业免费商用(仅「月活>1亿 或 年营收>10亿人民币」需另行授权,§2.2)官方 HF 卡:中文 CER 0.93%(RL)/ 1.21%(base),相似度 77.9/78.0 🟡;第三方 CV3-Eval zh SS 77.10/77.92 🟢❌ 官方仓库无流式(中英文 README 全文 grep stream/流式 零命中)。流式仅存在于 NVIDIA《Faster IndexTTS-2》(arXiv:2607.21042,未见开源):中文首包 chunk=2s → 596.1ms;chunk=1s → 395.9ms(A100 FP16)🟢官方 HF 卡 ~6GB VRAM ✅vLLM-Omni 支持(IndexTTS2 / IndexTTS2.5);vLLM recipes 有生产部署
OmniVoice<br>k2-fsa/OmniVoice(小米)0.8B⚠️ 代码 Apache-2.0,但权重 CC-BY-NC → 不可商用(原文:pre-trained model is licensed under the CC-BY-NC due to constraints from its training data (e.g., Emilia))自家论文(Seed-TTS test-zh):CER 0.84% / SIM-o 0.777 🟡;⚠️ 第三方 CV3-Eval 给的是 zh WER 3.41%——口径差 4 倍,勿混用❌ NAR 非流式(全篇无 streaming);RTF 0.0319(H20 16 步 BS=1)🟡;5060 Ti 实测 ~0.6s 生成 5s 音频(nf4 低显存档)🟢4GB 可跑(5060 Ti 社区配方;nf4 LM + fp16,MAX_VRAM_GB=4)🟢 ✅社区有 ComfyUI 节点;非流式 → 不适合实时对话
GPT-SoVITS<br>RVC-Boss/GPT-SoVITS152M + 77MMIT ✅官方 wiki(SeedTTS CN):v2ProPlus WER 0.016 / SIM 0.737(真人 GT 0.750)🟡❌ 无流式;RTF 0.028 @4060Ti / 0.014 @4090 🟡极小 ✅LiveTalking 内置(tts/sovits.py)
MOSS-TTS / MOSS-TTS-Realtime<br>OpenMOSS/MOSS-TTS1.7B(Local)/ 8BApache-2.0 ✅第三方表:MossTTSLocal 1.7B zh CER 1.44 / SIM 79.62(该表内最高)🟢✅ MOSS-TTS-Realtime:TTFB 180ms / RTF 0.51(单卡 L20)🟡;接 LLM 全链路首包 377ms(197+180)🟡✅ 官方称 8B 能塞进 8GB(走 llama.cpp)🟡vLLM-Omni 支持(Nano / Realtime / Delay 三种);LiveTalking OmniTTS 支持列表内含 MOSS-TTS-Nano
Fish Audio S2 Pro<br>fishaudio/fish-speech4B❌ FISH AUDIO RESEARCH LICENSE(2026-03-07):任何 Commercial Purpose 都需单独书面授权,且「企业内部自用」也算商用 → 一律不可商用宣称中文 WER 0.54%、TTFA ~100ms / RTF 0.195(H200 SGLang)🟡;⚠️ 第三方 CV3-Eval zh WER 3.62%(差 6.7 倍)、SS 67.79 🟢✅ 流式;RTX PRO 6000 实测 TTFA ~100ms(零样本)/ ~135ms(克隆) 🟢权重 ~12GB 磁盘;16GB 偏紧 ⚠️vLLM-Omni 支持;LiveTalking OmniTTS 支持
F5-TTS<br>SWivid/F5-TTS0.3–0.4BMIT ✅中文 CER 1.52%,SIM 74.1–76 🟡❌ 无流式小 ✅无现成集成
MegaTTS3<br>bytedance/MegaTTS30.45BApache-2.0 ✅🔴 中文客观数字完全未查到(README 评测是图片,第三方表均未收录)🔴 未查到小 ✅无
Kokoro<br>hexgrad/kokoro82MApache-2.0 ✅🔴 无任何中文客观数字(中文走 misaki[zh],lang_code='z')❌ 无流式<3GB ✅无
ChatTTS<br>2noise/ChatTTS—❌ 代码 AGPL-3.0 + 权重 CC BY-NC 4.0 双重不可商用官方 FAQ:30s 音频 ≥4GB 显存,RTF≈0.3 @4090 🟡❌ 无流式4GB ✅无
Qwen3-TTS-12Hz-1.7B / 0.6B ⭐实时首选<br>QwenLM/Qwen3-TTS(13k⭐)1.7B / 0.6BApache-2.0 ✅(HF 侧 license:apache-2.0、gated:False 已确认)自报 Seed-TTS CER 0.77 / SIM 0.799🟡;第三方 CV3-Eval:1.7B zh WER 3.27 / SS 73.02(WER 最低)🟢;3 秒零样本克隆✅ 官方首包 97ms(全场最低,论文原文:immediate first-packet emission 97ms)🟡;LiveTalking + vLLM-Omni 实测 0.6B:首包 ~130ms🟢1.7B ~3.89GB(vLLM 实测,3090)/ 5→8GB 峰值 ✅LiveTalking 官方首选;vLLM-Omni 支持。⚠️ 本次调研中唯一「sm_120 零 issue」的 TTS(专项检索 total_count=0)。短板:微调脚本硬编码 FA2(issue #372,不微调无影响)
VoxCPM2<br>openbmb/VoxCPM22BApache-2.0 ✅Seed-TTS CER 0.97% / SIM 79.5🟡(中英双优);CV3-Eval zh WER 3.88 / SS 74.99 🟢;⚠️ 英文榜却很差(3.35%)——典型中英能力背离✅ RTF 0.13–0.30 🟡~8GB ✅vLLM-Omni 支持;LiveTalking OmniTTS 支持(官方口径 13G)
FireRedTTS-2(小红书)1.5BApache-2.0 ✅Seed-TTS CER 1.14% / SIM 73.6🟡;CV3-Eval zh WER 8.22 / SS 68.10 🟢(该表末位)✅ 首包 140ms 🟡bf16 9GB ✅vLLM-Omni 支持
LongCat-AudioDiT(美团)3.83BMIT ✅(代码+HF tag 双确认)Seed-TTS CER 1.09% / SIM 81.8(全场最高)🟡❌ 非流式(非自回归扩散)—— 离线口播不需要流式,故不是缺点⚠️ 3.83B F32 ≈15GB+,能否进 16GB 需实测(转 bf16 后音质待验)无现成集成
GLM-TTS(智谱)1.5B⚠️ GitHub Apache-2.0 vs HF mit 冲突,需澄清Seed-TTS CER 0.89%🟡🔴✅vLLM-Omni 支持。⚠️ issue #9:RTX 5060 Ti 16G 上 GPU 利用率仅 40%
Voxtral-4B-TTS(Mistral)4B🔴 待核🔴✅⚠️vLLM-Omni 支持

❌ 三个热门候选已被排除(务必别踩):

  • Spark-TTS:GitHub 写 Apache-2.0,但 HF 权重是 CC-BY-NC-SA-4.0 → 不可商用(官方自相矛盾)。
  • Higgs Audio v2 / v3:HF license other 含义不明,主线 v3 明确非商用,需 ≥24GB,且无 arXiv 论文。
  • VibeVoice-TTS-1.5B:微软 2025-09-05 已下架代码并标 Disabled,官方明文不建议商用;仅 Realtime-0.5B 存活(仅英文单说话人)。

表 2-B:中文质量横向对照(统一第三方口径,可直接比)

🟢 来源:IndexTTS 官方 README 转录的 CV3-Eval 零样本 TTS 榜(WER↓ / SS↑,SS = 说话人相似度)

模型参数zh WER↓zh SS↑en WER↓ja WER↓
IndexTTS2.5-RL0.8B3.9377.923.895.30
IndexTTS2.50.8B4.3677.105.125.66
CosyVoice3-0.5B0.5B3.8480.01(最高)4.88—
Qwen3-TTS1.7B3.27(WER 最低)73.025.065.89
OmniVoice0.8B3.4172.993.625.38
Fish Audio S2 Pro4B3.6267.793.835.15
VoxCPM22B3.8874.995.136.69
Moss-TTS 1.58B4.0272.684.4510.97
FireRedTTS-21.5B8.2268.1014.92—

⚠️ 口径警告:上表是 CV3-Eval,与各家论文自报的 Seed-TTS test-zh 不可混比。例如 OmniVoice 自报 Seed-TTS zh CER 0.84%,而 CV3-Eval 上只有 WER 3.41%(差 4 倍)。引用数字时必须带榜单名。

⚠️ 厂商宣称 vs 第三方实测差距最大的案例:Fish Audio S2 Pro 宣称中文 WER 0.54%,第三方 CV3-Eval 实测 3.62%(差 6.7 倍),且 SS 67.79 明显低于 CosyVoice3 的 80.01。

表 2-B-2:中文核心指标(Seed-TTS test-zh 口径,另一套榜)

🟡 这是各家论文/官方 wiki 自报的口径(与上表 CV3-Eval 不可混比),补齐后可看到两套榜的差异:

模型参数中文 CER/WER ↓说话人相似度 ↑流式商用
Fish Audio S2 Pro4B0.54%(⚠️ 第三方实测 3.62%)未给✅ TTFA <100ms❌ 需单独授权
Qwen3-TTS-1.7B1.7B0.77(自报)/ 1.22–1.33(三方)0.799 / 77.0✅ 首包 97ms✅ Apache-2.0
OmniVoice(小米)0.8B0.84%0.777(SIM-o)❌ NAR❌ 权重 CC-BY-NC
GLM-TTS1.5B0.89%76.4🔴⚠️ 许可冲突
IndexTTS2.50.8B0.93%(base 1.21%)77.9❌ 官方无流式⚠️ bilibili 有条件
VoxCPM22B0.97%79.5✅ RTF 0.13–0.30✅ Apache-2.0
LongCat-AudioDiT(美团)3.83B1.09%81.8(全场最高)❌ 非流式✅ MIT
FireRedTTS-21.5B1.14%73.6✅ 140ms✅ Apache-2.0
Fun-CosyVoice3-0.5B0.5B1.21%(RL 0.81%)78.0✅ 双向流式 150ms✅ Apache-2.0
MossTTSLocal / Delay1.7B / 8B1.44 / 1.37%79.62 / 76.98✅(Realtime TTFB 180ms)✅ Apache-2.0
MegaTTS30.3–0.5B1.52%79.0❌✅ Apache-2.0
F5-TTS0.3–0.4B1.52%74.1❌✅ MIT
Spark-TTS0.5B1.54%66.0❌❌ 权重 CC-BY-NC-SA
GPT-SoVITS v2ProPlus229M1.6%0.737❌✅ MIT
Kokoro82M未查到(官方 tag 只有 en)未查到❌✅ Apache-2.0

⚠️ 口径警告(4 个实例,务必带榜单名引用):Qwen3-TTS 自报 0.77 vs 第三方 1.22–1.33(1.6×);Fish S2 Pro 宣称 0.54 vs 第三方 3.62(6.7×);OmniVoice 0.84 vs 3.41(4×);GPT-SoVITS 1.6 vs 7.34(4.6×)。任何单一数字都不足以定论——最终必须用 seed-tts-eval 自测(https://github.com/BytedanceSpeech/seed-tts-eval)。

两套榜的差距提示:OmniVoice 在 Seed-TTS 上是 0.84%(冠军级),在 CV3-Eval 上是 3.41%;Fish S2 Pro 在 Seed-TTS 上 0.54%,在 CV3-Eval 上 3.62%。结论:中文 TTS 的「哪个最强」高度依赖榜单,任何单一数字都不足以定论。

⚠️ 表 2-B-3:英文 Elo 榜对中文选型完全无用(重要方法学结论)

2026 年没有任何第三方 Elo 榜能评中文 TTS。 调研中确认:

榜单能否用于中文选型证据
Artificial Analysis TTS(唯一可抓的完整第三方 Elo 榜)❌ 纯英文仅 US/UK 口音;榜上 90 个模型里中国开源模型全部缺席(IndexTTS / CosyVoice 开源权重 / GPT-SoVITS / ChatTTS / F5-TTS / MegaTTS3 / OmniVoice / MOSS-TTS / VoxCPM2 / GLM-TTS / FireRedTTS-2 均不在)
HuggingFace TTS Arena V2❌ 英文专用文档原文「Prompts are English-only for now」
TTS Spaces Arena 原始投票❌kokoro 98.4% 第一,GPT-SoVITS-ProPlus 仅 27.5% 垫底

Artificial Analysis TTS 榜(英文)参考值:Sonic 3.6 = 1272(居首)|开源第一 Breeze TTS 2 = 1204|Fish Audio S2 Pro = 1121|Kokoro 82M = 1060.98|Higgs Audio V3 = 1032|VibeVoice 1.5B = 951|XTTS v2 = 914。

独立英文 Seed-TTS-Eval(VoiceHub/kadirnar,33 模型 × 1088 条,A100 40GB,2026-09-15):Kokoro WER 0.96% 第一、OmniVoice 0.99%、F5-TTS 1.06%、MOSS-TTS 1.23%、CosyVoice3 1.74%、GPT-SoVITS 2.64%、VoxCPM2 3.35%(靠后)。

三条必须知道的英文榜陷阱(会直接误导选型):

  1. Kokoro 英文开源第一梯队,但官方模型卡 language tag 只有 en,中文靠第三方权重(社区报告「口音很重、听不太清」)→ 不能因英文排名高就选它做中文。
  2. GPT-SoVITS-ProPlus 英文 Arena 垫底(27.5%),但中文 SeedTTS 官方 SIM 0.737(真人 0.750) → 英文榜与中文能力可能反相关。
  3. VoxCPM2 英文 3.35%(很靠后),中文 CER 0.97 / SIM 79.5(双优) → 同一模型中英能力差异巨大。

→ 中文只在 CV3-Eval / Seed-TTS-eval(test-zh) 口径比较,并最终自测。

表 2-C:流式能力与首包延迟(实时对话的决定性指标)

方案流式首包延迟(TTFB / TTFP)来源等级备注
Qwen3-TTS-0.6B + vLLM-Omni✅~130ms(RTX 3090 单卡,稳态显存 ~13GB)🟢 LiveTalking 作者实测LiveTalking 官方推荐链路;官方论文称 97ms🟡
Qwen3-TTS(官方 12Hz tokenizer)✅97ms 首包(论文原文 "immediate first-packet emission (97 ms)")🟡 论文12.5Hz / 16 层多码本 + 轻量因果 ConvNet;唯一 sm_120 零 issue
Fish Audio S2 Pro + vLLM-Omni✅~100ms(零样本)/ ~135ms(克隆)@ RTX PRO 6000🟢⚠️ 但许可不可商用
CosyVoice3 + vLLM-Omni✅~195ms(优化后;此前 ~810ms)@ H100🟢 vLLM-Omni commit官方宣称低至 150ms 🟡
MOSS-TTS-Realtime✅TTFB 180ms,RTF 0.51 @ L20🟡Apache-2.0,可商用
IndexTTS-2(Faster 版,未开源)✅中文 395.9ms(chunk=1s)/ 596.1ms(chunk=2s)@ A100🟢 论文需自行复现 TRT/TRT-LLM
IndexTTS-2.5 官方仓库❌—🟢(全文 grep 零命中)只能整句合成 → 不适合实时对话
OmniVoice❌(NAR)—🟡5060 Ti 上 0.6s/5s 音频(≈8× 实时)但非流式
GPT-SoVITS❌RTF 0.028 @4060Ti(整段)🟡极快但非流式
MOSS-TTS-Nano✅🔴 未查到具体 ms—超轻量,边缘设备

表 2-D:数字人框架的 TTS 集成情况(选型实操用)

框架许可原生支持的 TTS可插拔性
LiveTalkingApache-2.0edgetts / gpt-sovits / cosyvoice / fishtts / tencent / doubao / indextts2 / azuretts / qwentts(源码中另有 xtts、omnitts)完全可插拔(registry.py 去中心化注册,自研 TTS 只 ~200 行)
OpenAvatarChatApache-2.0仅 3 个:EdgeTTS / CosyVoice(本地)/ 百炼 CosyVoice(API)模块化但需改 handler
FayGPL-3.0azure / ali / gptsovits / volcano / gptsovits_v3可换
Linly-TalkerMITEdgeTTS / PaddleTTS / GPT-SoVITS(官方推荐) / XTTS / CosyVoice可换
Duix.Avatar不可识别仅 fish-speech-ziming,且配置里 "streaming": false 固定关闭流式弱
AigcPanelApache-2.0CosyVoice-300M/-Instruct / CosyVoice2-0.5b / FishSpeech / IndexTTS / SparkTTS / GPT-SoVITS模型市场式
SoulX-FlashTalk / Ultralight—完全没有 TTS 层(grep "tts" = 0 次)—— 纯音频驱动,需自建链路—

实践结论:LiveTalking 的 TTS 可插拔性最强(9+ 内置后端 + 注册式扩展),这也是它在方案一胜出的又一理由。OpenAvatarChat 只有 3 个后端,若想用 Qwen3-TTS 需自行改 handler。

2026 社区横评(第三方转述,仅供参考,未逐一回溯原始模型卡):掘金 2026 横评给首包延迟 Qwen3-TTS 97ms、CosyVoice2 150ms、Fish S2 <150ms;CSDN《LiveTalking 部署笔记》排序 IndexTTS2(首包 ≈1.2s、8GB)≈ FishTTS(<500ms、3.2GB)> CosyVoice(流式 <150ms、≈6GB)> XTTS > SoVITS/EdgeTTS,并指出 IndexTTS2 的时长控制「对口型同步非常有意义」。

另一份独立第三方筛选(sovgrid.org,2026-05,DGX Spark / GB10 Blackwell 生产环境) 按「多说话人 + 表现力 + 克隆 + 速度控制 + 开源许可 + SM12.1 兼容」筛选后只留三个:VibeVoice、Higgs Audio v2、IndexTTS-2,并提醒「top-of-the-leaderboard for a different use case is not the same as best fit」。


第三部分:RTX 5060 Ti 16GB / sm_120 的关键坑

3.1 最致命的坑:sm_120 编译生态(不是显存)

根因(一句话):消费级 Blackwell(sm_120)只有 MMAv2,没有 tcgen05 / WGMMA / TMEM。所有为大核 Blackwell(sm_100/sm_120a)或 Hopper(sm_90a)写的加速内核,在 5060 Ti 上都无处可跑。这解释了下面全部现象。

坑现象证据影响
FlashAttention-2 无 sm_120 预编译 kernelno kernel image is available for execution on the device;源码编译 nvcc fatal: Unsupported gpu architecture 'compute_120'🟢 Dao-AILab/flash-attention#2168;免编译可用组合见 flash-attn #2016:Python 3.10 + CUDA 12.8 + torch 2.7.1 + flash_attn==2.8.0.post2 --no-build-isolationSoulX-FlashHead / OpenAvatarChat / MOSS-TTS 都要求 flash-attn → 必须自行编译或绕开
FA3 / FA4 对 sm_120 完全无路径FA3 只发 Hopper sm90a + Blackwell-Ultra sm120a 内核🟢SoulX-FlashTalk 的加速就依赖 Hopper 专属 FA3 → sm_120 上无解(叠加其显存门槛,双重不可行)
SageAttention 官方构建无 sm_120 内核dispatch 实际回退到 SM89 内核;超长序列走 triton JIT → GSP 挂死 → GPU 掉总线🟢 本机同型号卡实测(2026-09-14 H3 场景,一夜 4 次掉总线全部走 SageAttention 路径;改用不含 SageAttention 补丁的官方工作流后连续数小时零异常);thu-ml/SageAttention#291、#391FlashHead 的 Pro 模型「实时」明确依赖 SageAttention(官方原文:Pro 实时需 two RTX-5090 with SageAttention)→ 5060 Ti 上 Pro 档基本无望;Lite 档可不用(README 标 SageAttention 为 Optional)
onnxruntime-gpu 版本门槛LivePortrait 硬钉 onnxruntime-gpu==1.18.0(2024 构建,无 sm_120);onnxruntime#27621 报告 Blackwell 上 CUDA EP 静默死锁🟢需 onnxruntime-gpu ≥1.27;LivePortrait / Ditto / 任何 ONNX 路线都要换 wheel
xformers需 PR #1254 之后才支持🟢使用 xformers 的项目注意
torch 必须 ≥2.7 + cu128cu117/cu121/cu124 wheel 不含 sm_120 → 加载即报 no kernel image🟢 本机实测 torch 2.11.0+cu130 arch_list 含 sm_120;官方对 sm_120 仍标 [Prototype]⚠️ 凡把 torch 钉在 <2.7 或 cu117/cu121/cu124 的项目(Wav2Lip、Ultralight、MuseTalk 旧档、LatentSync 的 torch 2.5.1+cu121、Duix.Avatar 的 Docker 镜像),原样在 5060 Ti 上都会报 no kernel image is available。好消息:本机已就绪
libnvrtc-builtins.so 版本错配torch 是 cu130 而系统 CUDA 是 13.1 → 找不到 libnvrtc-builtins.so.13.0🟢 本机 2026-09 实测(H3 场景)启动时注入 LD_LIBRARY_PATH=<venv>/lib/python3.12/site-packages/nvidia/cu13/lib
TensorRT engine 预编译档Ditto 提供的是 ditto_trt_Ampere_Plus 预编译 engine + tensorrt==8.6.1(TRT 8.6.1 不支持 sm_120,需 TRT 10.x)🔵 官方 READMEDitto 必须升 TRT 重转引擎 + 重编 libgrid_sample_3d_plugin.so,或改走 PyTorch 后端

✅ sm_120 风险最低的项目(不碰上述任何内核):

项目为什么安全
LiveTalking依赖仅 torch/av/aiortc 等,无 flash-attn / triton / onnx(本项目实时方案首选的原因)
NanoAvatar官方要求 torch==2.10.0+cu128(原生 sm_120);不依赖 SageAttention / flash-attn;纯 CUDA
SentiAvatar不碰 diffusers/attention 内核,只跑 vLLM(Qwen2-0.5B)
Fay纯 Python 编排层,只要外挂组件不编译 CUDA 算子就免疫

🔴 sm_120 风险最高 / 当前坏的:Duix.Avatar(issue #624 已确认在 Blackwell 报错且无人修)、Ditto(TRT 8.6.1 + Ampere_Plus 引擎)、SoulX-FlashTalk(Hopper FA3)、LivePortrait(onnxruntime 1.18.0)| | Wan-Dancer + sageattention 不兼容 | 社区报告 | 🟢 HF discussion | 相关路线注意 |

3.2 显存核算:16GB 到底怎么切

单卡 16GB 的真实预算是「LLM + TTS + 数字人驱动」三者共享,不是各自独占。

组件轻量档重量档
数字人驱动FlashHead Lite 5.8GB🟢|musetalk 3.9GB(含 PR #612)🟢|wav2lip ~0.2GB🟡|LiteAvatar 2–3GB🟡EchoMimicV3 33.7GB ❌|LatentSync 1.6 18GB ❌
TTSCosyVoice3-0.5B(小)|Qwen3-TTS-0.6B + vLLM-Omni ~13GB⚠️(见下)Fish S2 Pro 4B ⚠️
LLM本机已实测:qwen3.8-27b@q3_k_xl 12.24GiB / 16K 上下文 / 29.9 tok/s(满配占 15.3GB)→ 与数字人驱动互斥—
推荐 LLM(要共存)qwen3.8-9b-heretic-nvfp4 5.18GB / 256K 上下文 / ~70 tok/s(本机实测)✅—

⚠️ vLLM-Omni 的显存陷阱:LiveTalking 作者实测 Qwen3-TTS-0.6B 在 3090 上稳态占 ~13GB —— 对 0.6B 模型来说这极不合理,说明其中绝大部分是 vLLM 的 KV Cache / 显存池预分配(默认 gpu_memory_utilization 偏大)。在 16GB 卡上必须显式下调 --gpu-memory-utilization(建议 0.35~0.45),否则会被预分配到 OOM。这是本报告推断(🟡 推算),但机制明确,落地时务必先小值试。

3.3 其他坑

3.3.0 ⚠️ 最容易踩的整合坑:TTS 框架「照抄 requirements」= 在 5060 Ti 上必挂

核心结论:没有任何 TTS 框架「天生不支持」sm_120,问题全部来自「整合包 / requirements 钉死旧 torch(≤2.3/2.4,只编译到 sm_90)」→ 换 torch ≥2.7 + cu128/cu130 基本都能解。

框架Issue症状与解法
CosyVoiceissue #1815 直接点名 RTX 5060 Ti按官方 requirements 装(torch 2.3.1,只到 sm_90)报:sm_120 … supports up to sm_90. Note: RTX 50-series cards require modern CUDA toolkits and PyTorch versions not covered by the current requirements → 升 torch 2.7/2.8 + cu128 可解。照抄官方 requirements 在 5060 Ti 上必挂。
GPT-SoVITS#2205 / #2514 / #2393 / #2394在 5060 Ti 上「GPT 模型能训、SoVITS 模型训练报错」(卡 s2_train.py 的 mp.spawn,DDP 修复 PR #2774 仍开着)→ 只做推理不受影响(本项目正是推理)
Fish-Speech S2 Pro上游 vLLM-Omni 配方在 sm_120 上确实是坏的「FA3 ships kernels only for Hopper sm90a / Blackwell-Ultra sm120a, SGLang blocked on sm_120」→ 用第三方 Genesis1231/fish-s2-rtx(vLLM-Omni 0.22 + torch 2.11 + cu130 + sm_120 kernels);⚠️ 必须关掉 prefix caching,否则间歇性产生空音频
ChatTTS-ui#2905070 Ti 同样 sm_120 报错
flash-attnissue #2016 给出免编译可用组合Python 3.10 + CUDA 12.8 + torch 2.7.1,然后 pip install flash_attn==2.8.0.post2 torch==2.7.1 --no-build-isolation

3.3.1 ⚠️ LiveTalking 的硬编码音频约束(自定义 TTS 接入的硬门槛)

已核对源码 tts/base_tts.py:

#self.fps = opt.fps   # 20 ms per frame
self.sample_rate = 16000
self.chunk = self.sample_rate // (opt.fps*2)   # 320 samples per chunk (20ms)

→ LiveTalking 要求 TTS 输出 16kHz 单声道 int16、按 20ms(320 样本)分块;参考音频也要求「wav, 16kHz, mono」。

而多数 TTS 模型原生采样率并不是 16kHz:IndexTTS2.5 = 22.05k、OmniVoice/Kokoro/ChatTTS = 24k、Fish Speech S2 Pro = 44.1k、VoxCPM2/GPT-SoVITS v4 = 48k。 → 接入前必须重采样。LiveTalking 内置插件已各自处理(如 tts/omnitts.py 用 omni_tts_src_sr 声明源采样率 + resampy 统一降到 16k);自研 TTS 必须自己做完这一步。 → 纯音频驱动项目同样统一到 16kHz(SoulX-FlashTalk 配置 sample_rate: 16000;Ultralight README「音频采样率需要是 16000」)。

好消息:这只是一次 ffmpeg/resampy 重采样,不是架构障碍。

3.3.2 其余坑


第四部分:16GB 单卡可跑的「实时交互数字人最小可行组合」Top 2

共同前提:Ubuntu + 驱动 610.43.02 + PyTorch cu128/cu130(含 sm_120) + 不使用 SageAttention / FlashAttention-2 预编译 wheel(用 eager/SDPA 或自行编译)+ vLLM-Omni 下调 gpu-memory-utilization。

先看这张「谁能真跑」的判定(已用 peer-review 论文 + 第三方横评双重核对):

项目16GB 可跑真·实时流式结论
SoulX-FlashHead-1.3B (Lite)✅ 5,763 MiB 🟢✅ 96 FPS 🟢(论文自报 H20;官方称单 4090)「既小又真流式」的画质档首选
LiveTalking(wav2lip/musetalk)✅ ~0.2–3.9GB 🟢✅ 流式 + 可打断(wav2lip 60FPS@3060)🟡sm_120 最安全、生态最成熟
NanoAvatar✅ 仅 834 MiB 🟢(4090 量化版)✅ 首帧 18ms(4090)/ 103ms(端侧)🟢;官方称流式下 ~0.3s 起说显存/延迟双料冠军,但口型权重 CC BY-NC 不可商用 ⚠️
Ditto✅ 推断 ~2.4GB✅ 45.04 FPS 🟢(FlashHead 论文 Table 3,同行评审)可行,但 TRT 8.6.1 不支持 sm_120 ⚠️
AvatarForcing(快手 Kling)⚠️ 权重 ~19GB,🔴 无实机报告✅ 一步流式 34 ms/帧 🟡(硬件未标注)技术最新,待实测
EchoMimicV3-Flash✅ 官方称 12G(横评实测 33.7GB ⚠️ 冲突)❌ 非流式(partial_video_length 分段生成)画质优先,但不适合实时对话
MuseTalk 1.5✅ 同款卡实测 ~3.6GB 🟢❌ 同款卡实测仅 ≈5.8 FPS,非实时;官方确认不支持音频流式不要再「按官方 30fps+@V100 以为它实时」
Duix.Avatar🔴 sm_120 上当前坏的(issue #624)—排除
SoulX-FlashTalk-14B / LiveAvatar / Wan2.2-S2V / LongCat-1.5 / Wan-Dancer❌ 40–86GB✅无解(与量化无关,依赖多卡序列并行)

🥇 方案一:LiveTalking + vLLM-Omni(Qwen3-TTS-0.6B) + 小 LLM ——「最稳、最快能跑通、生态最成熟」

层选型理由
驱动框架LiveTalking(--model wav2lip,追求画质用 musetalk)9.6k star、2026-09 仍活跃、Apache-2.0 可商用、依赖最轻(无 flash-attn / triton / onnx 要求)、原生支持 WebRTC/RTMP/虚拟摄像头、支持打断与全身拼接
数字人模型wav2lip256(~200MB 显存,3060 即 60 FPS)🟡;画质优先改 musetalk(~3.9GB 含 PR #612,3080Ti 42 FPS / 4090 72 FPS)🟡显存占用几乎可忽略,给 TTS+LLM 留满预算
TTSvLLM-Omni + Qwen/Qwen3-TTS-12Hz-0.6B-CustomVoice(--tts omnitts)🟢 作者实测首包 ~130ms(官方论文称 97ms,全场最低);Apache-2.0(HF license:apache-2.0/gated:False 已确认);本次调研中唯一「sm_120 零 issue」的 TTS 模型;LiveTalking 官方已内置 tts/omnitts.py 适配器(<200 行,OpenAI 兼容 /v1/audio/speech,stream=True)
LLM本地 qwen3.8-9b-heretic-nvfp4(5.18GB / ~70 tok/s,本机实测)或云端 API27B 档满配占 15.3GB,与数字人/TTS 无法共存;9B 档留出余量
显存预算0.2–3.9(驱动)+ ~5(TTS,需调低 vLLM 池)+ ~5.2(LLM)≈ 10.5–14GB✅ 落在 16GB 内
端到端延迟估算TTS 首包 130ms + 口型推理(wav2lip 60FPS→16.7ms/帧)+ WebRTC 传输 ≈ 首响 0.3–0.6s(🟡 推算,非实测)—

为什么排第一:

  1. 唯一一个每个环节都有 2026 年真实实测数字、且许可全部可商用、且不依赖任何 sm_120 编译难题的组合(LiveTalking 依赖里没有 flash-attn / triton / onnx)。
  2. TTS 可插拔性最强:内置 9+ 后端 + registry.py 注册式扩展,自研 TTS 适配器只 ~200 行。
  3. OmniTTS 显存/延迟对比也支持这个选择:官方口径 Qwen3-TTS 12G 是其中最省的(VoxCPM2 13G、CosyVoice 14G、IndexTTS 17G、Fish 18G),只有它能在 16GB 上给数字人模型留下余量;且 IndexTTS 官方口径「延时 4s」根本不能用于实时对话。
  4. 避开了 CosyVoice 的 sm_120 陷阱(见 §3.3.0)——若改用 CosyVoice 后端,必须先升 torch ≥2.7+cu128。

⚠️ 自研 TTS 接入注意:LiveTalking 硬编码要求 16kHz 单声道 int16 + 20ms(320 样本)分块,多数模型原生 22–48kHz,必须自行重采样(见 §3.3.1)。

可复现命令(已核对 LiveTalking config.py / tts/omnitts.py 源码):

# 1) 起 vLLM-Omni TTS 服务(注意下调 gpu-memory-utilization 给数字人+LLM 留显存)
vllm serve Qwen/Qwen3-TTS-12Hz-0.6B-CustomVoice --omni \
     --gpu-memory-utilization 0.35 --port 8091
# 2) 起 LiveTalking,用 omnitts 插件指向上面这个 OpenAI 兼容端点
python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1 \
     --tts omnitts --TTS_SERVER http://127.0.0.1:8091 --REF_FILE <音色名>

已核实:--tts 合法值含 edgetts/gpt-sovits/cosyvoice/fishtts/tencent/doubao/indextts2/azuretts/qwentts;omnitts 为独立注册的 vLLM-Omni 适配器(tts/omnitts.py,走 POST /v1/audio/speech + stream=True);另有 --tts qwentts 走阿里云 DashScope 实时 WebSocket(需 DASHSCOPE_API_KEY,非本地)。

🥈 方案二:OpenAvatarChat + SoulX-FlashHead-1.3B + Qwen3-TTS / CosyVoice3 ——「画质/自然度优先、且是 2026 最新技术栈」

层选型理由
驱动框架OpenAvatarChat v0.6.0(2026.04)Apache-2.0;v0.6.0 已接入 SoulX-FlashHead;所有数字人后端均支持手动 + 双工(barge-in)打断;官方称平均响应 2.2s;预置配置 chat_with_openai_compatible_bailian_cosyvoice_flashhead_duplex.yaml 开箱即用
数字人模型SoulX-FlashHead-1.3B(Model_Lite)🟢 峰值 5,763 MiB —— 第三方横评认定的「16GB 以下唯一完全适配的全功能生成器」;Apache-2.0;96 FPS @ 单卡;热启动 0.19 s/块;无限时长流式;有 ComfyUI 原生节点 + HuggingFace 在线 Demo。💡 优化点:官方权重是 F32(已实测 843 张量全 F32),转 fp16 后权重从 6.1GB 降到 ~3GB,能再挤出 3GB 给 TTS/LLM
TTS首选 Qwen3-TTS(自接 vLLM-Omni 端点);或 Fun-CosyVoice3-0.5B-2512(OpenAvatarChat 内置后端,改动最小)Qwen3-TTS:Apache-2.0 + 97ms + 唯一 sm_120 零 issue(但 OpenAvatarChat 只有 EdgeTTS/CosyVoice 两个内置后端,需自行改 handler)。CosyVoice3:Apache-2.0 代码+权重零法律风险、Bi-Streaming 宣称 150ms、第三方 CV3-Eval 中文 SS 80.01 全表最高、vLLM-Omni 路径 TTFP 优化到 ~195ms——但必须先升 torch ≥2.7+cu128(issue #1815 点名 5060 Ti)
LLM同上(百炼 API 或本地 9B 档)OpenAvatarChat 默认走 OpenAI 兼容 API
显存预算3–5.8(FlashHead Lite,转 fp16 后 ~3GB)+ TTS + LLM ≈ 10–15GB⚠️ 偏紧,需下调 vLLM 池
预期延迟官方 2.2s 平均响应(🟡,含 ASR+LLM+TTS+渲染全链路)比方案一慢,但画面质量与自然度显著更好

方案二的三个风险:① 需要 flash-attn(sm_120 无预编译 wheel,必须自行编译;可试 issue #2016 的免编译组合 Python 3.10 + CUDA 12.8 + torch 2.7.1 + flash_attn==2.8.0.post2);② OpenAvatarChat 钉 PyTorch 2.4.1+cu124(不含 sm_120 kernel),需手工升版且会与 install.py 版本解析冲突;③ 若选 CosyVoice3 后端,必须先升 torch ≥2.7+cu128,否则照抄 requirements 在 5060 Ti 上必挂。建议先在方案一跑通,再迁移到方案二。

备选与不推荐


附录 A:许可速查(商用可用性)

✅ 可自由商用⚠️ 有条件/需注意❌ 不可商用
LiveTalking(Apache-2.0)<br>OpenAvatarChat(Apache-2.0)<br>SoulX-FlashHead(Apache-2.0)<br>SoulX-FlashTalk(Apache-2.0)<br>AvatarForcing(Apache-2.0)<br>LatentSync(Apache-2.0)<br>EchoMimicV3(Apache-2.0)<br>Ditto(Apache-2.0)<br>LiveAvatar(Apache-2.0)<br>LongCat-Video-Avatar(MIT)<br>AigcPanel(Apache-2.0)<br>Qwen3-TTS(Apache-2.0)<br>CosyVoice3(Apache-2.0)<br>VoxCPM2(Apache-2.0)<br>FireRedTTS-2(Apache-2.0)<br>Kokoro(Apache-2.0)<br>MegaTTS3(Apache-2.0)<br>GPT-SoVITS(MIT)<br>F5-TTS(MIT)<br>LongCat-AudioDiT(MIT)<br>MOSS-TTS(Apache-2.0)IndexTTS-2.5(bilibili 许可,>1亿 MAU 或 >10亿营收需授权)<br>AVTR-1(权重 <1000 万美元可商用;Renderer/Streamer 仅非商用)<br>NanoAvatar(代码 MIT + 中文 HuBERT MIT,但口型权重 CC BY-NC 4.0)<br>LivePortrait(代码 MIT,InsightFace 模型非商用)<br>MuseTalk(README 称可商用,GitHub 字段 NOASSERTION)<br>GLM-TTS(GitHub Apache-2.0 vs HF mit 冲突)<br>Ultralight(许可未明确)<br>Duix.Avatar(MAU/营收门槛 + 5 项义务;LICENSE 与 README 口径差 100 倍)<br>Hallo4 / FantasyTalking2(无明确许可)<br>Fay(GPL-3.0 传染)Wav2Lip(LRS2 训练,明确禁止)<br>ChatTTS(AGPL-3.0 + CC-BY-NC)<br>OmniVoice 权重(CC-BY-NC)<br>Fish Audio S2 Pro(Research License,含内部自用)<br>Sonic(CC BY-NC-SA 4.0)<br>FLOAT(CC BY-NC-ND 4.0)<br>NanoAvatar 口型权重(CC BY-NC 4.0)<br>SentiAvatar(CC BY-NC-SA 4.0)<br>Spark-TTS 权重(CC-BY-NC-SA-4.0,尽管 GitHub 写 Apache-2.0)<br>Higgs Audio v3(明确非商用)<br>VibeVoice-TTS-1.5B(微软已下架并标 Disabled)

附录 B:来源清单

数字人驱动框架

TTS / 语音克隆

sm_120 / Blackwell 兼容性

第三方榜单

方法论提示(对后续调研有用):本机 github.com 的 HTML 后段不可达、raw.githubusercontent.com 频繁超时,jsDelivr 镜像(https://cdn.jsdelivr.net/gh/<owner>/<repo>@<branch>/README.md)全程稳定,是可靠的 raw 替代;HF 官方域名不通,hf-mirror.com 可用;GitHub REST API 会限流,star/license/最后提交可改用 shields.io 徽章 JSON。

本机/项目内部资料


附:本次调研的局限与待办

  1. 若干关键数字未找到实测(已在正文标 🔴):LiveTalking 首帧延迟、SoulX-FlashHead 首帧延迟、AvatarForcing 在 16GB 上的实机报告、EchoMimicV3-Flash 在 16GB 上的真实峰值、MuseTalk 在 sm_120 上的 FPS、LiveTalking 在 sm_120 上的兼容性报告(GitHub 搜索 sm_120 命中 0 条 = 无已知问题,但也不等于已验证)。IndexTTS / F5-TTS / MegaTTS3 / MOSS-TTS 的 sm_120 实测均未查到(index-tts #242「能用 RTX 50 系跑吗?」两次抓取超时)。
  2. 多个官方宣称与第三方实测冲突,需实机裁决:SoulX-FlashHead 96 FPS 的硬件(README/摘要写 RTX 4090 vs 论文 Evaluation 写 H20)、EchoMimicV3-Flash(官方 12GB vs 横评 33.7GB)、Fish Audio S2 Pro 中文 WER(宣称 0.54% vs 第三方 3.62%)、vLLM-Omni 上 0.6B 模型显存(作者实测 ~13GB vs OmniTTS 文档口径 Qwen3-TTS 12G / IndexTTS 17G / Fish 18G)、Duix.Avatar 许可证(LICENSE 1000 MAU vs README 10 万用户,差 100 倍)。
  3. 已澄清的「不存在 / 非开源」误传(避免后续重复踩坑):OmniHuman-1.5 完全非开源(仅 API);MuseTalk 2.0 不存在;LatentSync 2.x 不存在;HumanAIGC/OpenAvatarChat 与 Korvo-AI/Linly-Talker 这两个仓库路径不存在(正确路径为 HumanAIGC-Engineering/OpenAvatarChat、Kedreamix/Linly-Talker);duixcom/Duix.Heygem 已改名为 duixcom/Duix.Avatar。
  4. CosyVoice 官方 demo 页已下线:README 引用的 https://funaudiollm.github.io/cosyvoice3/ 实测返回 404(cosyvoice2 页同样 404)—— 不影响权重可用性,但说明文档维护滞后。
  5. 建议的实机验证顺序:① 单独跑通 vLLM-Omni + Qwen3-TTS-0.6B,记录实际 TTFB 与峰值显存(重点验证 --gpu-memory-utilization 对 16GB 的影响);② 单独跑通 LiveTalking wav2lip(确认 PR #612 已在所用版本);③ 两者合跑,观察是否 OOM;④ 再加 LLM;⑤ 最后试方案二(FlashHead/CosyVoice3,注意 CosyVoice 必须先升 torch ≥2.7+cu128,否则照抄 requirements 在 5060 Ti 上必挂)。
  6. 未逐一深挖的 2026 候选:Step-Audio 2、Higgs Audio v2、Sesame CSM 等 —— 其中 sovgrid 独立筛选把 VibeVoice / Higgs Audio v2 / IndexTTS-2 列为仅有的三个合格项,但本报告后续已把 VibeVoice-TTS-1.5B(微软已下架)与 Higgs Audio v3(明确非商用 + 需 ≥24GB)排除,值得补测的只剩 IndexTTS-2。数字人侧 LingCast / Super-Star / Linly-Talker-Stream / NanoAvatar(仅知显存与延迟,未测中文口型质量) 亦可后续跟进。
  7. 📌 给「离线口播」方向的一条重要补充(本报告聚焦实时,但同目录另有离线项目):LongCat-AudioDiT(美团,MIT,3.83B)中文 SIM 81.8 为全场最高、CER 1.09%,且非流式在离线场景不是缺点 —— 离线口播应把它与 IndexTTS-2.5(官方 6GB、情绪/时长可控)并列为优先验证项,退路 VoxCPM2。唯一待验:3.83B F32 ≈15GB+ 能否进 16GB(转 bf16 后音质待验)。
  8. 验证纪律(血的教训):不要只信 README 的硬件声明。落地前先跑 python -c "import torch;print(torch.cuda.get_device_capability())"(5060 Ti 应得 (12, 0)),再跑官方最小推理样例 —— Duix.Avatar issue #624 的教训就是「README 声称支持 50 系 ≠ 实际可用」。
下载此文件