博主头像
LT技术站

行动起来,活在当下

  • 累计撰写 255 篇文章
  • 累计创建 131 个标签
  • 累计收到 0 条评论

目录

AI Agent

Agent 怎么停、怎么回放:取消、预算和 trace

文章探讨模型调用取消机制的关键要点。停止条件包括步数耗尽、墙钟超时、token预算打满、工具连续失败或用户取消。必须通过run_id追踪调用并优先中断后续步骤,已执行副作用需通过补偿或确认回滚,避免隐式吞取消 demands导致日志欺诈。日志需完整记录输入、工具调用参数、观察结果、停止原因及耗时费用,按trace_id将多步调用串联整合。该机制设计使系统能清晰回溯问题环节,实现安全边界与响应性的平衡,减少非预期返回率并提升事务可审计性。读者可掌握取消场景下的调用跟踪规范和全量日志构造标准,兼顾用户体验与系统可靠性。

停止是安全边界,不是优化项

循环可以因为:步数用尽、墙钟超时、token 预算打满、工具连续失败、用户点了取消。缺任何一项,取消请求到达时你不知道该杀掉哪一次模型调用。

取消怎么做才不会脏写

  • 每个 run 有 run_id,工具调用可中断或最多做到「最多一次」。
  • 用户取消先置 cancelled,再停排队中的下一步;已经发出的副作用用补偿或确认回滚。
  • 不要在 finally 里默默吞掉取消,否则日志看起来像成功。

日志要能回放

至少记下:输入、选择的工具和参数、观察结果、停止原因、耗时和费用。按 trace_id 把多步串起来。日志系统和「任务中途被取消」两份草稿并入本文。

那年今日11 月 11 日

    评论区