4.0 KiB
4.0 KiB
意图驱动话术流程 - 功能定界
1. 功能边界(Scope)
1.1 核心目标
将现有的"固定话术"流程升级为"意图驱动"模式,使 AI 能够根据步骤意图和上下文灵活生成话术,而不是机械地返回预设文本。
1.2 覆盖范围(In Scope)
后端改造
- 数据模型扩展:在
ScriptFlow.steps中增加意图驱动字段(intent, script_mode, constraints 等) - 话术生成引擎:在 FlowEngine 中实现三种模式的话术生成逻辑
fixed:固定话术(向后兼容)flexible:意图驱动,AI 根据意图和约束实时生成template:模板填充,AI 填充变量部分
- 上下文传递:将对话历史、会话上下文传递给话术生成器
- 向后兼容:确保现有固定话术流程不受影响
前端改造
- 配置界面升级:在话术流程配置页面增加模式选择和意图配置
- 模式切换:支持三种模式的动态切换和对应配置项显示
- 约束条件管理:支持添加/删除话术约束标签
- 预览增强:在流程预览中显示意图信息
API 变更
- 数据结构扩展:ScriptFlow API 的 steps 字段增加新字段(向后兼容)
- 无需新增接口:复用现有的 CRUD 接口
1.3 不覆盖范围(Out of Scope)
- 意图识别:不涉及用户输入的意图识别(已有 IntentRule 模块负责)
- 多轮对话管理:不改变现有的流程状态机逻辑
- LLM 模型选择:使用现有的 LLM 调用机制,不涉及模型切换
- 性能优化:不涉及话术生成的缓存、预生成等优化(可后续迭代)
- A/B 测试:不涉及多版本话术的效果对比
2. 外部接口清单
2.1 需要修改的接口
| 接口路径 | 方法 | 变更类型 | 说明 |
|---|---|---|---|
/admin/script-flows |
POST | 扩展请求体 | steps 字段增加意图驱动字段 |
/admin/script-flows/{id} |
PUT | 扩展请求体 | 同上 |
/admin/script-flows/{id} |
GET | 扩展响应体 | 返回新增字段 |
2.2 内部依赖
| 模块 | 依赖关系 | 说明 |
|---|---|---|
| FlowEngine | 修改 | 增加话术生成逻辑 |
| Orchestrator | 调用 | 调用 LLM 生成话术 |
| ChatMessage | 读取 | 获取对话历史作为上下文 |
3. 文档清单
3.1 必须产出的文档
scope.md- 功能定界(本文档)requirements.md- 需求规范(用户故事 + 验收标准)design.md- 设计文档(数据结构 + 流程图)openapi.admin.yaml- 接口契约(扩展现有契约)tasks.md- 任务分解(Phase 划分)
3.2 可选文档
migration.md- 数据迁移方案(如需数据库变更)testing.md- 测试用例(重点场景)
4. 风险与依赖
4.1 技术风险
| 风险 | 影响 | 缓解措施 |
|---|---|---|
| LLM 生成话术不稳定 | 用户体验差 | 提供 fallback 到固定话术 |
| 生成延迟过高 | 影响对话流畅度 | 设置超时,超时返回默认话术 |
| 向后兼容性问题 | 现有流程失效 | 默认 script_mode=fixed |
4.2 依赖项
- LLM 服务可用性:依赖 Orchestrator 的 LLM 调用能力
- 数据库迁移:需要 Alembic 迁移脚本(如果修改表结构)
- 前端组件库:依赖 Element Plus 的表单组件
5. 验收标准概览
5.1 核心验收点
- 后端支持三种话术模式(fixed/flexible/template)
- 前端配置界面支持模式切换和意图配置
- 现有固定话术流程不受影响(向后兼容)
- flexible 模式能根据上下文生成不同话术
- 生成失败时有明确的 fallback 机制
5.2 非功能性要求
- 话术生成延迟 < 2 秒(P95)
- API 响应时间不增加 > 10%
- 数据库迁移无数据丢失
6. 下一步
确认功能边界后,请执行:
生成 spec/intent-driven-script/requirements.md 需求文档