TT Lab
博客

한국어 English 日本語 中文

开始
博客

博客

制作实时语音对话应用时的 NVIDIA 开源工具:Nemotron 语音代理、PersonaPlex、NeMo

状态:草稿(2026-10-07 更新),这是一篇调研文章。本文内容基于文档,实际运行的结果仅引用于 第 20 篇中的引用部分(Magpie 韩语与 NeMo 代码的分词器映射)。 以下事实是通过阅读各个项目的 GitHub 仓库和 Hugging Face 模型卡整理得出的。由于经过了网页内容摘要工具的处理,数字和许可协议声明请在 撰写前重新核对原文。请先阅读文末的“未确认事项”。 编写规则:以实测数据为基础,无法测量的标注为“未实测”。

目录

1. 结论先行

如果要制作韩语实时对话应用,就目前确认的范围来看, 将语音识别(ASR)、LLM 和语音合成(TTS)串联起来的方式是正确的。原因在于支持韩语的 NVIDIA 开源模型恰好位于该方式的两个组件中。

候选 结构 韩语 一句话评价
Nemotron Voice Agent 蓝图 ASR → LLM → TTS(Pipecat) 视组件而定(见下表) 最适合作为起点
Nemotron 3.5 ASR Streaming 0.6B 语音识别组件 支持 ko-KR 韩语实时识别的核心组件
Magpie TTS Multilingual 语音合成组件 支持 ko 韩语语音输出的核心组件
PersonaPlex-7B 单模型同时听和说(全双工) 仅限英语 无法用于韩语应用,用于学习结构
NeMo voice_agent 示例 ASR + LLM + TTS 示例 仅限英语 理解结构的绝佳示例

2. 两种结构

2.1 级联:分为听、想、说三个阶段

麦克风 → 语音活动检测(VAD)与发言结束判断 → ASR(语音转文字)→ LLM(生成回答文本)→ TTS(文字转语音)→ 扬声器。

2.2 全双工:单个模型同时听和说

PersonaPlex 采用的就是这种方式。由于单个模型在接收连续音频输入的同时输出语音,因此打断、应和以及快速的对话交互会非常自然。PersonaPlex 论文(arXiv 2602.06053,表 6)报告的 Full-Duplex-Bench 延迟为:对话交互约 0.170 秒,用户打断时的响应约 0.240 秒(这是英文模型的论文数据,模型卡因需要访问权限而未能打开)。

3. 候选方案整理

3.1 Nemotron Voice Agent 蓝图

NVIDIA-AI-Blueprints/nemotron-voice-agent是 NVIDIA 公开的参考实现。

3.2 Nemotron 3.5 ASR Streaming 0.6B(语音识别)

模型卡相关内容。

3.3 Magpie TTS Multilingual(语音合成)

模型卡相关内容。

3.4 PersonaPlex-7B

GitHub与 模型卡相关内容。

3.5 NeMo voice_agent 示例

NVIDIA-NeMo/Speech 示例是一个将 Hugging Face LLM 与 NeMo 语音识别和语音合成相结合的对话代理。语音识别可在 Parakeet 实时模型(默认)和 Nemotron 流式变体中选择,语音合成可在 Kokoro-82M 到 FastPitch-HiFiGAN 之间选择。需要一张 GPU,9B LLM 建议 21GB VRAM,4B LLM 建议 13GB VRAM。 目前仅支持英语输入输出。

4. 在消费级 GPU 上的可行性

作者的实验环境 GPU 是 8GB 级笔记本 GPU 和 24GB 级消费级 GPU。蓝图(Blueprint)的单 GPU 配置文件需要 28GiB 以上的 VRAM ,因此任何单张 GPU 都无法直接匹配。不过,由于此需求量对应的是搭载 30B 级 LLM 的默认配置,如果拆分组件,情况可能会有所不同。

组件 大小 放入 8GB GPU 的可能性
Nemotron 3.5 ASR 约 0.6B 可放入(实测,第 20 篇): 模型加载后 GPU 内存约 5,078MiB(含运行环境开销),实时系数中位数为 0.050
Magpie TTS 约 364M(GGUF 569MB) 可放入(实测,第 20 篇): 在上述 ASR 的基础上仅多使用约 750MiB,两者合计 5,832MiB,实时系数中位数为 0.466(韩语需要第 20 篇中提及的一些变通方法)
LLM 小型模型 可以使用 vLLM 等单独提供服务的小型模型来代替

表中 ASR 和 TTS 这两行已替换为第 20 篇中直接在 8GB 级 GPU 上加载测得的值。 连同 LLM 一起加载时的 VRAM 以及连接三个组件的整体延迟仍未测量(未实测)。 据说蓝图提供了兼容 OpenAI Realtime 的 WebSocket 网关,因此连接现有 LLM 服务器的方法也值得验证(未测试)。

5. 应用设计草案(未测试)

브라우저(마이크, 스피커)
   │  WebSocket 또는 WebRTC
   ▼
Pipecat 파이프라인
   ├─ VAD + 발화 종료 판단
   ├─ ASR : Nemotron 3.5 ASR Streaming (ko-KR)
   ├─ LLM : vLLM 으로 서빙하는 소형 모델
   └─ TTS : Magpie TTS (ko)
   │  끼어들기가 감지되면 TTS 재생과 LLM 생성을 중단
   ▼
스피커

6. 实测计划

这是将文章中整理的内容转化为数字的顺序。将在 8GB 级 GPU 上使用临时 Pod 进行。

  1. ASR 单独测试:使用韩语语音样本测量实时系数(处理时间与音频长度之比)、不同块大小(Chunk size)下的延迟以及 VRAM 使用量。
  2. TTS 单独测试:使用韩语句子测量到第一段音频的时间以及 VRAM 使用量。
  3. 连接三个组件的端到端延迟以及打断响应时间。
  4. 韩语识别准确率:虽然卡片中有韩语 CER(FLEURS),但我们需要用自己环境中的语音再次确认,因此通过自制的少量测试句子进行确认,并一并指出样本较小的局限性。

7. 面试可能问到的问题

8. 常见误解

未确认的事项

参考资料

确认的版本和日期

基于 2026-10-05。Nemotron Voice Agent 蓝图 v2.2.0(2026-09-23)、PersonaPlex-7B-v1、Nemotron 3.5 ASR Streaming 0.6B、Magpie TTS Multilingual 357m。

登录后即可点赞

评论

还没有评论。

登录后即可发表评论