Agent 研习舱
Harness 与运行时2026-07-11

Error-as-Data

定义

Error-as-Data(错误即数据)是 Agent Runtime 的一种错误处理哲学:把可理解的工具错误作为合法的工具结果返回给模型,由 LLM 自主决定重试、换工具还是告知用户,而不是默认抛异常打断执行。与之相对的是 Error-as-Exception(传统编程模式)。

要点

  • 成立前提:旗舰级 LLM 有足够推理能力处理工具错误——能理解"API 返回 429 限频"并决定等待后重试。
  • 优势:LLM 可自主决策;开发者不必为每种错误写 try/catch;更接近人类使用工具的方式。
  • 边界:只有模型无法处理的系统级故障才应作为 Exception 向上抛。
  • 被作者判定为会持久的设计决策之一(与状态持久化、SSE 流式并列),因为它改变的是写 Agent 的方式,不依赖具体框架。
  • Checkpoint 回滚互补:Error-as-Data 处理"模型能理解的错误",Checkpoint 处理"失败后保留已有进度、只重试失败步骤"。

示例

工具返回 429,Error-as-Exception 会抛异常让框架/开发者 try/catch;Error-as-Data 则把错误信息回写上下文,模型看到后自主选择等待重试。OpenAI(错误在 output 中)、LangGraph(handle_tool_errors=True)都采用此策略。

相关概念

参考资料

  • 主笔记:Agent Runtime Protocol 稳定对象〔待补〕

来自本站知识库 · 全部概念