在实时语音与多模态交互的应用场景中,用户更在意“说了就有回应”的体验:端到端延时低、可自然打断、可持续对话、避免他人声音干扰。本篇文章带你了解 TEN 框架的基本概念、功能特性、应用场景及架构总览。并通过一个简单的示例,展示通过 TEN 框架实现一个可以满足用户需求的实时语音助手。TEN 是面向实时多模态对话与语音智能体的开源框架,其目标明确:帮助开发者快速构建支持语音、视频、图像、文本的智能体,并无缝接入大语言模型(LLM)。框架以插件化、跨语言与可视化编排为核心,提供音频、视频、文本与工具的统一管道,可在 Windows/macOS/Linux 及移动/嵌入式环境稳定运行,交付可复制的实时体验。- 低延时:对话无卡顿感;流式管线 + 并行执行 + 零拷贝通道,端到端响应可达百毫秒级。
- 可打断:内置 VAD、轮次检测与 Interrupt 插件,用户可随时中止 TTS/生成并切换意图。
- 可扩展:模块化/热插拔架构,随时增减 STT、TTS、LLM、工具/RAG 等能力。
- 跨语言:模块可按性能与并发需求采用不同语言实现;框架提供统一的数据协议与接口契约,确保无缝协作。
- 跨平台与边云协同:覆盖桌面端、移动端与嵌入式;本地与云端灵活组合部署,支持弹性伸缩与水平扩展。
- 语音助手与智能家居:自然对话、即时打断、低延时反馈。
- 同声传译与实时字幕:持续音频流与增量输出保证“听得见、看得快”。
- 虚拟形象 / VTuber(Live2D):通过 Live2D 模型 + 运动追踪,在直播等各种场景中投射你的虚拟形象。
- 嵌入式/边缘场景(例如机器人):部分功能下沉本地设备,云端负责复杂推理与协同调度。
ingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";color: rgb(31, 35, 41);text-align: left;font-size: 16px;line-height: 26px;word-break: break-word;margin-top: 8px;margin-bottom: 8px;min-height: 20px;">想获得更全面的 AI 工程化知识?扫描下方二维码加入赋范空间免费领取:Agent + RAG + MCP + 数据分析等成体系的教程。实时语音交互 Agent 也即将上架。ingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";color: rgb(31, 35, 41);text-align: left;font-size: 16px;line-height: 26px;word-break: break-word;margin-top: 8px;margin-bottom: 8px;min-height: 20px;"> TEN 以 Agent 为核心,通过有向图(DCG)编排各模块的数据流与控制流。每个功能以插件/扩展的形式独立运行,严格的模块边界使得替换或新增能力无需触动其他模块。控制平面与数据平面分离:控制面负责状态与指令,数据面直接承载音视频与流式文本,确保实时性与稳定性。- RTC(实时通信):负责音视频数据的采集、传输与回放,采用令牌鉴权与加密传输。
- STT(语音转文字):将用户语音流实时转录为文本。
- LLM/工具/RAG:根据上下文与知识检索生成响应或执行工具调用。
- TTS(文字转语音):将文本响应转为自然语音,支持多语种与风格。
- VAD/Turn-Taking/Interrupt:对话节律与打断识别,驱动“能听、会停、立即应”的体验。
- 流式与增量处理:用户开口即识别、边识别边生成;无需等整句完成再响应。
- 并行执行:多线程/多进程解耦 STT、LLM、TTS、RTC 等关键路径,避免单点阻塞。
- 零拷贝与内存通道:关键数据在同进程间直接传递,减少序列化与内存拷贝开销。
- 优化关键链路:语音输入→转录→LLM 增量生成→TTS 合成流水线并行推进。
- 稳定的 RTC 网络:跨地域低抖动传输,令牌鉴权保障安全,端到端时延更可控。
- 并发管线:单进程多 Agent、跨进程/容器部署,弹性扩容应对高并发场景。
- VAD(语音活动检测):实时判定说话起止,减少空白等待与误触发。
- Turn-Taking(轮次检测):识别插话/换手时机,让对话更符合人类节律。
- Interrupt 插件:用户开口时立即打断当前 TTS 或回复生成,切换到新意图或话题。
- TTS 即时中止:正在播报的语音可被安全停止,保障响应的“即时与相关”。
- 对话状态管理:在打断与重入场景中保持上下文一致,避免状态紊乱与重复回复。
- 独立扩展:STT、TTS、LLM、工具、日志/监控、计算机视觉等都以插件提供。
- 热插拔/热替换:不中断服务即可升级或替换模块(如将云端 STT 替换为本地模型)。
- 统一接口与数据约定:跨语言模块使用一致的数据类型与接口契约,降低集成复杂度。
- 多模态协同:音频、视频、图像与传感数据并行处理,一对多/多对多拓扑灵活编排。
- 可视化 Graph Designer:拖拽式连线搭建管线,降低复杂系统的上手难度。
- 跨语言:模块可按性能与并发需求采用不同语言实现;框架提供统一的数据协议,确保无缝协作。例如:用 C/C++ 实现高性能音频处理,用 Python 实现 AI 服务,用 Golang 编排高并发业务。
- 跨平台:Windows、macOS、Linux、移动端及嵌入式设备(如 ESP32)均可落地。
- 边云协同:将隐私相关的采集/初步识别放在本地,将复杂推理放在云端;两侧通过 TEN 管线无缝衔接。
这里通过多用途实时语音助手示例,直观感受 TEN 框架的强大功能。也可直接线上体验:https://agent.theten.ai或在github codespace中运行(教程:https://theten.ai/cn/docs/ten_agent/setup_development_env/setting_up_development_inside_codespace)git clone https://github.com/TEN-framework/ten-framework.git cdten-framework
cdai_agents cp./.env.example ./.env Deepgram 控制台获取 API Key:https://console.deepgram.com/project/ ElevenLabs 控制台获取 API Key:https://elevenlabs.io/app/developers/api-keys Agora 控制台获取 App ID 和 App Certificate:https://console.agora.io/project-managementAGORA_APP_ID= AGORA_APP_CERTIFICATE=
# 如果你运行的是默认语音助手示例 # Deepgram(语音转写必需) DEEPGRAM_API_KEY=your_deepgram_api_key_here
# OpenAI(语言模型必需) OPENAI_API_KEY=your_openai_api_key_here OPENAI_MODEL=gpt-4o
# ElevenLabs(文本转语音必需) ELEVENLABS_TTS_KEY=your_elevenlabs_api_key_here
docker composeup-d docker exec -it ten_agent_dev bash
cd agents/examples/voice-assistant-realtime taskinstall task run 即可在浏览器访问 http://localhost:3000 进行实时语音交互。 |