Chico Notes
AI Engineering

Agent Tool Design:工具接口比 Prompt 更重要

设计适合 LLM 使用的工具接口,覆盖参数命名、边界、错误返回、幂等性、权限和可测试性。

持续修订的工程笔记

很多 Agent 失败不是模型不聪明,而是工具太难用。参数含糊、错误信息不可读、工具边界重叠、权限不清晰,都会让模型做出错误调用。

好工具的特征

特征说明
名称明确从名字能看出用途。
参数少而清晰避免十几个可选参数。
错误可恢复返回模型能理解的错误原因和建议。
幂等重试不会造成重复副作用。
权限内置工具内部验证权限,不依赖模型判断。
示例充分描述里给出典型输入和边界。

设计原则

把 tool schema 当成给 junior engineer 的函数文档来写。模型会按你的接口暗示来行动。

错误返回

{
  "ok": false,
  "error_code": "MISSING_REQUIRED_FIELD",
  "message": "customer_id is required",
  "retryable": true,
  "hint": "Ask the user for customer_id before calling this tool again."
}

结论

Agent tool design 是 Agent-Computer Interface。接口越清晰,模型越少猜;错误越可恢复,Agent 越可靠。

讨论

继续讨论这篇笔记

有问题、补充案例或不同观点,可以通过 GitHub Discussions 继续交流。

On this page