本章进度 6 / 18
33%
Agent 与工具调用·练习·18 分钟
正文已完成

写一份不会藏副作用的工具契约

为一个写操作工具交付用途、参数、返回、审批和幂等性说明。

L119
为什么现在学

现在把“工具描述”用于一次具体操作,检查你能否独立做出并修正结果。

本课会用什么
  • 按本课练习说明准备真实材料
  • 保留练习与复盘记录

本课选择一个会改变外部状态的工具。完整契约不仅服务模型选工具,也服务安全审查、日志记录和失败恢复。

这一课的结果

能编写一份让模型和审查者都能判断是否允许调用的工具契约。

核心概念

先把关键判断说清楚

01

审批证据进入参数

高风险调用应携带可验证 approval_id,而不是只在提示词里说“先确认”。

02

返回值支持下一步

成功返回资源 ID 和最终状态,失败返回分类错误,不能只给“操作失败”。

03

幂等键防止重复

网络超时时重试写操作,幂等键能让同一请求只生效一次。

案例拆解

发送客户邮件工具的契约

旧工具只接收 recipient、subject、body,超时重试曾发送两封。

  1. 01

    增加 approved_draft_id,只有人工批准的草稿可发送。

  2. 02

    增加 idempotency_key,同一键重复调用返回原 message_id。

  3. 03

    失败区分 validation_error、permission_denied 和 transient_error。

案例结果

审批、重复发送和失败恢复都成为工具接口的一部分,而不是依赖 Agent 自觉。

提交前练习

现在轮到你

为一个发送、更新或创建类工具写契约。

完成本课需要:完成以下内容用于本课收口。

内容会自动保存在当前设备
查看参考答案与评分标准

参考答案

publish_article 仅发布已批准版本;参数 article_version_id、approval_id、idempotency_key;成功返回 public_url/version,失败返回明确错误码;审计记录操作者、批准人和内容哈希。

评分标准

  • 副作用和禁区显式
  • 工具端可验证批准与去重
  • 返回足以支持恢复和审计

本课收口 · 学习证据

留下完整学习证据

读完内容、完成练习、通过理解检查并留下 12 字以上总结,才记为已验证。

0 / 4
02完成本课必填练习0 / 4 项必填内容已填写03通过理解检查点此去回答,约 30 秒
04写下 12 字以上总结还差 12 字
写操作工具为什么需要幂等键?
你现在更接近哪一种状态?
尚有必填项未完成,请补齐后再继续。

资料来源

继续核对与延伸阅读

本课内容最近更新于 。