You need to enable JavaScript to run this app.
导航
接入端到端实时语音大模型
最近更新时间:2025.11.19 11:47:52首次发布时间:2025.10.24 20:11:58
复制全文
我的收藏
有用
有用
无用
无用

除了标准的 ASR+LLM+TTS 模块化方案,实时对话式 AI 还支持接入“豆包端到端实时语音大模型”。该模型将“听(ASR)、想(LLM)、说(TTS)”三大环节集成于一体,实现从语音输入到语音输出的全链路处理,能够显著降低模块间的处理与传输延迟,为用户带来更流畅、更接近真人的实时对话体验。

更多端到端实时语音大模型介绍,请参见 产品简介

使用须知

启用豆包端到端实时语音大模型后,会对以下配置产生影响:

  • 对于 ASR、TTS、LLM 配置
    • 纯端到端模式下:ASRConfigTTSConfigLLMConfig 将不生效。
    • 混合编排模式下:ASRConfigTTSConfig 将不生效。
  • 对于字幕:对齐时间戳将不生效,字幕不包含精确到词的时间戳。在使用字幕功能时,必须将 SubtitleConfig.SubtitleMode 设置为 1(不对齐时间戳)。
  • 对于控制指令:通过 UpdateVoiceChat 接口发送的 ExternalPromptsForLLMExternalTextToLLM 指令将不生效。
接入步骤

1. 开通豆包端到端实时语音大模型

前往豆包语音控制台,开通 豆包端到端实时语音大模型 服务。开通后,在该服务的详情页,获取 APP IDAccess Token,后续调用时需要用到。

2. 确定工作模式

在实时对话式 AI 场景下,端到端实时语音大模型支持两种工作模式,分别适用于不同场景,计费方式也不同:

模式描述适用场景ASR+TTS+LLM 计费
纯端到端所有对话都由豆包端到端实时语音大模型直接处理并输出文本和音频,完全不经过 LLMConfig 中配置的大模型。追求极致低延迟的纯闲聊场景,如 AI 陪伴、虚拟人互动。统一按 token 计费,由豆包语音收取,具体请参见计费概述
端到端+LLM 混合编排每一次语音对话都会同时发送给 LLMConfig 配置模型和端到端实时语音大模型。由LLMConfig 判断是否有工具调用需求。如果有就采用 LLMConfig 的输出,否则就用端到端模型的输出。
仅支持使用火山方舟大模型
需要兼顾闲聊的低延迟和复杂业务处理能力的场景,如智能客服、AI 游戏 NPC。两部分费用:
  • 豆包端到端实时语音大模型产生的费用,具体请参见计费概述
  • LLM 费用:以实际使用的模型为准。

3. 配置 StartVoiceChat

核心配置

  • Config.S2SConfig必填。端到端实时语音大模型配置。
  • Config.LLMConfig按需。如果需要调用外部工具处理复杂任务时(如设备控制、实时信息查询),需配置。
  • SubtitleConfig.SubtitleMode按需。若配置了字幕接收,该字段必须设置为 1

详细参数说明,请参见 StartVoiceChat;也可参见以下配置示例完成配置。

示例 1:纯端到端模式

此模式下,ASR、LLM、TTS 都由豆包端到端实时语音大模型直接处理,适用于无工具/函数调用需求的纯闲聊场景,可以提供低延迟和高流畅度的对话体验。

核心配置

  • S2SConfig.OutputMode:设置为 0
  • S2SConfig.ProviderParams.app:填入你在准备工作中获取的 APP IDAccess Token
  • SubtitleConfig.SubtitleMode:若需接收字幕,该字段需设置为 1

请求示例

{
    "AppId": "your_rtc_appid",
    "RoomId": "your_room_id",
    "TaskId": "your_task_id",
    "Config": {
        "S2SConfig": {
            "Provider": "volcano",
            "OutputMode": 0,
            "ProviderParams": {
                "app": {
                    "appid": "your_s2s_appid",      // 豆包端到端服务的 AppId(必填)
                    "token": "your_s2s_token"       // 豆包端到端服务的 AccessToken(必填)
                }
            }
        },
        "SubtitleConfig": {
            "SubtitleMode": 1 // 若开启字幕,必须设为1
        }
    },
    "AgentConfig": {
        "TargetUserId": ["user_A"],
        "WelcomeMessage": "你好,很高兴认识你,我们可以聊聊天!"
    }
}

示例 2:混合编排模式

此模式适用于需要调用外部工具(如设备控制、实时信息查询)的场景,能兼顾闲聊的低延迟与复杂任务的处理能力。

核心配置

  • S2SConfig.OutputMode: 设置为 1
  • S2SConfig.ProviderParams.app:填入在准备工作中获取的 APP IDAccess Token
  • LLMConfig:必须配置,用于处理端到端模型无法完成的复杂任务。仅支持使用火山方舟大模型
  • SubtitleConfig.SubtitleMode:若需接收字幕,该字段需设置为 1

请求示例

{
    "AppId": "your_rtc_appid",
    "RoomId": "your_room_id",
    "TaskId": "your_task_id",
    "Config": {
        "S2SConfig": {
            "Provider": "volcano",
            "OutputMode": 1, // 设置为混合模式(必填)
            "ProviderParams": {
                "app": {
                    "appid": "your_s2s_appid",
                    "token": "your_s2s_token"
                }
            }
        },
        "LLMConfig": { // 复杂任务处理的大模型配置(必填)
            "Mode": "ArkV3",
            "EndPointId": "your_ark_endpoint_id",
            "Tools": [
                {
                    "type": "function",
                    "function": {
                        "name": "query_weather",
                        "description": "查询指定城市的天气"
                        // ... parameters
                    }
                }
            ]
        },
        "FunctionCallingConfig": { // 接收 Function Calling 指令的回调配置
            "ServerMessageUrl": "https://your-backend.com/callback",
            "ServerMessageSignature": "your_signature"
        }
    },
    "AgentConfig": {
        "TargetUserId": ["user_B"],
        "WelcomeMessage": "你好,我可以陪你聊天,也可以帮你查天气哦。"
    }
}
进阶配置

在实现基础功能后,你可以通过配置 S2SConfig.ProviderParams 对象,来深度定制智能体的行为和声音。

详细参数说明,请参见 StartVoiceChat

人设与对话风格定制

打造具有特定人设(如历史人物、动漫角色)的 AI,或需要 AI 采用特定口吻(如专业、幽默)进行交流的场景。

"ProviderParams": {
    // ... 其他参数
    "dialog": {
        "bot_name": "大灰狼",
        "system_role": "你是一只又饿又有点笨的大灰狼,正在和迷路的小红帽对话。",
        "speaking_style": "你的口吻总是气冲冲的,但又有点可爱。"
    }
}

设置 TTS 音色

tts.speaker 字段中,填入你想使用的音色名称。支持多种精品预设音色:

  • zh_female_vv_jupiter_bigtts(活泼灵动女声,默认)
  • zh_female_xiaohe_jupiter_bigtts(甜美活泼女声)
  • zh_male_yunzhou_jupiter_bigtts(清爽沉稳男声)

调整 ASR 判停时间

通过 asr.extra.end_smooth_window_ms 调整用户说话停顿后,系统判定为一句话结束的时长(单位:毫秒)。

"asr": {
  "extra": {
    "end_smooth_window_ms": 2000 // 用户停顿 2000ms 视为一句话结束
  }
}

开启联网搜索

当用户需要查询实时信息(如天气、新闻、股价)时,可开启模型的内置联网能力。内置联网是基于火山引擎联网问答 Agent 的融合信息搜索能力。详细说明,请参见 融合信息搜索API

前置操作

使用联网搜索前需先进行以下操作:

  1. 前往融合信息搜索控制台,开通融合信息搜索服务,支持以下版本:
    • web搜索:满足多样的常规搜索需求,用户可获取所需的高质量内容。
    • web搜索总结版:在此基础上提供大模型内容总结,以获得提炼总结后的一段式内容,提升信息获取效率。
  2. 在左侧导航,选择系统管理 > API Key 管理,单击融合信息搜索页签,创建并获取对应 API Key。

请求示例

"dialog": {
    "extra": {
        "enable_volc_websearch": true, // 启用联网搜索
        "volc_websearch_api_key": "your_websearch_agent_api_key", // 填入获取的融合信息搜索 API Key
        "volc_websearch_type": "web_summary", // web_summary-web 信息搜索总结版;web-web搜索版本
        "volc_websearch_no_result_message": "哎呀,网络上好像没有找到相关信息呢。" // 无结果时的安抚语
    }
}