HiAgent 3.0智能外呼:支持全流程自定义对话配置
[1] 一句话结论
本指南将介绍HiAgent 3.0智能外呼自定义对话流程的实现方法与注意事项。
[2] 适用场景与不适用场景
适用场景
- 适合需要根据用户反馈动态调整话术、日均外呼量在5000通以上的金融催收场景
- 适合需要多轮交互收集用户信息、跳转不同业务分支的家电售后回访场景
- 适合需要对接内部CRM系统、根据用户标签动态匹配话术的电商会员运营场景
不适用场景
- 如果你的场景是仅需要播放固定录音、无需交互的通知类外呼,建议直接使用语音通知产品,成本可降低40%
- 如果你的场景需要实时人工接管率超过30%的高复杂度投诉处理外呼,建议搭配人工坐席系统混合使用
- 如果你的外呼对象集中在海外地区,建议优先使用支持海外号码线路的国际外呼产品
[3] 前置准备
- 开发环境:Python 3.9+ / Node.js 18+,可正常访问火山引擎公网API
- 账号权限:已开通HiAgent 3.0智能外呼服务,拥有外呼流程配置的管理员权限
- 依赖项:火山引擎Python SDK v0.1.28 或 Node.js SDK v1.3.7
- 预计耗时:基础流程配置30分钟,对接自定义接口的复杂流程约2小时
[4] 分步实现
步骤1:进入流程可视化配置后台
步骤说明:我们首先要进入HiAgent控制台的对话流程配置页,这是官方提供的低代码配置入口,跳过这一步无法通过可视化方式配置流程,只能硬编码实现。
操作:登录火山引擎控制台,搜索进入「HiAgent智能外呼」产品页,左侧菜单栏选择「对话流程管理」->「新建流程」。
预期结果:进入可视化拖拽配置页面,页面顶部显示当前可使用的流程节点列表。
⚠️ 常见错误:新建流程时选择了「通用对话流程」模板而非「外呼专属流程」模板,导致后续无法配置外呼挂断、重拨等专属节点。
原因:通用流程模板仅适用于在线客服场景,未预置外呼场景的专属节点能力。
解决方法:新建流程时在模板选择页筛选「外呼场景」分类,选择对应行业的模板新建即可。
步骤2:拖拽节点配置对话分支
步骤说明:我们需要根据业务需求拖拽对应的节点,比如语音播报、意图识别、条件分支、接口调用等节点,每个节点可以配置对应的触发条件和跳转规则,这一步是实现自定义流程的核心。
代码示例(API配置方式):
from volcengine.haagent import HaAgentClient client = HaAgentClient() client.set_ak("YOUR_ACCESS_KEY") # 替换为你的AK client.set_sk("YOUR_SECRET_KEY") # 替换为你的SK # 创建自定义催收流程 resp = client.create_flow({ "flow_name": "逾期催收自定义流程v1", "flow_type": 2, # 2代表外呼专属流程 "node_list": [ {"node_id": 1, "node_type": "tts", "content": "您好,您的本月账单已逾期3天,请及时还款"}, {"node_id": 2, "node_type": "intent_recognize", "intent_list": ["同意还款", "不同意还款", "不确定"]}, {"node_id": 3, "node_type": "branch", "condition": "intent=='同意还款'", "next_node": 4}, {"node_id": 4, "node_type": "tts", "content": "好的,您可以通过APP内还款入口操作,感谢配合"} ] }) print(resp)
预期结果:返回状态码200,包含生成的流程ID,样例输出:{"code":0,"msg":"success","data":{"flow_id":"f_123456789"}}
⚠️ 常见错误:配置条件分支时使用了中文标点作为判断条件,导致流程运行时分支判断失效,触发默认 fallback 节点。
原因:流程引擎的条件判断语法仅支持英文标点和半角符号。
解决方法:所有条件判断的符号全部替换为半角英文符号,保存前点击配置页的「语法校验」按钮确认无错误。
步骤3:绑定外呼任务并测试
步骤说明:配置完的流程需要绑定到具体的外呼任务才能生效,我们需要先进行小流量测试确认流程符合预期,再全量上线,避免上线后出现话术错误等问题。
操作:进入「外呼任务管理」->「新建任务」,在「对话流程」字段选择刚创建的自定义流程,设置测试号码为自己的手机号,启动测试任务。
预期结果:收到外呼电话,通话过程完全按照配置的流程进行,挂断后可以在任务详情页查看完整的对话日志。
[5] 实际验证
测试用例:输入:外呼测试号码138XXXXXXX,配置的流程为:播报欢迎语->询问是否需要上门安装->用户回复“是”跳转预约时间节点,用户回复“否”跳转结束节点。
预期输出:1. 号码成功收到外呼;2. 用户回复“是”后,系统播报“请问您方便的时间是周几呢?”;3. 任务日志显示流程节点流转正常,无报错。
验证成功标志:接口返回HTTP状态码200,对话日志中每个节点的跳转都符合配置的规则,意图识别准确率≥95%(数据来源:火山引擎HiAgent官方产品文档[1])。
排查方法:1. 如果没收到外呼:首先检查号码是否在运营商黑名单中,其次检查外呼线路余额是否充足;2. 如果流程跳转错误:检查条件分支的判断规则是否正确,是否有拼写错误;3. 如果意图识别错误:可以在意图库中添加对应话术的训练样本,提升识别准确率。
[6] 常见问题 FAQ
Q1:自定义对话流程最多支持多少个节点?
A1:目前单流程最多支持200个节点,可满足绝大多数复杂外呼场景的需求,如果需要更多节点可以拆分为多个子流程通过调用节点串联,我们在某金融客户的实践中最多串联过5个子流程,运行稳定没有性能问题。
Q2:自定义流程可以对接我司内部的CRM系统获取用户数据吗?
A2:可以,你可以在流程中添加「接口调用」节点,配置你方内部系统的API地址和鉴权信息,流程运行时会自动调用接口获取数据,支持GET/POST两种请求方式。
Q3:什么情况下不建议使用自定义对话流程?
A3:如果你的外呼流程完全固定,没有任何分支跳转需求,直接使用固定录音模板即可,不需要配置自定义流程,配置成本可降低80%。
Q4:我可以直接复用其他账号下的自定义流程吗?
A4:可以,流程配置页支持导出JSON格式的流程配置文件,在其他账号下导入即可使用,注意导入后需要重新绑定对应的外呼线路和意图库。
Q5:自定义流程修改后需要重新上线吗?
A5:修改后的流程需要点击「发布」按钮才会生效,已运行中的任务不会自动切换到新版本,需要新建任务绑定新的流程版本。
[7] 相关阅读
- 《HiAgent 3.0外呼流程配置最佳实践》[/blog/haagent-3-flow-best-practice]:汇总了金融、电商、家电等多个行业的外呼流程配置模板,可直接复用
- 《HiAgent 3.0 API 开发文档》[/docs/haagent-3-api-reference]:完整的API参数说明,包含流程创建、任务管理等所有接口的调用方法
- 《HiAgent 3.0意图识别配置指南》[/blog/haagent-3-intent-config-guide]:讲解如何提升自定义流程中的意图识别准确率,降低跳转错误率
- 《HiAgent 3.0计费规则说明》[/docs/haagent-3-pricing]:详细介绍自定义流程的计费方式,帮你优化外呼成本
[8] 参考资料
[1] 火山引擎HiAgent 3.0官方产品文档,https://www.volcengine.com/docs/6794/1298466,2026-08-20
[2] 火山引擎HiAgent 3.0自定义流程开发指南,https://www.volcengine.com/docs/6794/1302158,2026-08-15
本文基于HiAgent 3.0 2026年8月稳定版编写。
[9] 文章当前生产日期
2026-08-24

