Skip to content

可靠性与失败

English | 中文

Agent 的失败方式与确定性服务不同。模型非确定性,工具可能部分失败,上下文可能丢失, 重试可能重复副作用。可靠性是架构属性,不是重试设置。

失败域

域 示例失败 控制
模型 超时、限流、行为变化 路由、超时、回退、重新验证
工具 部分失败、错误响应 校验、幂等、补偿
上下文 缺失或过期 溯源、新鲜度、上下文检查
流程 崩溃、重启、状态丢失 持久流程、检查点
协调 重复或冲突工作 租约、声明、幂等
人类 审批瓶颈、升级遗漏 队列、SLA、升级路径
经济 成本失控 预算、步数限制、路由

核心概念

  • 幂等。 重复命令不应重复效果。
  • 持久性。 状态跨进程或设备故障存活。
  • 恢复。 从记录状态继续。
  • 补偿。 已完成步骤可以撤销或抵消。
  • 超时。 慢依赖不会永远挂起。
  • 退避。 重试不会放大故障。
  • 熔断。 隔离失败依赖。
  • 检查点。 运行可恢复而不重放一切。
  • 预算。 Agent 不能无界花费或行动。

Agent 特有失败模式

  • 非确定性重试。 重试产生不同计划或输出。
  • 效果重复。 崩溃后工具调用被重复。
  • 上下文漂移。 Agent 跨步骤丢失目标或约束。
  • 工具级联。 一个失败工具引发一连串补偿调用。
  • 审批死锁。 流程永远等待人类。
  • 成本失控。 Agent 循环或调用昂贵模型而没有边界。

可靠性清单

  • [ ] 每个外部效果有幂等键。
  • [ ] 长期工作是持久的。
  • [ ] 恢复经过测试,不是假设。
  • [ ] 超时与退避已配置。
  • [ ] 不可逆步骤有补偿。
  • [ ] 预算与步数限制被执行。
  • [ ] 审批路径有升级与过期。
  • [ ] 证据在失败后存活。

与“它能工作”的区别

演示展示快乐路径。可靠性关注不快乐路径:

  • 工具超时;
  • 模型返回畸形输出;
  • 流程重启;
  • 人不回答;
  • 外部系统宕机;
  • 证据存储不可用。

为这些设计,快乐路径自然成立。

相关