“AgentTool”是指在 AI Agent 系统中,由大语言模型(LLM)调用的功能组件或工具函数,它帮助 Agent 执行实际操作,比如联网搜索、数据库查询、代码运行、文件读取等。
最简单的做法就是把AI Agent和Agent Tool写在同一个程序里面。直接函数调用搞定。
AgentTool 就是 AI Agent 的“手”,是它能与外部世界交互的实际工具。
AI Agent 是具备目标导向、自主规划和执行能力的智能体,而它本身并不能真的“做事”,只能“说话”。
所以 Agent 必须依靠外部组件来完成实际任务,比如:
这些可调用的“技能”就是——AgentTool。
假设你对 AI Agent 说:
“帮我查一下上海天气,并用图表展示接下来三天的温度变化。”
Agent 会这样工作:
步骤 | 使用的工具(AgentTool) |
---|---|
🌦 查天气 | weather_api_tool(location="上海") |
📊 画图表 | plot_chart_tool(data=天气数据) |
✍️ 生成说明文字 | 由 LLM 完成,不需要工具 |
工具类型 | 示例功能 |
---|---|
🌐 网络搜索 | 调用 Bing、Serper、DuckDuckGo 等搜索 |
📊 数据处理 | pandas 处理表格、读取 CSV |
🧮 数学计算 | 精确数学库、科学公式计算 |
💻 代码执行 | Python REPL、JS 沙箱 |
📁 文件操作 | 上传、下载、读取本地文件 |
🗃️ 数据库查询 | SQL 查询、向量检索(如 Chroma) |
🔌 API 调用 | 请求 RESTful API |
📅 日程提醒 | 集成日历工具,添加事项 |
📷 图像处理 | 识别、转换、画图工具等 |
框架 / 项目 | 工具系统名称 | 是否支持自定义 Tool |
---|---|---|
LangChain | Tool (类) |
✅ |
AutoGen | FunctionCall / code_executor |
✅ |
OpenAI Assistants API | tools 字段(函数/代码解释器/浏览器) |
✅ |
LlamaIndex | QueryTool , ToolNode |
✅ |
CrewAI | 每个 Agent 可配置 toolset | ✅ |
项目 | Function Calling | AgentTool |
---|---|---|
作用 | 定义函数接口供 LLM 调用 | 提供真正执行任务的功能 |
调用方式 | LLM 输出函数名 + 参数 → 执行函数 | 在 Agent 系统中绑定/注册使用 |
是否一样? | Function Calling 是一种调用机制 | AgentTool 是可以被调用的“具体工具” |
所以说:
Function Calling 是“怎么调用”,AgentTool 是“具体调用什么”
AgentTool 是 AI Agent 的“工具箱”,它让语言模型不仅能“说”,还能“做”——是构建智能系统的关键模块之一。