2.4 KiB
2.4 KiB
ISS-004 Executor 域级检索水位控制(Phase 2)
状态:已归档(范围被 ISS-014 吸收) 严重程度:低 发现时间:2026-07-01 关联:ISS-002(Executor 无约束重复调用 lookup_knowledge) 归档时间:2026-07-23
归档说明
本问题不再按旧 Executor 的 Session/Domain 水位矩阵独立实施。当前架构已经由 ISS-014 收敛为单体 Diagnosis ReAct Agent 与 Harness,重复 lookup_knowledge、证据轮次上限和预算耗尽前强制生成最终 Draft 统一由 ISS-014 的 Agent 硬停止策略处理。
原问题仍然有效,但实现入口、生命周期边界和验收方式已经改变;剩余工作统一追踪到 ISS-015 Diagnosis Agent 硬停止策略,本 Issue 以“范围被吸收”归档,不表示硬停止策略已经完成。
现象
ISS-002 修复后,lookup_knowledge 调用已经从 20+ 次收敛到约 10 次,但仍存在同一批 domain 之间反复横跳的冗余调用。
当前文档级去重能阻止重复内容进入上下文,但不能阻止 LLM 继续发起相似检索请求。
根因
Prompt 软约束依赖 LLM 自觉遵守。在 ReactAgent 自主决策模式下,模型倾向于“再确认一步”,而不是信任已有信息。
影响
- 不影响核心答案正确性。
- 增加每轮检索耗时和 token 消耗。
- 长会话中冗余调用会随 session 继续累积。
建议方案
在代码层增加域级检索水位控制,而不是只依赖 prompt。
水位指标可以包括:
- 当前 session 内
lookup_knowledge调用次数。 - 当前 session 已检索 domain 数量。
- 当前 session token 消耗。
- 最近一次检索结果的
relevanceLevel。
决策矩阵示例:
| 水位 | PRECISE | HIGHLY_RELEVANT | REFERENCE | DEDUPED |
|---|---|---|---|---|
| 低 | 可继续 | 可继续 | 可定向补充 | 停止 |
| 中 | 可继续 | 建议停止 | 可定向补充 | 停止 |
| 高 | 停止 | 停止 | 停止 | 停止 |
相关文件
src/main/java/com/superbiz/agent/dto/LookupResult.javasrc/main/java/com/superbiz/agent/tool/RetrievedDocTracker.javasrc/main/java/com/superbiz/agent/tool/LookupKnowledgeTool.javasrc/main/resources/prompts/chat-executor-prompt.mdmvp/architecture/archive/2026-07-05-legacy/action-memory-relevance.md