对话 Cases 管理
本文档描述 Project Chameleon 的对话案例分类体系、数据模型与质量评估机制。
Case 分类体系
按意图分类
| 类别 |
说明 |
示例 |
faq |
常见问题 |
"如何修改密码?" |
task |
任务执行 |
"帮我查询订单" |
chitchat |
闲聊 |
"今天天气怎么样?" |
complaint |
投诉 |
"服务太慢了" |
feedback |
反馈 |
"建议增加 XX 功能" |
按结果分类
| 类别 |
说明 |
resolved |
问题已解决 |
escalated |
转人工处理 |
abandoned |
用户放弃 |
pending |
待跟进 |
按质量分类
| 等级 |
分数范围 |
说明 |
excellent |
4.5-5.0 |
优秀案例,可作为训练样本 |
good |
3.5-4.4 |
良好,符合预期 |
acceptable |
2.5-3.4 |
可接受,有改进空间 |
poor |
< 2.5 |
需要改进 |
数据模型
conversation_cases 表
CREATE TABLE conversation_cases (
id UUID PRIMARY KEY,
session_id UUID REFERENCES sessions(id),
intent_category VARCHAR(50),
result_category VARCHAR(50),
quality_score DECIMAL(2,1),
annotator_id UUID,
annotated_at TIMESTAMP,
notes TEXT
);
标注工作流
流程步骤
- 采样:从会话池中随机抽取待标注样本
- 分配:将样本分配给标注员
- 标注:标注员填写分类与评分
- 审核:质检员复核标注结果
- 入库:通过审核的标注写入数据库
质量评估标准
评分维度
| 维度 |
权重 |
说明 |
| 准确性 |
30% |
回答是否正确 |
| 相关性 |
25% |
是否切题 |
| 完整性 |
25% |
是否完整回答 |
| 礼貌性 |
20% |
语气是否得体 |
回放与审计
会话回放
支持按条件检索并回放历史会话:
# 回放指定会话
uv run python -m ai_service.tools.replay --session-id <id>
# 导出会话为 JSON
uv run python -m ai_service.tools.export --session-id <id> --output case.json
审计日志
所有标注操作记录在审计日志中:
| 字段 |
说明 |
timestamp |
操作时间 |
user_id |
操作人 |
action |
操作类型 |
case_id |
案例 ID |
changes |
变更内容 |
相关文档