首页
学习
活动
专区
圈层
工具
发布
技术百科首页 >Agent 开发 >Agent 开发如何设计工具的描述与输入输出契约?

Agent 开发如何设计工具的描述与输入输出契约?

词条归属:Agent 开发

1. 工具描述:性能的关键单一因素

工具描述是影响工具调用性能最重要的单一因素。描述应当说明:这个工具做什么、什么情况下该用、什么情况下不该用、每个参数的含义及其如何影响工具行为、以及重要限制(例如工具不返回什么信息)。Anthropic 建议非复杂工具的描述也至少写 3~4 句,复杂工具则应更长。

2. 输入契约与示例

输入契约使用 JSON Schema 表达。对于嵌套对象、可选参数众多、或对格式敏感的工具,仅靠 Schema 不足以让模型正确调用,此时应补充示例输入(Anthropic 的 Tool Use Examples)——Anthropic 内部测试显示,示例可将复杂参数处理的准确率从 72% 提升至 90%。由于示例会增加 Token 开销,这一手段应按需使用而非全量铺开。

3. 输出契约的高信号原则

输出契约的设计目标是"只返回高信号信息":返回语义化、稳定的标识符而非不透明内部引用,只包含模型推理下一步所需字段,避免臃肿返回体挤占上下文。

4. 减少工具数量与选择歧义

减少工具数量与选择歧义同样关键:将相关操作合并为单一带动作参数的工具,而非为每个动作各建一个;工具跨多服务时用服务名前缀做命名空间(如 github_list_prs、slack_send_message),使选择无歧义,尤其在启用工具搜索时更为必要。此外,工具数量本身存在上限约束,业界普遍建议将活跃工具控制在个位数到十余个以内(Anthropic 亦主张 fewer, more capable tools),过多会降低选择准确率。

相关文章
Agent 小知识|让 Agent 调对工具:输入输出契约的设计
在上一期我们聊到每次 Agent 调用模型前,要根据当前的规则、任务状态、工具信息等上下文内容来动态组装本轮 Prompt。
七牛开发者
2026-07-30
3320
当工具接口悄悄失效:Agent 系统的"契约漂移"与运行时容错设计
其一,一份新公开的 Agent 评测基准 ScrambleToolBench 给出了一个反直觉的结果:在工具说明被移除、环境规则中途变更的条件下,即便上下文中存在正确的工具映射记录,当前头部的模型 Agent 仍会反复调用已失效的旧工具,陷入无效重试循环。
用户12531518
2026-08-20
1800
Agent开发-编程Agent如何重塑工程、产品与设计
Harrison Chase(LangChain 联合创始人兼 CEO)那篇《How Coding Agents Are Reshaping Engineering, Product and Design》中文翻译:
码农戏码
2026-06-25
3030
跨越“集成深渊”:Agent工具链、协议标准化与遗留系统对接实战
2026年7月,AI Agent正从“对话助手”蜕变为“业务执行者”,但“工具调不通、接口改不动、老系统连不上”成为企业级落地最顽固的拦路虎。IDC最新调研显示,83%的Agent项目耗时超60%在工具集成与适配上,平均每个业务流程需对接4.7个异构系统,其中65%为无文档、无标准接口的遗留资产。行业共识已从“定制开发胶水代码”转向“工具连接工程化”,通过统一工具协议、语义化适配器与弹性容错机制,让Agent像调用本地函数一样可靠地操控外部世界。这标志Agent进入集成工程时代,可复用的工具连接能力已成为决定其能否真正嵌入业务流的核心基础设施。
用户12583550
2026-07-25
2530
为什么 MCP 在协议层会有 prompt injection的问题:工具描述如何劫持 agent 上下文
MCP(Model Context Protocol)当初被设计成 AI agent 的通用集成层,但它的架构有一个根本缺陷:
deephub
2026-05-11
6850
点击加载更多
词条知识树 27个知识点
更多
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
领券