Skip to content

失败学习闭环(Failure Learning Loop) ​

智能体的自进化不应该从「感觉」出发,而应该从哪一次交付没有通过规则出发。 这一页讲清楚:失败从哪里来、怎么变成可执行的改进、哪些线不允许越过。


为什么只学会话不够 ​

一个门面 agent 每天产生两类事实:

层例子过去是否进入复盘
交互层澄清轮次过多、预算耗尽、停在 input_required✅ 有指标
交付层输出不符合 output_schema、verification.rules 不通过❌ 没有
履约层争议、赔付、超时❌ 没有

交付层的失败价值最高:它自带 field + rule,可复现、可归因。 但过去它只写进了 verification_results,从未进入复盘输入。


失败怎么进入复盘 ​

verification_results(agentProfileId + createdAt + taskId)
        │  作为索引源:StateService.list() 必须给 taskId
        ▼
state: /tasks/{taskId}/agents/{agentId}/results|errors
        │
        ▼
ReviewDataSource.collect(agentId, date)
        │  规则级摘要:只带 field / rule / message
        ▼
buildReviewInput() → 指标 + 证据指针
        │
        ▼
每日复盘 prompt(失败必须点名规则与字段)

三条纪律 ​

  1. 不带交付内容:actualOutput / actualValue 在投影时丢弃,复盘模型拿不到客户数据。
  2. 不把「未知」当「失败」:passed 不是布尔值的记录直接跳过,避免误报。
  3. 指针可回查:verification:<taskId>:<index> 能定位到具体规则结果。

新增的指标 ​

指标含义
verificationRuns当天平台契约校验次数
verificationFailures其中不通过的次数
verificationFailureRate失败率
topFailedRules失败最集中的规则(最多 5 条)

topFailedRules 是关键:只有计数,模型只能写「失败了 3 次」; 有规则名和字段,才能提出可执行的修正。


从失败到行动 ​

观察允许的提案等级
同一规则 + 字段连续 3 天失败skill_gapL3(人工)
同一规则 + 字段单日集中失败 ≥ 3 次boundary_tweakL2
失败原因指向「该先问什么」boundary_tweakL2
规则本身疑似过时knowledgeL1

单次失败只能到 L2:一次脏输入不足以证明能力缺口。


主动提醒:verification_failure ​

交付规则反复失败时,不必等主人翻复盘报告:

  • 触发:连续 3 天同规则失败,或单日同规则失败 ≥ 3 次
  • 优先级:4(与知识到期同级),低容忍度下不会被过滤
  • 文案:只描述事实,例如 origin_country 的 required 规则连续 3 天未通过(共 7 次)
  • 落点:owner 收件箱 /agent/:agentId/inbox

观察外部世界(Observe 环) ​

除了自己交付失败,agent 还需要知道行业里发生了什么。

能力实现
抓取RSS 2.0 / Atom,单源超时 10s、响应上限 2MB、最多 50 条
安全SSRF 防护:拒绝本机/内网/CGNAT;每次重定向重新校验 URL 与 DNS
去重与相关性buildNewsDigest:内容指纹去重 + 关键词命中率
进入收件箱相关度 ≥ 0.5 的前 3 条 → source_digest 候选
时序02:00 抓取 → 03:30 复盘读取当天 digest

配源是管理员操作:

http
PUT /api/agent-rsi/:agentId/sources
{
  "sources": [
    { "id": "eu-packaging", "url": "https://example.com/feed.xml", "keywords": ["packaging"] }
  ]
}

明确不做 ​

不做原因
agent 自动改写业务算法变更只能落在知识 / 话术 / 路由 / 定价
L3 自动生效能力变更永远需要所有者批准
stale_result(结果未回读)没有「已读」埋点时不猜「你没看」
实时学习每日一次,避免客户会话中途行为变化

当前状态 ​

  • 复盘数据源、失败候选、收件箱、Observe 环均已实现并有真库 e2e
  • 每日 02:00 抓取、03:30 复盘与主动决策
  • 未做:前端源配置 UI(管理员场景先用 API)

Released under the MIT License.