功能概述
在 Cascade(三段式) 模式下,LLM(大语言模型)是对话链路的第二段,也是 AI 机器人的“大脑”:接收 ASR 转写出的用户文本进行推理,流式输出回复文本,交给 TTS 合成播报。
LLM 段按 OpenAI 兼容协议统一对接,不限制厂商:
支持 运行时热更新,可在对话进行中切换模型、调整提示词。
支持 MCP 工具调用(Function Calling),可接入 RAG、业务查询等复杂场景。
支持的 LLMType:
LLMType | 说明 |
openai(推荐) | OpenAI 兼容协议,可对接 GPT 系列、DeepSeek、阿里千问等。 |
hunyuan | 腾讯混元。 |
deepseek | DeepSeek。 |
custom | 自建 LLM 网关(需符合 OpenAI 兼容协议)。 |
说明:
S2S(端到端)模式下语音理解与生成由端到端模型完成,不存在独立的 LLM 段,无需配置
LLMConfig。配置结构
创建 AI 对话任务时,通过
LLMConfig 指定 LLM 配置。LLMConfig 采用平铺字段结构,厂商扩展参数通过 CustomFields / CustomHeaders 透传:字段名 | 必选 | 类型 | 描述 |
LLMType | 是 | String | LLM 接入类型: openai(推荐)/ hunyuan / deepseek / custom。 |
Model | 是 | String | 模型名(例如 gpt-4o-mini / hunyuan-lite)。 |
APIKey | 否 | String | 厂商 API Key。 说明: 条件必填,配置测试账号时可省略,生产环境必须传入。 |
APIUrl | 否 | String | OpenAI 兼容 endpoint。 说明: 条件必填,配置测试账号时可省略,生产环境必须传入。 |
SystemPrompt | 否 | String | 系统提示词,长度 ≤ 5000。 |
FailureMessage | 否 | String | LLM 失败后的兜底 TTS 文本,避免对话断档。 |
MaxTokens | 否 | Integer | 单次回复最大 Token,默认 1024,0=不限制。 |
ThinkingMode | 否 | Boolean | 是否开启思考模式,默认 false。 |
MaxHistory | 否 | Integer | 缓存对话轮次,范围 0-1024,默认 50,建议 10-30。 |
MaxToolRound | 否 | Integer | MCP 工具调用最大轮次,范围 0-50,默认 10。 |
Timeout | 否 | Integer | 请求超时(毫秒),范围 1000-60000,默认 10000。 |
Temperature | 否 | Float | 采样温度 0.0-2.0,默认 1.0。值越大输出越随机,越小越确定。 |
TopP | 否 | Float | 采样概率 0.0-1.0,默认 1.0。值越小结果确定性越强。 |
McpServer | 否 | Object | |
CustomHeaders | 否 | String | JSON 字符串,自定义 HTTP 请求头。 |
CustomFields | 否 | String | JSON 字符串,厂商扩展参数黑盒透传。 |
HistoryMessages | 否 | Array of Object | 初始历史消息,每项含 Role(user/assistant/system)/ Content。 |
LLM 厂商接入示例
OpenAI 兼容协议(推荐)
适用于 GPT 系列,以及 DeepSeek、阿里千问等任何提供 OpenAI 兼容接口的模型:
"LLMConfig": {"LLMType": "openai","Model": "gpt-4o-mini","APIKey": "<your-api-key>","APIUrl": "https://api.openai.com/v1/chat/completions","SystemPrompt": "你是一个简洁的对话助手。","Timeout": 20000,"Temperature": 0.7}
腾讯混元
"LLMConfig": {"LLMType": "hunyuan","Model": "hunyuan-lite","APIKey": "<your-api-key>","APIUrl": "<混元 OpenAI 兼容 endpoint,以官方文档为准>","SystemPrompt": "你是一个简洁的对话助手。","Temperature": 0.7}
DeepSeek
"LLMConfig": {"LLMType": "deepseek","Model": "deepseek-chat","APIKey": "<your-api-key>","APIUrl": "<DeepSeek OpenAI 兼容 endpoint,以官方文档为准>","SystemPrompt": "你是一个简洁的对话助手。","Temperature": 0.7}
说明:
DeepSeek、阿里千问等厂商同样兼容 OpenAI 协议,也可直接使用
LLMType=openai 接入。自定义 LLM 网关(custom)
适用于自建 LLM 服务、私有化部署模型,或需要在网关层实现 RAG 检索、联网搜索、多模型编排后再整合输出的场景:
1. 实现一个符合 OpenAI Chat Completions 协议的 HTTP 接口,作为
APIUrl 接入。2. 网关内部可自由实现业务逻辑(查询知识库、调用子模型等),只需最终按协议返回流式响应。
3. 通过
CustomHeaders 传入网关鉴权所需的自定义请求头。"LLMConfig": {"LLMType": "custom","Model": "your-model","APIKey": "<your-gateway-key>","APIUrl": "https://your-custom-llm-gateway/v1/chat/completions","SystemPrompt": "请根据知识库内容用友好的语气回答用户问题。","Temperature": 0.7}
上下文管理
初始历史消息(HistoryMessages)
任务创建时可通过
HistoryMessages 注入初始上下文(例如用户画像、此前的对话摘要),AI 机器人首轮对话即可“带着记忆”开始:"HistoryMessages": [{ "Role": "user", "Content": "我叫小王,我是一名程序员。" },{ "Role": "assistant", "Content": "好的,很高兴认识你,小王!" }]
对话轮次缓存(MaxHistory)
后台自动缓存最近
MaxHistory 轮对话作为上下文:范围 0-1024,默认 50,建议 0-30。
取值过大:Token 消耗增加、推理延迟上升;取值过小:多轮对话中丢失前文记忆。
主动注入文本
输出控制
手段 | 说明 |
MaxTokens | 限制单次回复长度,控制时延与成本;0=不限制。 |
FailureMessage | LLM 调用失败时播报的兜底文本,避免对话断档。 |
FilterBracketsContent | 过滤 LLM 返回中的括号内容,避免动作、表情等标记被 TTS 念出。 |
FilterBracketsContent 在 AgentConfig 中配置:值 | 过滤内容 |
1 | 中文括号() |
2 | 英文括号() |
3 | 中文方括号【】 |
4 | 英文方括号[] |
5 | 英文花括号{} |
说明:
最多可选 5 个。典型用法:LLM 人设类模型常以
(微笑)、[开心] 标注动作情绪,配置后可避免 TTS 将其朗读出来。Function Calling / MCP 工具
McpServer 支持配置 MCP(Model Context Protocol)工具服务,适合需要业务侧 Function Calling、RAG 检索的复杂对话场景:"McpServer": {"Name": "weather-tools","Url": "https://your-mcp-server/sse","Timeout": 5000,"Headers": "{\\"Authorization\\":\\"Bearer xxx\\"}","ToolList": ["get_weather", "get_forecast"]}
字段名 | 类型 | 描述 |
Name | String | MCP 唯一标识符。 |
Url | String | 接入地址。 |
Timeout | Integer | 请求超时(毫秒),默认 5000。 |
Headers | String | JSON 字符串,自定义请求头(鉴权等)。 |
ToolList | Array of String | 工具使用白名单。 |
工具调用最大轮次由
MaxToolRound 控制(范围 0-50,默认 10)。运行时热更新
LLMConfig 全部字段支持热更新——任务运行中可通过修改任务接口更新,包括:运行时切换模型(
Model / LLMType)调整系统提示词(
SystemPrompt)、采样参数(Temperature / TopP)更新上下文缓存轮次(
MaxHistory)注意:
更新请求需携带
SequenceNumber(单调递增序号),后台保证按序处理;序号非递增的更新将被拒绝。这与 ASR / TTS / Vision 配置不同(三者均不支持热更新,需重建任务)。注意事项
1. 生产环境必须传入
APIKey / APIUrl,否则 LLM 调用将失败。2. VLM 视觉理解的模型要求:启用视觉理解时,
Model 必须是多模态模型(例如 hunyuan-vision / gpt-4o / gpt-4o-mini / qwen-vl-plus),详细参见 视觉理解能力(截图问答)。3. 回复获取方式:
服务端:LLM 单轮回复完成时,通过 LLM 回复回调收到该轮终态完整文本(含轮次 ID),详细参见 AI 对话回调事件。
客户端:通过 SDK 的字幕事件实时获取 LLM 回复文本,详细参见 (客户端)实时字幕。
4. 超时设置:
Timeout 默认 10000ms;开启思考模式或模型推理较慢时,可适当调大,避免超时导致回复中断。5. 成本控制:
MaxTokens 与 MaxHistory 直接影响 Token 消耗,建议按业务实际需求设置。