feat(aihr): add grounded agent shadow runtime
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
# ADR-002:采用受约束工具执行与证据分型
|
||||
|
||||
- 状态:Accepted
|
||||
- 日期:2026-08-04
|
||||
|
||||
## 决策
|
||||
|
||||
问师傅继续基于现有 Spring 服务实现受约束 Agent,不引入第三方自由 Agent 框架。LLM 负责语义规划和答案组织,服务端负责确定性事实校验、授权、工具执行、证据评估和引用复核。
|
||||
|
||||
工具结果分为 `DOCUMENT_EVIDENCE` 与 `VERIFIED_FACT`;用户陈述单独保存为 `USER_ASSERTION`。文档提到某系统只能证明文档内容,不能证明系统已接入或已查询实时数据。历史 LLM 回答不能成为事实来源。
|
||||
|
||||
`DocumentEvidence.supportedNeedCodes/claimTypes` 只表达语义分类器提出的候选支持关系。最终资格由服务端结合来源权威、来源类型、有效期、适用范围、正文逐槽位支持和逐 claim 蕴含共同判定;模型标签不能绕过门禁。正式场景模糊时 fail-closed。
|
||||
|
||||
执行循环最多三轮:首次工具执行、一次有明确证据缺口的补查、澄清或结束。最终模型只接收通过门禁的证据、事实、缺口、冲突和决策结果。
|
||||
|
||||
工具参数由注册 schema 约束:`MY_CURRENT_TASKS` 接收日期范围,`KNOWLEDGE_SEARCH` 不接收日期字段;授权作用域只从服务端 `ExecutionContext` 注入。运行时对调用 hash 去重,并限制调用数、候选数与耗时;超时作为受控状态结束当前链路。
|
||||
|
||||
## 原因
|
||||
|
||||
现有单工具计划、关键词早退、历史文本改写和数据工具 Citation 无法稳定支持多工具问题,也无法阻止文档事实与实时业务状态混淆。继续增加关键词和正则会扩大不可解释分支,不能解决授权、时效和证据完整性问题。
|
||||
|
||||
## 影响
|
||||
|
||||
- 保留现有统一 Agent API、认证解析、知识授权、RAG 治理和审计。
|
||||
- 金额候选/送模/复核成为确定性校验器的第一条纵向切片。
|
||||
- 旧路径在影子验证期间继续承担兼容回退。
|
||||
- 工具必须声明 schema、授权、时效、幂等、审计和允许意图。
|
||||
- `PARTIAL` 只能输出已覆盖 claim slots;零合格证据不调用答案模型。
|
||||
- 客户端最终按 `DecisionStatus` 展示完整、部分、需补充、无依据和冲突状态。
|
||||
Reference in New Issue
Block a user