获取助手详情
根据助手ID获取单个AI语音助手的完整配置信息,包括版本配置、语音合成/识别配置、AI模型配置等
/openapi/assistants/{id}请求
参数
idinteger必需路径参数 · 助手ID
响应
助手唯一ID
所属项目ID
助手名称
当前使用的版本ID
助手场景类型,如 inbound_knowledge(呼入知识库)、outbound_collect(呼出收集)等
助手目标描述
语音合成(TTS)音色ID
语音合成(TTS)音色名称
WebSocket连接地址
WebSocket连接认证Token
语音识别(ASR)模型ID
语音识别(ASR)模型名称
欢迎语/开场白,通话接通后助手首先播放的文本
系统提示词,定义助手的角色、行为和对话策略
信息收集配置,定义助手在对话中需要收集的问题列表
需要收集的问题内容
预设的答案选项列表(可选)
关联的知识库Code(RAG知识库标识)
热词列表,用于提高ASR识别准确率
热词文本
热词权重,数值越大优先级越高
该热词可替换的同音/近音词列表
是否启用该热词的模糊匹配
助手累计通话次数
创建者用户ID
创建者用户信息
用户ID
用户邮箱
用户名
是否为旧版本格式(兼容标记)
关联的自定义LLM配置ID
是否启用模糊匹配(用于ASR结果纠错)
功能开关标记(逗号分隔的功能标识)
助手使用的时区,如 Asia/Shanghai
对话流程定义(JSON格式的流程图配置)
打断配置,控制用户在助手说话时如何打断
打断方式
播放开始后不可打断的时长(毫秒),在此时间内用户语音不会触发打断
抢话检测阈值(毫秒),用户持续说话超过此时长才触发打断
打断后是否恢复播放被打断的内容
端点检测配置(End of Utterance),用于判断用户是否说完
是否启用智能端点检测
等待超时时间(毫秒),超过此时间未检测到语音则判定说完
未完成语句超时时间(毫秒),检测到未说完的语句时额外等待的时长
VAD(Voice Activity Detection)语音活动检测配置
静音填充时长(毫秒),语音结束后额外等待的时间
语音检测灵敏度比例
VAD模式(0-3),数值越高越严格
语音正向检测阈值,超过此值判定为有语音
语音负向检测阈值,低于此值判定为无语音
赎回帧数,在判定语音结束前额外检查的帧数
最小语音帧数,低于此帧数的语音片段将被忽略
能量阈值,音频能量低于此值判定为静音
语音开始检测时长(毫秒)
语音结束检测时长(毫秒)
AI Agent 核心配置,包括对话策略和LLM模型参数
分片时间(毫秒),将长语音切分处理的时间间隔
打断后静默等待时间(毫秒)
最大静默追问次数,用户持续沉默时助手主动追问的最大次数
最大对话间隔次数,超过后自动结束通话
最大会话时长(秒),超过后自动结束通话
开场白是否可被打断
语音间隔阈值(毫秒),两段语音间隔小于此值视为连续说话
当VAD检测到用户在说话时,助手是否保持沉默
LLM模型名称,如 gpt-4o、claude-sonnet-4.5 等
LLM API 基础URL
LLM API 认证Token
LLM供应商标识,如 openai、azure、volcengine 等
API版本号(主要用于Azure OpenAI)
LLM温度参数(0-2),越高输出越随机
LLM Top-P采样参数(0-1)
提示词模式,如 system(系统提示词)
Agent决策阈值
Agent运行模式
是否使用填充词(如'嗯'、'好的'),在AI思考时播放
填充词列表
Function Calling 函数定义列表(OpenAI格式)
Function调用钩子配置,在调用工具前/后执行额外逻辑
目标工具名称
钩子提示词,在工具调用时额外注入的指令
知识库Code(用于RAG检索)
知识库检索返回的Top-K条目数
SCRM(社交化客户关系管理)集成配置
SCRM机器人ID
SCRM应用Key
SCRM应用Secret
技能配置
按键技能配置(DTMF按键检测)
最大无操作等待时间(秒),超过后停止按键监听
短时记忆配置,用于对话中的上下文摘要
需要记忆的关注点列表
LLM模型配置(通用)
模型供应商,如 openai、azure、volcengine
模型名称
API基础URL
API认证Token
温度参数
API版本号
Top-P采样参数
知识库检索配置
使用前N轮对话作为检索上下文
知识库切片最低匹配分数,低于此分数的结果将被过滤
是否使用记忆增强检索查询
新对话轮次开始时是否禁用知识库检索
预设话术脚本,key为场景标识,value为话术内容
音频处理配置(降噪、增益等)
VAD引擎类型
是否启用降噪
降噪算法类型,可选 rnnoise 或 dfn
降噪强度等级
是否启用自动增益控制(AGC)
是否关闭所有音频处理(降噪+AGC全部禁用)
语音合成(TTS)播报配置
语速倍率,1.0为正常速度,大于1加速,小于1减速
TTS引擎名称
TTS引擎额外参数
是否启用SSML(语音合成标记语言)
SSML文本替换规则列表
需要替换的原始文本
替换后的SSML标记文本
全局配置
全局欢迎语
全局提示词
场景类型
主语言,如 zh-CN、en-US、ja-JP
多语言配置
额外支持的语言列表
语言代码,如 en-US、ja-JP
调试模式标识
通话方向,inbound(呼入)或 outbound(呼出)
对话是否不可打断
提示词模式
工作时间配置
工作时间规则ID
通话分析配置
是否启用实时信息收集(通话中实时提取关键信息)
收集目标定义列表
目标名称
枚举值列表(限定可选值)
所属分支标识
目标摘要描述
唯一标识符
对话分析维度列表
分析目标标识
分析维度描述
通话质量分析配置
质量分析提示词/规则内容
MCP服务器配置列表,用于扩展助手工具能力
MCP服务器名称
服务器描述
服务器类型,如 stdio、sse
启动命令
启动参数
环境变量配置
超时时间(秒)
选中的工具列表
工具名称
是否异步执行
音轨配置(背景音、音量控制)
主音量(默认1.0)
主音轨音量(默认0.8),即TTS语音的音量
效果音轨列表(背景音乐等)
音频文件名/路径
音量(默认0.8)
是否启用该音轨
播放模式,如 loop(循环)、once(单次)
查询重写配置,用于优化知识库检索的查询语句
是否启用查询重写
重写提示词
LLM模型配置(通用)
模型供应商,如 openai、azure、volcengine
模型名称
API基础URL
API认证Token
温度参数
API版本号
Top-P采样参数
语音识别(ASR)高级配置
ASR提供商列表(支持多提供商并行识别)
ASR模型ID
提供商名称
提供商额外配置参数
ASR结果提交模式
是否启用转写ASR(将通话全程转写)
模糊匹配选项
识别方向
创建时间
最后更新时间
软删除时间,未删除时为null
示例代码
curl -X GET 'https://openapi.voicefox.cn/openapi/assistants/{id}' \
-H 'Authorization: Bearer <YOUR_TOKEN>' \
-H 'Content-Type: application/json'响应示例
{
"id": 0,
"projectId": 0,
"name": "string",
"versionId": 0,
"scene": "string",
"objective": "string",
"speakerId": 0,
"speakerName": "string",
"websocketUrl": "string",
"websocketToken": "string",
"listenerId": 0,
"listenerName": "string",
"welcome": "string",
"prompt": "string",
"collect": [
{
"question": "string",
"answers": [
"string"
]
}
],
"knowledge": "string",
"hotWords": [
{
"word": "string",
"weight": 0,
"replacedWords": [
"string"
],
"enableFuzzyMatch": false
}
],
"usageCount": 0,
"creatorId": 0,
"creator": {
"id": 0,
"email": "string",
"username": "string"
},
"idOldVersion": false,
"llmId": 0,
"enableFuzzyMatch": false,
"featureFlags": "string",
"timeZone": "string",
"flow": "string",
"interruptionConfig": {
"method": "string",
"unInterruptableAfterPlayStart": 0,
"talkOverThreshold": 0,
"resumePlay": false
},
"eouConfig": {
"eouEnabled": false,
"waitTimeout": 0,
"unfinishedTimeout": 0
},
"vadConfig": {
"paddingDuration": 0,
"ratio": 0,
"vadMode": 0,
"positiveSpeechThreshold": 0,
"negativeSpeechThreshold": 0,
"redemptionFrames": 0,
"minSpeechFrames": 0,
"energyThreshold": 0,
"speechStartMs": 0,
"speechEndMs": 0
},
"agentConfig": {
"sliceTime": 0,
"interruptionSilentTime": 0,
"maxSilentAskTimes": 0,
"maxDialogueGapTimes": 0,
"maxSessionDuration": 0,
"startCanBreak": false,
"speechIntervalThreshold": 0,
"keepSilentWhenVADIsActive": false,
"modelName": "string",
"baseUrl": "string",
"authToken": "string",
"vendor": "string",
"apiVersion": "string",
"temperature": 0,
"topP": 0,
"promptMode": "string",
"threshold": 0,
"agentMode": "string",
"useFiller": false,
"fillerWords": [
"string"
],
"functions": [
{}
],
"functionHooks": [
{
"toolName": "string",
"hookPrompt": "string"
}
],
"knowledgeCode": "string",
"topK": 0,
"scrmConfig": {
"robotId": "string",
"appKey": "string",
"appSecret": "string"
},
"skillsConfig": {
"pressKey": {
"maxInactiveSecond": 0
},
"shortMemo": {
"points": [
"string"
],
"llmConfig": {
"vendor": "string",
"modelName": "string",
"baseUrl": "string",
"authToken": "string",
"temperature": 0,
"apiVersion": "string",
"topP": 0
}
}
},
"knowledgeConfig": {
"usePreviousRoundsSlice": 0,
"sliceMinimumScore": 0,
"useMemoEnhanceQuery": false,
"disableQueryOnNewDialog": false
},
"speechScripts": {}
},
"audioProcessConfig": {
"vadType": "string",
"noiseSuppressionEnabled": false,
"noiseSuppressionType": "string",
"noiseSuppressionIntensity": 0,
"agcEnabled": false,
"closeAllAudioProcess": false
},
"speakerConfig": {
"speakRatio": 0,
"ttsName": "string",
"ttsOptions": {},
"ssml": false,
"ssmlReplaces": [
{
"key": "string",
"value": "string"
}
]
},
"globalConfig": {
"welcome": "string",
"prompt": "string",
"scene": "string",
"language": "string",
"languageConfig": {
"additionalLanguages": [
{
"language": "string"
}
]
},
"debugMode": "string",
"direction": "string",
"dialogUnInterruptable": false,
"promptMode": "string",
"workTimeConfig": {
"workTimeId": 0,
"workTime": {
"id": 0,
"name": "string",
"projectId": 0,
"workdayOption": "string",
"workdayData": "string",
"holidayPolicy": "string",
"worktimeOption": "string",
"worktimeData": "string"
},
"calendar": {
"id": 0,
"holidays": "string",
"workdays": "string",
"country": "string",
"year": 0
}
}
},
"subgoal": {
"condition": {
"target": "string",
"value": "string"
},
"type": "string",
"target": "string",
"description": "string",
"collectTargets": {},
"subgoal": [
{
"condition": {
"target": "string",
"value": "string"
},
"type": "string",
"target": "string",
"description": "string",
"collectTargets": {},
"subgoal": [
{
"condition": null,
"type": null,
"target": null,
"description": null,
"collectTargets": null,
"subgoal": null
}
]
}
]
},
"analysis": {
"realTimeCollect": false,
"collectTargets": [
{
"name": "string",
"enum": [
"string"
],
"branch": "string",
"summary": "string",
"uuid": "string"
}
],
"conversationAnalysis": [
{
"target": "string",
"description": "string"
}
],
"qualityAnalysis": {
"content": "string"
}
},
"mcpServers": [
{
"name": "string",
"description": "string",
"type": "string",
"command": "string",
"args": "string",
"envs": "string",
"timeout": 0,
"selectTools": [
{
"toolName": "string",
"isAsync": false
}
]
}
],
"audioTrackConfig": {
"masterVolume": 0,
"mainTrackVolume": 0,
"effectAudioTracks": [
{
"filename": "string",
"volume": 0,
"isActive": false,
"mode": "string"
}
]
},
"queryRewriter": {
"useRewriter": false,
"rewritePrompt": "string",
"llmConfig": {
"vendor": "string",
"modelName": "string",
"baseUrl": "string",
"authToken": "string",
"temperature": 0,
"apiVersion": "string",
"topP": 0
}
},
"listenerConfig": {
"providers": [
{
"listenerId": 0,
"name": "string",
"options": {}
}
],
"submitMode": "string",
"transferASR": false,
"fuzzyOptions": {},
"direction": "string"
},
"createdAt": "2026-01-01T00:00:00Z",
"updatedAt": "2026-01-01T00:00:00Z",
"deletedAt": "2026-01-01T00:00:00Z"
}