ai-robot-core/spec/intent-driven-script/scope.md

119 lines
4.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 意图驱动话术流程 - 功能定界
## 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 必须产出的文档
- [x] `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 需求文档
```