系统与流程
检索链路、知识库与选型
规范按"章—节—条"结构化,保留完整条文与元数据;检索走"关键词 / 全文 + 向量召回 + Rerank",并按质量与成本完成模型选型。
RAG 检索链路
| 阶段 | 输入 | 处理规则 | 输出 | 控制措施 | 评测指标 |
|---|---|---|---|---|---|
| 规范结构化 | 规范正文 | 按章-节-条识别层级,保留完整条文 | 结构化条文 + 元数据 | 按条款编号切分并保留层级 | 条款完整率 |
| 向量化 | 结构化条文 | Embedding 写入向量库 | 向量索引 | 保留关键词索引并混合召回 | Recall@K |
| 问题解析 | 用户问题 + 历史上下文 | 识别意图、实体、条件和歧义 | 结构化查询意图 | 缺关键条件时先澄清 | 意图准确率 |
| 查询扩展 | 结构化查询意图 | 术语 / 同义词扩展、数字标准化 | 多组检索词 | 限定领域词典与原始实体 | Recall@K |
| 多路召回 | 检索词 | 关键词 / 全文 + 向量检索 | 候选条文集合 | 两路合并去重 | Recall@K / Precision@K |
| 重排与生成 | 候选条文 | Rerank 排序后按证据生成答案 | 结构化答案 + 条款引用 | 无相关证据返回空集合 | 引用正确率 |
知识库构建
标准正文按章、节、条划分层次;先做结构化拆解,才能谈条文规则解译。
| 层级 | 编号示例 | 说明 |
|---|---|---|
| 章 | 3 厂房和仓库 | 行首数字 + 空格 + 标题 |
| 节 | 3.1 火灾危险性分类 | 行首 数字.数字 + 标题 |
| 条 | 3.1.1 / 5.1.3A | 数字.数字.数字 + 空格 + 内容 |
模型横评与选型
横评采用 500 条测试集中的 60 条分层抽样样本,离线回放评测。
| 模型 | 准确性 | 完整性 | 忠实性 | 引用正确率 | 平均响应 | 成本 | 选型 |
|---|---|---|---|---|---|---|---|
| DeepSeek-R1 | 4.77 | 4.70 | 4.82 | 96.7% | 4.2s | 低 | 主模型 |
| Qwen | 4.58 | 4.50 | 4.62 | 95.0% | 2.8s | 中 | 备选 |
| GPT-4o | 4.85 | 4.78 | 4.87 | 98.3% | 3.2s | 高 | 质量基准 |
Prompt 与规则
| 模块 | 输入 | 输出 | 核心规则 | 禁止项 |
|---|---|---|---|---|
| 意图识别 | 用户消息 + 历史上下文 | 明确任务类型 | 一次完成路由判断 | 不直接生成无依据规范结论 |
| 歧义澄清 | 用户问题 + 实体 + 领域词典 | 澄清问题 + 候选项 | 只追问影响检索的关键条件 | 重复追问同一维度 |
| Rerank | 用户问题 + 候选条款 | 排序后的条款 ID | 直接相关优先 | 保留明显无关条款 |
| 答案生成 | 问题 + 检索证据 | clause / content / answer / confidence | 仅根据证据;必须引用;保留程度词 | 补充证据外的数字或结论 |
| 多轮问答 | 历史 + 本轮问题 + 本轮证据 | 结构化回答 | 历史用于理解指代,本轮证据决定结论 | 沿用旧结论替代本轮检索 |