【无标题】

端侧离线语音交互系统:全链路实现与性能实测

本文记录在 RDK S100P 上落地一套全离线语音交互系统的过程和实测结果。设备在不联网的情况下,完成从唤醒、识别、理解到应答、播报的完整语音对话,整条链路用 ROS2 做了工程化封装。


一、为什么做端侧离线

服务机器人、车载、嵌入式设备很多时候工作在弱网甚至无网环境,而云端语音方案一旦断网就完全不可用。把 ASR(识别)、LLM(理解与对话)、TTS(合成)全部放到设备本地离线运行,主要出于三点考虑:

  • 断网也能正常工作,不依赖网络;
  • 本地直接计算,没有网络往返,延迟更低;
  • 语音数据不离开设备,隐私可控。

前提是模型要足够小、足够快,能在端侧 CPU 上实时跑起来------这也是整条链路工程优化的主要目标。


二、系统全貌与实现流程

系统跑在 RDK S100P 上,全部推理在本地完成,不需要独立 GPU、不需要联网。一次完整对话经过五个环节:

复制代码
语音唤醒 + 声源定位  →  ASR 离线识别  →  意图理解(规则 / LLM 双路)
        →  应答生成(控制执行 / LLM 对话)  →  流式 TTS 播报(支持打断)
环节 做什么
唤醒 + 定位 麦克风阵列做全向唤醒词检测,并估计声源方向,使设备朝向说话人
ASR 识别 端点检测后截取有效语音,离线转写为文本
意图理解 明确指令走规则(快、确定);开放对话走端侧 LLM(灵活)
应答生成 控制类直接执行;对话类由端侧 LLM 流式生成
TTS 播报 流式分段合成、边生成边播;播报中可被用户打断

图 1:系统架构 / 数据流示意

![系统架构示意](./assets/architecture.png)


三、ROS2 工程化封装

整条链路用 ROS2 封装成多节点流水线:每个环节是一个独立节点,节点之间通过消息总线通信;识别、大模型、合成这些重计算下沉为常驻服务,节点本身只负责编排和时序。

这样做的好处:

  • 各环节解耦,可以独立开发、独立替换;
  • 单个节点崩溃能独立重启,不影响整条链路;
  • 重推理常驻,模型只加载一次,多轮对话不重复加载;
  • 唤醒、录音、播报、打断(barge-in)的时序由消息机制统一协调。

四、各环节性能实测

4.1 ASR · 语音识别

经过量化和工程优化,ASR 在 S100P 的 CPU 上跑得远快于实时:

指标 实测结果
实时率 RTF ≈ 0.06(1 秒音频约 60ms 算完,约 16× 实时)
单句识别耗时 120 -- 360 ms(随句长波动)
模型体积 压缩约 3.6×(端侧加载快、占用低)
中文识别准确率 量化前后基本无损(量化无明显劣化)

RTF(实时率)= 处理耗时 ÷ 音频时长,小于 1 才跟得上实时。0.06 意味着识别几乎瞬时完成,延迟预算可以基本都留给后面的理解和合成。

4.2 意图理解 · 规则 / LLM 双路

路径 处理对象 准确率 / 延迟
规则匹配 明确控制指令(如前进、停止等) 零延迟、确定性触发
LLM 意图 开放、模糊、自由表达的意图 约 92%(内部测试集实测)

控制指令需要即时、确定,用规则零延迟处理;规则覆盖不到的开放表达再交给 LLM。

4.3 LLM · 场景化对话回复

LLM 采用地平线 BPU 支持的 7B 量化大模型,端侧本地推理。在目标场景的问答、寒暄、信息查询中:

指标 实测结果
中文场景回复准确率 约 92%(内部测试集实测)
回复方式 流式生成,边生成边合成播报

一个实测观察:输入清晰时模型回复切题、可用;端到端体验的主要短板其实在识别侧------远场、口音造成 ASR 听错,出现「听错了再答」,而不是 LLM 本身的问题。后续优化重点会放在拾音上。

4.4 TTS · 语音合成

文本长度 合成耗时 音频时长 RTF
短(2 字) 1070 ms 947 ms 1.13
中(11 字) 2451 ms 2480 ms 0.99
长(18 字) 4304 ms 4028 ms 1.07
更长(28 字) 5681 ms 5781 ms 0.98

TTS 的 RTF 在 1.0 附近(0.98 -- 1.13),合成速度约等于实时,长句甚至略快于实时。RTF≈1 看着不快,但配合流式分段(首段只合成开头几个字、不等全文),首字延迟会低很多。

4.5 端到端延迟

指标 非流式 流式优化后
说完话 → 首字出声 ~5 s ~3 s

流式管线的做法是:LLM 边生成、首段尽早切出、立刻送去合成播报。这样首字延迟从约 5 秒降到约 3 秒,对话节奏接近正常交流。


五、成果一览

环节 关键指标 实测
ASR 实时率 RTF ≈ 0.06
ASR 模型压缩 ≈ 3.6×
意图 规则路径 零延迟、确定
意图 LLM 准确率 ≈ 92%
LLM 中文场景回复准确率 ≈ 92%
TTS 合成实时率 RTF ≈ 1.0
端到端 说完话 → 首字 ~3 s

中文交互演示视频

中文语音交互

英文交互演示视频

英文语音交互演示


六、小结

整套系统在 RDK S100P 上完全离线跑通了「唤醒 → 识别 → 理解 → 应答 → 播报」的语音对话闭环:ASR 实时率约 0.06、规则意图零延迟、意图和场景对话准确率约 92%、TTS 接近实时、端到端首字约 3 秒。配合 ROS2 的多节点封装,整个系统在工程上也比较好维护和迭代。

对没有网络的使用场景来说,端侧离线方案的意义在于不依赖云、不怕断网,本地就能完成低延迟、隐私可控的语音交互。

相关推荐
送外卖的工程师1 天前
STM32图书馆环境监测系统(机智云)
人工智能·语音识别
末世灯光2 天前
ICLR 2026|EmotionThinker:让语音情感识别给出有依据的解释
大模型·情感识别·情感计算
byte轻骑兵2 天前
【LMP】规范精讲[10]: 语音专线开线记——SCO 固定占座与 eSCO 限时重传
人工智能·人机交互·lmp·蓝牙链路管理·蓝牙外设
DevOps老兵2 天前
Transformer拆解01:Transformer为什么出现,RNN到底卡在哪里
rnn·深度学习·大模型·transformer·注意力机制
合尘猫2 天前
6GB 笔记本本地跑 Z-Image Turbo:一次从 cu121 到 cu130 的踩坑记录
人工智能·ai·大模型·本地部署
赤龙ERP2 天前
ERP周报:连接器开闸、国产GPU进场与智能工厂253家
数据库·人工智能·大模型·rpa·erp·企业数字化·builderpattern
dozenyaoyida2 天前
AI与大模型新闻日报 | 2026-10-30
人工智能·ai·chatgpt·大模型·新闻
万岳软件开发小城2 天前
AI数字人系统源码如何实现批量视频生成?任务队列与自动化生产流程解析
人工智能·自动化·语音识别·ai数字人小程序·ai数字人系统源码·ai数字人软件开发·ai数字人平台开发
学IT的周星星3 天前
LangGraph:用「流程图」的方式编排 Agent
数据库·人工智能·大模型·llm·流程图·agent
yz_aiks3 天前
chrome-use 使用教程:让 Claude Code 操控已登录的 Chrome(禅道、ONES 实测)
chrome·自动化·大模型·ai agent