664 lines
17 KiB
Markdown
664 lines
17 KiB
Markdown
|
|
# 话术流程管理使用指南
|
|||
|
|
|
|||
|
|
## 1. 概述
|
|||
|
|
|
|||
|
|
话术流程(Script Flow)是 AI 中台的多轮对话引导系统,用于按照预定义的步骤引导用户完成信息收集、问题诊断或业务流程。它通过状态机机制实现结构化的对话流程控制。
|
|||
|
|
|
|||
|
|
### 1.1 核心特性
|
|||
|
|
|
|||
|
|
- ✅ **多步骤编排**:支持创建包含多个步骤的对话流程
|
|||
|
|
- ✅ **拖拽排序**:可视化拖拽调整步骤顺序
|
|||
|
|
- ✅ **等待输入控制**:每个步骤可配置是否等待用户回复
|
|||
|
|
- ✅ **超时处理**:支持超时重复、跳过或转人工
|
|||
|
|
- ✅ **变量占位符**:话术内容支持动态变量替换
|
|||
|
|
- ✅ **流程预览**:可视化预览流程执行效果
|
|||
|
|
- ✅ **意图触发**:通过意图规则自动触发流程
|
|||
|
|
- ✅ **状态管理**:自动跟踪流程执行进度
|
|||
|
|
|
|||
|
|
### 1.2 典型应用场景
|
|||
|
|
|
|||
|
|
| 场景 | 说明 | 示例 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| **订单处理** | 收集订单信息并确认 | 收集收货地址 → 确认商品 → 选择支付方式 → 确认下单 |
|
|||
|
|
| **退货流程** | 引导用户完成退货申请 | 确认订单号 → 选择退货原因 → 上传凭证 → 提交申请 |
|
|||
|
|
| **问题诊断** | 逐步排查用户问题 | 确认设备型号 → 检查网络连接 → 重启设备 → 测试结果 |
|
|||
|
|
| **信息采集** | 收集用户需求或反馈 | 询问需求类型 → 收集详细描述 → 确认联系方式 → 提交工单 |
|
|||
|
|
| **预约服务** | 引导用户完成预约 | 选择服务类型 → 选择时间 → 填写联系方式 → 确认预约 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 2. 功能介绍
|
|||
|
|
|
|||
|
|
### 2.1 流程列表页面
|
|||
|
|
|
|||
|
|
**访问路径**:AI 中台管理后台 → 智能路由 → 话术流程管理
|
|||
|
|
|
|||
|
|
**页面功能**:
|
|||
|
|
- 查看所有话术流程列表
|
|||
|
|
- 显示流程名称、描述、步骤数、关联规则数、状态、更新时间
|
|||
|
|
- 快速启用/禁用流程
|
|||
|
|
- 创建、编辑、预览、删除流程
|
|||
|
|
|
|||
|
|
**列表字段说明**:
|
|||
|
|
|
|||
|
|
| 字段 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| 流程名称 | 流程的唯一标识名称 |
|
|||
|
|
| 描述 | 流程的用途说明(可选) |
|
|||
|
|
| 步骤数 | 流程包含的步骤总数 |
|
|||
|
|
| 关联规则 | 触发该流程的意图规则数量 |
|
|||
|
|
| 状态 | 启用/禁用开关 |
|
|||
|
|
| 更新时间 | 最后修改时间 |
|
|||
|
|
|
|||
|
|
### 2.2 流程编辑器
|
|||
|
|
|
|||
|
|
**核心组件**:
|
|||
|
|
1. **基本信息区**:配置流程名称、描述、启用状态
|
|||
|
|
2. **步骤编辑区**:可视化编辑流程步骤
|
|||
|
|
3. **拖拽排序**:通过拖拽图标调整步骤顺序
|
|||
|
|
4. **步骤配置**:为每个步骤配置详细参数
|
|||
|
|
|
|||
|
|
### 2.3 流程预览器
|
|||
|
|
|
|||
|
|
**功能**:
|
|||
|
|
- 时间轴可视化展示流程步骤
|
|||
|
|
- 模拟流程执行过程
|
|||
|
|
- 高亮显示当前步骤
|
|||
|
|
- 查看步骤配置详情
|
|||
|
|
- 支持上一步/下一步/重置操作
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 3. 使用步骤
|
|||
|
|
|
|||
|
|
### 3.1 创建话术流程
|
|||
|
|
|
|||
|
|
#### 步骤 1:进入创建页面
|
|||
|
|
|
|||
|
|
1. 点击页面右上角的 **"新建流程"** 按钮
|
|||
|
|
2. 弹出流程编辑对话框
|
|||
|
|
|
|||
|
|
#### 步骤 2:填写基本信息
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
流程名称:退货流程引导 (必填,建议简洁明确)
|
|||
|
|
描述:引导用户完成退货申请 (可选,说明流程用途)
|
|||
|
|
启用状态:✓ 启用 (默认启用)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 步骤 3:添加流程步骤
|
|||
|
|
|
|||
|
|
点击 **"添加步骤"** 按钮,配置每个步骤:
|
|||
|
|
|
|||
|
|
**步骤 1 配置示例**:
|
|||
|
|
```
|
|||
|
|
话术内容:您好,我来帮您处理退货申请。请提供您的订单号。
|
|||
|
|
等待输入:✓ 开启
|
|||
|
|
超时时间:60 秒
|
|||
|
|
超时动作:重复当前步骤
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**步骤 2 配置示例**:
|
|||
|
|
```
|
|||
|
|
话术内容:收到订单号 {{order_id}},请问您的退货原因是什么?
|
|||
|
|
1. 商品质量问题
|
|||
|
|
2. 不符合预期
|
|||
|
|
3. 其他原因
|
|||
|
|
等待输入:✓ 开启
|
|||
|
|
超时时间:120 秒
|
|||
|
|
超时动作:转人工
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**步骤 3 配置示例**:
|
|||
|
|
```
|
|||
|
|
话术内容:好的,已记录您的退货原因。请上传商品照片或相关凭证。
|
|||
|
|
等待输入:✓ 开启
|
|||
|
|
超时时间:180 秒
|
|||
|
|
超时动作:跳过进入下一步
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**步骤 4 配置示例**:
|
|||
|
|
```
|
|||
|
|
话术内容:感谢您的配合!退货申请已提交,工单号为 {{ticket_id}}。我们将在 1-3 个工作日内处理,请保持手机畅通。
|
|||
|
|
等待输入:✗ 关闭
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 步骤 4:调整步骤顺序
|
|||
|
|
|
|||
|
|
- 鼠标悬停在步骤左侧的 **拖拽图标** 上
|
|||
|
|
- 按住鼠标左键拖动步骤到目标位置
|
|||
|
|
- 释放鼠标完成排序
|
|||
|
|
|
|||
|
|
#### 步骤 5:保存流程
|
|||
|
|
|
|||
|
|
- 点击 **"创建"** 按钮保存流程
|
|||
|
|
- 系统自动分配流程 ID
|
|||
|
|
- 返回流程列表页面
|
|||
|
|
|
|||
|
|
### 3.2 编辑话术流程
|
|||
|
|
|
|||
|
|
1. 在流程列表中找到目标流程
|
|||
|
|
2. 点击 **"编辑"** 按钮
|
|||
|
|
3. 修改流程信息或步骤配置
|
|||
|
|
4. 点击 **"保存"** 按钮
|
|||
|
|
|
|||
|
|
**注意事项**:
|
|||
|
|
- 修改后立即生效,影响正在执行的流程
|
|||
|
|
- 建议在低峰期修改重要流程
|
|||
|
|
- 修改前可先禁用流程,测试无误后再启用
|
|||
|
|
|
|||
|
|
### 3.3 预览话术流程
|
|||
|
|
|
|||
|
|
1. 在流程列表中找到目标流程
|
|||
|
|
2. 点击 **"预览"** 按钮
|
|||
|
|
3. 在右侧抽屉中查看流程时间轴
|
|||
|
|
4. 使用 **上一步/下一步** 按钮模拟流程执行
|
|||
|
|
5. 查看每个步骤的配置详情
|
|||
|
|
|
|||
|
|
**预览功能**:
|
|||
|
|
- 时间轴可视化展示所有步骤
|
|||
|
|
- 当前步骤高亮显示(蓝色边框)
|
|||
|
|
- 已完成步骤显示为绿色
|
|||
|
|
- 未执行步骤显示为灰色
|
|||
|
|
- 显示步骤的等待输入、超时配置
|
|||
|
|
|
|||
|
|
### 3.4 删除话术流程
|
|||
|
|
|
|||
|
|
1. 在流程列表中找到目标流程
|
|||
|
|
2. 点击 **"删除"** 按钮
|
|||
|
|
3. 确认删除操作
|
|||
|
|
|
|||
|
|
**警告**:
|
|||
|
|
- 删除操作不可恢复
|
|||
|
|
- 如果有意图规则关联该流程,删除后规则将失效
|
|||
|
|
- 建议先禁用流程观察一段时间,确认无影响后再删除
|
|||
|
|
|
|||
|
|
### 3.5 启用/禁用流程
|
|||
|
|
|
|||
|
|
**方式 1:列表页快速切换**
|
|||
|
|
- 直接点击流程列表中的 **状态开关**
|
|||
|
|
- 立即生效
|
|||
|
|
|
|||
|
|
**方式 2:编辑页面修改**
|
|||
|
|
- 进入流程编辑页面
|
|||
|
|
- 修改 **启用状态** 开关
|
|||
|
|
- 保存后生效
|
|||
|
|
|
|||
|
|
**禁用效果**:
|
|||
|
|
- 禁用后,意图规则无法触发该流程
|
|||
|
|
- 正在执行的流程实例不受影响,继续执行完成
|
|||
|
|
- 流程数据保留,可随时重新启用
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 4. 步骤配置详解
|
|||
|
|
|
|||
|
|
### 4.1 话术内容
|
|||
|
|
|
|||
|
|
**功能**:定义该步骤向用户展示的话术文本。
|
|||
|
|
|
|||
|
|
**支持变量占位符**:
|
|||
|
|
```
|
|||
|
|
语法:{{variable_name}}
|
|||
|
|
|
|||
|
|
示例:
|
|||
|
|
- 您的订单号是 {{order_id}}
|
|||
|
|
- 尊敬的 {{customer_name}},您好!
|
|||
|
|
- 当前时间:{{current_time}}
|
|||
|
|
- 渠道:{{channel_type}}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**变量来源**:
|
|||
|
|
- 会话上下文变量
|
|||
|
|
- 用户输入提取的信息
|
|||
|
|
- 系统内置变量(时间、渠道等)
|
|||
|
|
|
|||
|
|
**最佳实践**:
|
|||
|
|
- 话术简洁明了,避免过长
|
|||
|
|
- 使用礼貌用语,保持专业
|
|||
|
|
- 明确告知用户需要做什么
|
|||
|
|
- 提供选项时使用编号列表
|
|||
|
|
|
|||
|
|
### 4.2 等待用户输入
|
|||
|
|
|
|||
|
|
**功能**:控制该步骤是否需要等待用户回复。
|
|||
|
|
|
|||
|
|
**开启(✓)**:
|
|||
|
|
- 系统发送话术后,等待用户回复
|
|||
|
|
- 收到用户回复后,根据条件推进到下一步
|
|||
|
|
- 如果超时未回复,执行超时动作
|
|||
|
|
|
|||
|
|
**关闭(✗)**:
|
|||
|
|
- 系统发送话术后,立即推进到下一步
|
|||
|
|
- 适用于纯信息告知的步骤(如确认信息、结束语)
|
|||
|
|
|
|||
|
|
**使用场景**:
|
|||
|
|
- ✓ 需要收集信息:订单号、退货原因、联系方式
|
|||
|
|
- ✓ 需要用户确认:是/否、选择选项
|
|||
|
|
- ✗ 纯信息展示:流程说明、结果通知、感谢语
|
|||
|
|
|
|||
|
|
### 4.3 超时时间
|
|||
|
|
|
|||
|
|
**功能**:设置等待用户回复的最长时间(单位:秒)。
|
|||
|
|
|
|||
|
|
**取值范围**:5 - 300 秒
|
|||
|
|
|
|||
|
|
**推荐配置**:
|
|||
|
|
- **简单问题**(如是/否):30-60 秒
|
|||
|
|
- **需要查找信息**(如订单号):60-120 秒
|
|||
|
|
- **需要操作**(如上传图片):120-180 秒
|
|||
|
|
- **复杂问题**(如详细描述):180-300 秒
|
|||
|
|
|
|||
|
|
**注意事项**:
|
|||
|
|
- 超时时间过短:用户体验差,容易误触发超时
|
|||
|
|
- 超时时间过长:流程卡住时间长,影响效率
|
|||
|
|
- 根据实际业务场景调整
|
|||
|
|
|
|||
|
|
### 4.4 超时动作
|
|||
|
|
|
|||
|
|
**功能**:定义超时后的处理策略。
|
|||
|
|
|
|||
|
|
#### 选项 1:重复当前步骤
|
|||
|
|
|
|||
|
|
**行为**:重新发送当前步骤的话术,再次等待用户回复。
|
|||
|
|
|
|||
|
|
**适用场景**:
|
|||
|
|
- 用户可能暂时离开,需要提醒
|
|||
|
|
- 问题简单,用户可能忘记回复
|
|||
|
|
- 重要信息收集,不能跳过
|
|||
|
|
|
|||
|
|
**示例话术**:
|
|||
|
|
```
|
|||
|
|
首次:请提供您的订单号。
|
|||
|
|
重复:您还在吗?请提供您的订单号,以便我帮您处理。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 选项 2:跳过进入下一步
|
|||
|
|
|
|||
|
|
**行为**:跳过当前步骤,直接进入下一步。
|
|||
|
|
|
|||
|
|
**适用场景**:
|
|||
|
|
- 可选信息收集(如备注、补充说明)
|
|||
|
|
- 有默认值或兜底方案
|
|||
|
|
- 不影响流程继续执行
|
|||
|
|
|
|||
|
|
**注意事项**:
|
|||
|
|
- 确保下一步不依赖当前步骤的输入
|
|||
|
|
- 在后续步骤中处理缺失信息的情况
|
|||
|
|
|
|||
|
|
#### 选项 3:转人工
|
|||
|
|
|
|||
|
|
**行为**:结束流程,将会话转接到人工客服。
|
|||
|
|
|
|||
|
|
**适用场景**:
|
|||
|
|
- 关键信息收集失败
|
|||
|
|
- 用户长时间无响应
|
|||
|
|
- 流程无法继续执行
|
|||
|
|
|
|||
|
|
**效果**:
|
|||
|
|
- 设置 `shouldTransfer=true`
|
|||
|
|
- 返回转人工提示语
|
|||
|
|
- 流程实例标记为"已完成"
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 5. 与意图规则关联
|
|||
|
|
|
|||
|
|
### 5.1 创建触发规则
|
|||
|
|
|
|||
|
|
话术流程需要通过 **意图规则** 触发。
|
|||
|
|
|
|||
|
|
**步骤**:
|
|||
|
|
1. 进入 **意图规则管理** 页面
|
|||
|
|
2. 点击 **"新建规则"** 按钮
|
|||
|
|
3. 配置规则信息:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
规则名称:退货意图
|
|||
|
|
关键词:退货、退款、不想要了、申请退货
|
|||
|
|
正则表达式:退.*货、如何.*退、想.*退
|
|||
|
|
优先级:100
|
|||
|
|
响应类型:启动话术流程
|
|||
|
|
关联流程:选择 "退货流程引导"
|
|||
|
|
启用状态:✓ 启用
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
4. 保存规则
|
|||
|
|
|
|||
|
|
### 5.2 触发流程
|
|||
|
|
|
|||
|
|
**触发条件**:
|
|||
|
|
- 用户消息匹配意图规则的关键词或正则表达式
|
|||
|
|
- 规则的响应类型为 `flow`
|
|||
|
|
- 规则和流程均为启用状态
|
|||
|
|
|
|||
|
|
**触发流程**:
|
|||
|
|
```
|
|||
|
|
用户输入:我想退货
|
|||
|
|
↓
|
|||
|
|
意图识别:命中 "退货意图" 规则
|
|||
|
|
↓
|
|||
|
|
启动流程:创建 "退货流程引导" 实例
|
|||
|
|
↓
|
|||
|
|
执行步骤 1:发送第一步话术
|
|||
|
|
↓
|
|||
|
|
等待用户输入:收集订单号
|
|||
|
|
↓
|
|||
|
|
执行步骤 2:发送第二步话术
|
|||
|
|
↓
|
|||
|
|
...
|
|||
|
|
↓
|
|||
|
|
流程完成:恢复正常对话
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 5.3 流程执行优先级
|
|||
|
|
|
|||
|
|
**优先级规则**:
|
|||
|
|
1. **进行中的流程** > 意图识别 > RAG 检索
|
|||
|
|
2. 如果会话存在进行中的流程实例,优先处理流程逻辑
|
|||
|
|
3. 流程完成后,恢复正常的意图识别和 RAG 流程
|
|||
|
|
|
|||
|
|
**示例**:
|
|||
|
|
```
|
|||
|
|
会话状态:退货流程进行中(步骤 2)
|
|||
|
|
用户输入:营业时间是什么?
|
|||
|
|
系统行为:忽略 "营业时间" 意图,继续处理流程步骤 2
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 6. 最佳实践
|
|||
|
|
|
|||
|
|
### 6.1 流程设计原则
|
|||
|
|
|
|||
|
|
#### 1. 步骤数量适中
|
|||
|
|
- **推荐**:3-7 个步骤
|
|||
|
|
- **避免**:步骤过多(>10 步)导致用户疲劳
|
|||
|
|
- **避免**:步骤过少(<3 步)无法体现流程价值
|
|||
|
|
|
|||
|
|
#### 2. 话术简洁明确
|
|||
|
|
- 每个步骤的话术控制在 50-100 字
|
|||
|
|
- 明确告知用户需要做什么
|
|||
|
|
- 提供示例或选项帮助用户理解
|
|||
|
|
|
|||
|
|
#### 3. 合理设置超时
|
|||
|
|
- 根据任务复杂度设置超时时间
|
|||
|
|
- 重要步骤使用 "重复" 或 "转人工"
|
|||
|
|
- 可选步骤使用 "跳过"
|
|||
|
|
|
|||
|
|
#### 4. 提供退出机制
|
|||
|
|
- 在话术中告知用户如何退出流程
|
|||
|
|
- 示例:"如需退出流程,请回复 '退出' 或 '转人工'"
|
|||
|
|
|
|||
|
|
### 6.2 话术编写技巧
|
|||
|
|
|
|||
|
|
#### 1. 使用礼貌用语
|
|||
|
|
```
|
|||
|
|
✓ 好的:您好,我来帮您处理退货申请。
|
|||
|
|
✗ 不好:提供订单号。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 2. 明确指令
|
|||
|
|
```
|
|||
|
|
✓ 好的:请提供您的订单号(格式:20240227001)。
|
|||
|
|
✗ 不好:请提供信息。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 3. 提供选项
|
|||
|
|
```
|
|||
|
|
✓ 好的:请选择退货原因:
|
|||
|
|
1. 商品质量问题
|
|||
|
|
2. 不符合预期
|
|||
|
|
3. 其他原因
|
|||
|
|
✗ 不好:为什么要退货?
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 4. 确认信息
|
|||
|
|
```
|
|||
|
|
✓ 好的:您的订单号是 {{order_id}},退货原因是 {{reason}},确认无误吗?(是/否)
|
|||
|
|
✗ 不好:信息已记录。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 6.3 测试与优化
|
|||
|
|
|
|||
|
|
#### 1. 测试流程
|
|||
|
|
- 创建流程后,先设置为 "禁用" 状态
|
|||
|
|
- 使用测试账号模拟完整流程
|
|||
|
|
- 测试各种用户输入场景(正常、异常、超时)
|
|||
|
|
- 确认无误后再启用
|
|||
|
|
|
|||
|
|
#### 2. 监控数据
|
|||
|
|
- 定期查看流程执行统计
|
|||
|
|
- 关注步骤完成率、超时率、转人工率
|
|||
|
|
- 识别用户卡住的步骤
|
|||
|
|
|
|||
|
|
#### 3. 持续优化
|
|||
|
|
- 根据数据调整话术和超时配置
|
|||
|
|
- 优化步骤顺序和数量
|
|||
|
|
- 收集用户反馈改进流程
|
|||
|
|
|
|||
|
|
### 6.4 常见问题处理
|
|||
|
|
|
|||
|
|
#### 问题 1:用户中途退出流程
|
|||
|
|
**解决方案**:
|
|||
|
|
- 在话术中明确告知退出方式
|
|||
|
|
- 设置关键词触发退出(如 "退出"、"转人工")
|
|||
|
|
- 超时后自动转人工
|
|||
|
|
|
|||
|
|
#### 问题 2:用户输入不符合预期
|
|||
|
|
**解决方案**:
|
|||
|
|
- 在话术中提供示例和格式说明
|
|||
|
|
- 使用选项列表限制用户输入
|
|||
|
|
- 设置输入验证和错误提示
|
|||
|
|
|
|||
|
|
#### 问题 3:流程执行时间过长
|
|||
|
|
**解决方案**:
|
|||
|
|
- 减少步骤数量,合并相似步骤
|
|||
|
|
- 缩短超时时间
|
|||
|
|
- 将复杂流程拆分为多个子流程
|
|||
|
|
|
|||
|
|
#### 问题 4:流程与意图规则冲突
|
|||
|
|
**解决方案**:
|
|||
|
|
- 提高流程触发规则的优先级
|
|||
|
|
- 在流程执行期间,系统自动优先处理流程逻辑
|
|||
|
|
- 避免创建过于宽泛的意图规则
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 7. API 参考
|
|||
|
|
|
|||
|
|
### 7.1 列表查询
|
|||
|
|
|
|||
|
|
**接口**:`GET /admin/script-flows`
|
|||
|
|
|
|||
|
|
**请求参数**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"is_enabled": true // 可选,筛选启用/禁用的流程
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**响应示例**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"data": [
|
|||
|
|
{
|
|||
|
|
"id": "550e8400-e29b-41d4-a716-446655440000",
|
|||
|
|
"name": "退货流程引导",
|
|||
|
|
"description": "引导用户完成退货申请",
|
|||
|
|
"step_count": 4,
|
|||
|
|
"is_enabled": true,
|
|||
|
|
"linked_rule_count": 2,
|
|||
|
|
"created_at": "2026-02-27T10:00:00",
|
|||
|
|
"updated_at": "2026-02-27T15:30:00"
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 7.2 创建流程
|
|||
|
|
|
|||
|
|
**接口**:`POST /admin/script-flows`
|
|||
|
|
|
|||
|
|
**请求示例**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"name": "退货流程引导",
|
|||
|
|
"description": "引导用户完成退货申请",
|
|||
|
|
"is_enabled": true,
|
|||
|
|
"steps": [
|
|||
|
|
{
|
|||
|
|
"step_id": "step_001",
|
|||
|
|
"order": 1,
|
|||
|
|
"content": "您好,我来帮您处理退货申请。请提供您的订单号。",
|
|||
|
|
"wait_for_input": true,
|
|||
|
|
"timeout_seconds": 60,
|
|||
|
|
"timeout_action": "repeat",
|
|||
|
|
"next_conditions": []
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"step_id": "step_002",
|
|||
|
|
"order": 2,
|
|||
|
|
"content": "收到订单号 {{order_id}},请问您的退货原因是什么?",
|
|||
|
|
"wait_for_input": true,
|
|||
|
|
"timeout_seconds": 120,
|
|||
|
|
"timeout_action": "transfer",
|
|||
|
|
"next_conditions": []
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**响应示例**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"id": "550e8400-e29b-41d4-a716-446655440000",
|
|||
|
|
"name": "退货流程引导",
|
|||
|
|
"description": "引导用户完成退货申请",
|
|||
|
|
"step_count": 2,
|
|||
|
|
"is_enabled": true,
|
|||
|
|
"created_at": "2026-02-27T16:00:00",
|
|||
|
|
"updated_at": "2026-02-27T16:00:00"
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 7.3 查询详情
|
|||
|
|
|
|||
|
|
**接口**:`GET /admin/script-flows/{flow_id}`
|
|||
|
|
|
|||
|
|
**响应示例**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"id": "550e8400-e29b-41d4-a716-446655440000",
|
|||
|
|
"name": "退货流程引导",
|
|||
|
|
"description": "引导用户完成退货申请",
|
|||
|
|
"is_enabled": true,
|
|||
|
|
"steps": [
|
|||
|
|
{
|
|||
|
|
"step_id": "step_001",
|
|||
|
|
"order": 1,
|
|||
|
|
"content": "您好,我来帮您处理退货申请。请提供您的订单号。",
|
|||
|
|
"wait_for_input": true,
|
|||
|
|
"timeout_seconds": 60,
|
|||
|
|
"timeout_action": "repeat",
|
|||
|
|
"next_conditions": []
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"created_at": "2026-02-27T16:00:00",
|
|||
|
|
"updated_at": "2026-02-27T16:00:00"
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 7.4 更新流程
|
|||
|
|
|
|||
|
|
**接口**:`PUT /admin/script-flows/{flow_id}`
|
|||
|
|
|
|||
|
|
**请求示例**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"name": "退货流程引导(优化版)",
|
|||
|
|
"is_enabled": true,
|
|||
|
|
"steps": [
|
|||
|
|
// 更新后的步骤列表
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 7.5 删除流程
|
|||
|
|
|
|||
|
|
**接口**:`DELETE /admin/script-flows/{flow_id}`
|
|||
|
|
|
|||
|
|
**响应**:204 No Content
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 8. 数据模型
|
|||
|
|
|
|||
|
|
### 8.1 ScriptFlow(流程实体)
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 必填 | 说明 |
|
|||
|
|
|------|------|------|------|
|
|||
|
|
| `id` | UUID | 自动生成 | 流程唯一标识 |
|
|||
|
|
| `tenant_id` | string | ✅ | 租户 ID |
|
|||
|
|
| `name` | string | ✅ | 流程名称 |
|
|||
|
|
| `description` | string | ❌ | 流程描述 |
|
|||
|
|
| `steps` | FlowStep[] | ✅ | 步骤列表 |
|
|||
|
|
| `is_enabled` | boolean | ✅ | 是否启用(默认 true) |
|
|||
|
|
| `created_at` | datetime | 自动 | 创建时间 |
|
|||
|
|
| `updated_at` | datetime | 自动 | 更新时间 |
|
|||
|
|
|
|||
|
|
### 8.2 FlowStep(步骤实体)
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 必填 | 说明 |
|
|||
|
|
|------|------|------|------|
|
|||
|
|
| `step_id` | string | ✅ | 步骤唯一标识 |
|
|||
|
|
| `order` | int | ✅ | 步骤顺序(从 1 开始) |
|
|||
|
|
| `content` | string | ✅ | 话术内容 |
|
|||
|
|
| `wait_for_input` | boolean | ✅ | 是否等待用户输入 |
|
|||
|
|
| `timeout_seconds` | int | ❌ | 超时时间(5-300 秒) |
|
|||
|
|
| `timeout_action` | string | ❌ | 超时动作:repeat/skip/transfer |
|
|||
|
|
| `next_conditions` | NextCondition[] | ❌ | 下一步条件(预留) |
|
|||
|
|
|
|||
|
|
### 8.3 超时动作枚举
|
|||
|
|
|
|||
|
|
| 值 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| `repeat` | 重复当前步骤 |
|
|||
|
|
| `skip` | 跳过进入下一步 |
|
|||
|
|
| `transfer` | 转人工 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 9. 总结
|
|||
|
|
|
|||
|
|
话术流程管理是 AI 中台的核心功能之一,通过可视化的流程编排,实现结构化的多轮对话引导。
|
|||
|
|
|
|||
|
|
### 9.1 核心价值
|
|||
|
|
|
|||
|
|
- **提升效率**:自动化处理标准流程,减少人工介入
|
|||
|
|
- **保证质量**:标准化话术,确保服务一致性
|
|||
|
|
- **优化体验**:引导式对话,降低用户操作难度
|
|||
|
|
- **数据收集**:结构化收集信息,便于后续处理
|
|||
|
|
|
|||
|
|
### 9.2 使用流程
|
|||
|
|
|
|||
|
|
创建流程 → 配置步骤 → 关联意图规则 → 测试验证 → 启用上线 → 监控优化
|
|||
|
|
|
|||
|
|
### 9.3 注意事项
|
|||
|
|
|
|||
|
|
1. 流程设计要简洁,避免步骤过多
|
|||
|
|
2. 话术要清晰明确,提供必要的示例
|
|||
|
|
3. 合理设置超时时间和超时动作
|
|||
|
|
4. 测试充分后再上线
|
|||
|
|
5. 定期监控数据并优化流程
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**文档版本**:v1.0
|
|||
|
|
**生成时间**:2026-02-27
|
|||
|
|
**维护状态**:✅ 活跃维护
|
|||
|
|
**相关文档**:
|
|||
|
|
- [意图规则使用指南](./intent-rule-usage.md)
|
|||
|
|
- [AI 中台对接文档](../AI中台对接文档.md)
|
|||
|
|
- [Prompt 模板管理分析](./prompt-template-analysis.md)
|