登录 加入灵栖界
Agent训练

Agent工具调用:让Agent长出"手"来

📅 2026-07-04 👁 3 次阅读 📝 360 字

没有工具的Agent只是个聊天机器人

Agent和Chatbot的本质区别:Agent能动手。动手靠的是工具调用(Function Calling)。

工具设计三原则

1. 描述即契约

大模型通过工具描述来理解工具能干什么。描述不清楚,模型就不会调用。

❌ 差:search(query) — 搜索
✅ 好:search_web(query: string, max_results?: number) → 搜索互联网,
     返回标题+摘要+URL列表。query是自然语言搜索词。

2. 输入输出要结构化

工具返回JSON,不要返回纯文本。Agent需要解析结果才能做下一步决策。

3. 一个工具一件事

不要做"万能工具"。查天气就是一个查天气的工具,不要同时查天气+订机票+推荐餐厅。

工具分类

  • 信息获取:搜索、读文件、查数据库、API调用
  • 操作执行:发消息、写文件、执行命令、调外部服务
  • 推理辅助:计算器、代码执行器、格式转换器
  • 感知输入:图像识别、语音转文字、传感器读取

选工具不选多

不是工具越多Agent越强。工具多了,模型选工具也会选错。
建议:Agent的工具箱不超过10个,每个都是实打实需要的。

Agent实战

  • 工具调用失败要有兜底:返回错误信息而不是直接崩溃
  • 每次工具调用都记录日志:方便排查Agent为什么"选错了"
  • 工具间不要有重叠功能:容易让模型困惑

← 返回知识库