SY.
← 返回项目

LLM Voice Flow

端侧离线智能语音交互系统

基于 RK3576 NPU 和 C++ 构建的端侧离线语音交互系统,实现从语音识别、LLM 推理到语音合成的低延迟闭环。

类型
端侧语音助手
周期
2025.03 - 2025.06
核心模块
ASR / RKLLM / TTS
技术栈
C++ / ZeroMQ / 端侧部署 / 多线程 / ASR
端侧离线智能语音交互系统 项目截图

Overview

项目概览

LLM Voice Flow 是一个面向嵌入式设备的端侧离线智能语音交互系统,基于 RK3576 NPU 和 C++ 构建,集成流式 ASR、DeepSeek 大模型推理和 TTS 语音合成模块。 系统采用模块化架构,将 ASR、LLM 和 TTS 拆分为独立组件,并通过封装 ZeroMQ 的标准化接口完成模块间通信,实现从语音输入、语义理解到语音输出的完整闭环。

<4s语音输入到输出
↓50%首响应时延
3核心推理模块

Goal

设计目标

构建一套可在 RK3576 等嵌入式设备上离线运行的智能语音交互系统,在不依赖云端服务的情况下完成语音识别、大模型推理和语音合成,实现低延迟、可扩展的端侧 AI 交互体验。

Approach

架构思路

系统采用 ASR → LLM → TTS 的模块化流水线架构。ASR 模块负责将用户语音实时转写为文本,LLM 模块负责在端侧完成语义理解与回复生成,TTS 模块负责将回复内容合成为语音输出。各模块通过 ZeroMQ 进行松耦合通信,既保证了系统的可维护性,也方便后续替换模型或扩展新的推理模块。

Architecture

项目架构

Microphone
Streaming ASR
RKLLM
TTS 双缓冲队列
Speaker

Capabilities

核心能力

完整端侧系统

与常见的云端语音助手不同,本项目将 ASR、LLM 和 TTS 全部集成到端侧设备中运行,减少对网络环境和云服务的依赖,更适合隐私敏感、弱网或离线场景。

模块化架构设计

系统采用模块化架构,将语音识别、语言模型推理和语音合成拆分为独立服务,通过 ZeroMQ 进行进程间通信,提升了系统的可维护性和可扩展性。

低延迟链路优化

针对语音交互场景的实时性要求,系统引入流式 ASR 和 TTS 双缓冲队列,降低用户从说话到听到回答之间的等待时间。

Difficulties

项目难点

1

ASR、LLM、TTS 多模块链路集成复杂

难点:完整语音交互并不是单一模型推理,而是由语音识别、文本理解、回复生成和语音合成多个环节组成。每个模块的输入输出格式、运行方式和响应时间都不同,如何把这些模块稳定串联成一条完整链路,是系统集成上的主要难点。

解决方式:将整体流程拆分为 ASR、LLM 和 TTS 三个核心模块,并通过统一的数据接口完成模块间的数据传递,使语音输入能够依次经过识别、推理和合成,最终形成完整的语音交互闭环。

2

低延迟语音交互优化

难点:语音交互对实时性要求较高,如果每个环节都采用串行阻塞方式处理,用户会明显感受到等待延迟。尤其是在端侧环境下,ASR 识别、LLM 推理和 TTS 合成都可能成为响应瓶颈。

解决方式:通过流式 ASR 减少语音识别阶段的等待时间,并在 TTS 侧引入双缓冲队列,使文本生成、语音合成和语音播放能够更加平滑地衔接,从而降低从用户说话到系统回复之间的端到端延迟。

3

模块间通信与系统解耦

难点:如果 ASR、LLM 和 TTS 模块之间直接通过函数调用强绑定,后续替换模型、调整推理后端或单独调试某个模块都会比较困难。对于一个多模块 AI 系统来说,如何降低耦合度、保证模块间通信稳定,是架构设计上的重要难点。

解决方式:项目通过封装 ZeroMQ 通信协议,为不同模块提供标准化通信接口,使各模块可以独立运行、独立调试和独立替换,提高了系统的可维护性和扩展性。