- 文档首页
实时音视频
AI 音视频互动方案
开发指南
接入端到端实时语音大模型
接入端到端实时语音大模型
除了标准的 ASR+LLM+TTS 模块化方案,还支持接入“豆包端到端实时语音大模型”。该模型将“听(ASR)、想(LLM)、说(TTS)”三大环节集成于一体,实现从语音输入到语音输出的全链路处理,能够显著降低模块间的处理与传输延迟,为用户带来更流畅、更接近真人的实时对话体验。
更多端到端实时语音大模型介绍,请参见 产品简介。 使用限制
- 启用豆包端到端实时语音大模型后,会对以下配置产生影响:
- 纯端到端模式下:无需配置 ASRConfig、TTSConfig 和 LLMConfig,系统会忽略这些配置。
- 混合编排模式下:无需配置 ASRConfig 和 TTSConfig,系统会忽略这些配置。
- 对于字幕:在使用字幕功能时,必须将 SubtitleConfig.SubtitleMode 设置为 1(快速字幕)。
- 对于控制指令:通过服务端 API UpdateVoiceChat 或 客户端 API sendUserBinaryMessage 发送的 ExternalPromptsForLLM 和 ExternalTextToLLM 指令不生效。
接入步骤
- 开通服务:前往豆包语音控制台,开通 豆包端到端实时语音大模型 服务,并获取 APP ID 和 Access Token。
-
- 可选(联网搜索):若需 AI 具备实时查新闻/天气能力,需开通联网搜索 API 服务并获取 API Key。具体操作,可参见 开启联网搜索。
确定工作模式
端到端实时语音大模型支持两种工作模式,分别适用于不同场景,计费方式也不同:
模式一:纯端到端
此模式下,所有对话由端到端模型独立处理,不涉及 LLMConfig 中配置的大模型,延迟最低。
- S2SConfig.OutputMode:设置为 0。
- S2SConfig.ProviderParams.app:填入你在准备工作中获取的 APP ID 和 Access Token。
- SubtitleConfig.SubtitleMode:若需接收字幕,该字段必须设置为 1。
"AppId": "<YOUR_RTC_APPID>",
"RoomId": "<YOUR_ROOM_ID>",
"TaskId": "<YOUR_TASK_ID>",
"TargetUserId": ["USER_ID_OF_REAL_PERSON"],
"UserId": "USER_ID_OF_AI_BOT"
"appid": "YOUR_S2S_APPID",
"token": "YOUR_S2S_TOKEN"
此模式下,用户语音会同时送往端到端模型和 LLMConfig 中配置的火山方舟大模型。当方舟大模型决策需要调用工具(Function Calling)时,系统采纳其输出;否则,采纳端到端模型的输出。
- S2SConfig.OutputMode: 设置为 1。
- S2SConfig.ProviderParams.app:填入在准备工作中获取的 APP ID 和 Access Token。
- LLMConfig:必须配置,用于处理端到端模型无法完成的复杂任务。仅支持使用火山方舟大模型。
- SubtitleConfig.SubtitleMode:若需接收字幕,该字段必须设置为 1。
"AppId": "<YOUR_RTC_APPID>",
"RoomId": "<YOUR_ROOM_ID>",
"TaskId": "<YOUR_TASK_ID>",
"TargetUserId": ["USER_ID_OF_REAL_PERSON"],
"UserId": "USER_ID_OF_AI_BOT"
"ModelName": "doubao-seed-2-0-lite-260428",
"name": "query_weather",
"description": "查询指定城市的天气",
"description": "城市名称,例如:北京"
"appid": "YOUR_S2S_APPID",
"token": "YOUR_S2S_TOKEN"
进阶配置
在实现基础功能后,你可以通过配置 S2SConfig.ProviderParams 对象,来深度定制 AI 的行为和声音。
端到端模型分为 O 系列(精品音质)和 SC 系列(侧重角色扮演与克隆),通过 dialog.extra.model 来指定。
设置人设与对话风格
让 AI 扮演特定人设(如历史人物、动漫角色)或使用特定口吻(如专业、幽默)交流。O 版本和 SC 版本,配置字段略有不同:
- O 系列:通过字段 bot_name(名字)、system_role(身份背景)、speaking_style(说话口吻)。
"model": "1.2.1.1" // O2.0版本
"system_role": "你是一个专业的科技博主,说话幽默且犀利。",
"speaking_style": "请使用轻松、富有感染力的口吻。"
- SC 系列:通过字段 character_manifest(角色详述)。
"character_manifest": "这里传入你的角色描述"
提升语音识别准确性(判停、二遍识别、热词与替换词)
通过在 asr.extra 中配置相关参数,可提升 ASR 识别准确率。
配置示例
"enable_asr_twopass": true,
"boosting_table_id": "YOUR_HOTWORD_TABLE_ID",
"hotwords": [{"word": "火山引擎"}],
"correct_words": {"火上": "火山"}
设置音色、语速和音量
- 语速和音量:在 tts.audio_config 中配置 speech_rate 和 loudness_rate。
开启联网搜索
前置操作
- web搜索:满足多样的常规搜索需求,用户可获取所需的高质量内容。
- web搜索总结版:在此基础上提供大模型内容总结,以获得提炼总结后的一段式内容,提升信息获取效率。
配置示例
"enable_volc_websearch": true,
"volc_websearch_api_key": "your_websearch_agent_api_key",
"volc_websearch_type": "web_summary",
"volc_websearch_no_result_message": "哎呀,网络上好像没有找到相关信息呢。"
在端到端混合编排模式下,若遇到智能体过早打断用户(即“抢话”),可通过配置内部 VAD 参数来延长判停等待时间。以下参数需写入 S2SConfig.ProviderParams.asr.extra 中:
- end_smooth_window_ms:判停平滑窗口,默认值较短。建议将其调高(例如 800 ~ 1200 毫秒),强制模型在用户停止说话更长时间后才判定为一句话结束。
- SilenceTime:静音超时阈值,配合调节可进一步防打断。
最近更新时间:2026.10.10 11:59:11