- RetrievedDocTracker 升级为域级+文档级双层记录(Map<sessionId, Map<domain, Set<filePath>>>) - LookupKnowledgeTool 新增 Min-Max 归一化层(BGE-M3 L2 距离→[0,1] similarity) - 三等级 relevanceLevel:PRECISE / HIGHLY_RELEVANT / REFERENCE + completenessHint 兜底信号 - LookupResult 新增 relevanceLevel、completenessHint、retrievedDomainsThisSession - Executor prompt 重写:4 条检索约束 + 合法出口不查全不追责,重复检索才惩罚 - 入库可观测性:V010 迁移 + retrieval_details JSON 扩展 - 归档 executor-action-memory-relevance change
2.8 KiB
2.8 KiB
Evidence: executor-action-memory-relevance
Evidence-driven 结论
E1: relevanceLevel 三等级语义清晰度
- 来源: Grill 阶段 Question Pool #1
- 查证结果: 三个等级语义明确,边界清晰:
- PRECISE:L0 唯一精确匹配,LLM 应直接使用
- HIGHLY_RELEVANT:归一化 similarity ≥ 0.75,高度相关
- REFERENCE:归一化 similarity ≥ 0.5,相关参考
- 结论: LLM 误解风险低,语义边界足够清晰
E2: L1 Score 值域与归一化阈值
- 来源: Grill 阶段 Question Pool #2
- 查证结果:
- L1 score 是 L2 距离,值域 [0, +∞)
- BGE-M3 输出为 L2 归一化单位向量(实测范数=1.00000002),L2 距离数学硬上界 = 2.0
- Min-Max 归一化公式:
similarity = 1 - min(l2Score, 2.0) / 2.0
- 结论: 使用
maxL2Distance=2.0作为归一化上界,阈值 yml 可配置
E3: L1 Domain 提取兜底路径
- 来源: Grill 阶段 Question Pool #3
- 查证结果:
- L0 的 domain 可从
KnowledgeEntry.getCategory()直接获取 - L1 结果的 domain 需解析
SearchResult.metadataJSON 字符串 - 当前知识库设计下 L0 大概率先命中,L1 domain 提取作为兜底
- L0 的 domain 可从
- 结论: 先尝试 L0 category,失败时解析 L1 metadata JSON(try-catch 兜底)
E4: 历史数据不回填
- 来源: Grill 阶段 Question Pool #5
- 查证结果: 新列
relevance_level和dedup_reason均为 nullable,不影响现有查询 - 结论: 历史记录保持 null,不需要回填迁移
E5: BGE-M3 L2 归一化实测验证
- 来源: Specify 阶段 + FullPipelineSmokeTest
- 查证结果:
- embeddingBgeM3Works() 测试新增 L2 范数断言
- 实测范数 = 1.00000002,误差 < 0.01
- 测试通过,BGE-M3 输出确认为 L2 归一化单位向量
- 结论: L2 距离上界 = 2.0 的数学依据成立
E6: V010 迁移验证
- 来源: Apply 阶段运行时验证
- 查证结果:
- Flyway V010 迁移成功执行
relevance_levelVARCHAR(20) 列可空,已正确写入dedup_reasonVARCHAR(32) 列可空,已正确写入retrieval_detailsJSON 扩展字段(l1_top_similarity、relevance_level、completeness_hint、retrieved_domains、dedup_reason)全部写入
- 结论: 入库可观测性符合设计
E7: 数据库数据校验
- 来源: Apply 阶段运行时验证
- 查证结果:
- session
b66d799e共 10 条 lookup_knowledge 调用 - id=138: L2=0.383 → similarity=0.8085 → HIGHLY_RELEVANT(符合预期)
- id=139-147: 主要为 REFERENCE,doc_retrieved 去重正常触发
- retrieved_domains 域追踪:
[infrastructure]→[infrastructure, api]正常扩展
- session
- 结论: 归一化、行动记忆、去重机制数据层面全部验证通过