大模型小白必看:收藏!揭秘AI如何调用外部工具,解锁Agent核心能力

张开发
2026/4/16 17:17:50 15 分钟阅读

分享文章

大模型小白必看:收藏!揭秘AI如何调用外部工具,解锁Agent核心能力
你有没有想过当你问 AI 今天北京天气怎么样的时候它是怎么知道答案的毕竟大模型的训练数据是有截止日期的它不可能实时感知这个世界。秘密就藏在一套叫做工具调用的机制里。一、先说一个比喻大脑与双手想象一下大模型LLM是一个极其聪明的大脑。这个大脑知识渊博能写诗、能编码、能分析——但它没有手没有眼睛无法直接去触碰这个世界。它无法查股票、无法开网页、无法写文件也无法发邮件。它所有的知识都来自训练时灌入的数据训练结束后就冻结了。工具调用就是给这个大脑装上一双手。从 Function Call 到 Tool从 MCP 到 Skill再到 CLI这一套体系其实在回答同一个问题AI 应该怎么调用外部能力这篇文章我们就来把这套体系从底层逻辑一路讲清楚。二、Function Call最底层的调手协议2.1 它是什么Function Call函数调用是 OpenAI 在 2023 年首先标准化的一种大模型交互机制后来几乎被所有主流模型厂商跟进采用。它的核心思想很简单让模型不是直接回答问题而是告诉你我需要调用哪个函数、传什么参数。你来执行执行完了把结果告诉模型模型再给你最终答案。2.2 交互流程整个交互分四步第一步你定义工具清单在发起对话前你把可用的工具用 JSON Schema 格式描述出来作为tools参数传给模型。{ name: get_weather,description: 获取某城市的实时天气,parameters: { type: object, properties: { city: { type: string, description: 城市名称如北京、上海 } }, required: [city] }}第二步模型决策用户问北京今天天气怎样模型看了工具列表判断需要调用get_weather于是返回{ tool_calls: [ { function: { name: get_weather, arguments: {\city\: \北京\} } } ]}注意模型只是发出了指令它并没有真正去查天气。第三步你的程序执行函数你的代码接收到这个 JSON去调用真实的天气 API拿到结果比如今天北京晴25°C微风。第四步模型整合回答你把这个结果作为tool角色的消息塞回对话模型再次生成给用户一个完整、自然的回答“北京今天天气晴朗气温 25 摄氏度有微风很适合出行。”2.3 这里面有两层能力很多人会问Function Call 到底是模型的能力还是框架的能力答案是两层缺一不可。模型层需要通过专门的指令微调Instruction Tuning让模型理解什么时候该调工具以及如何按 Schema 格式输出参数。GPT-4o、Claude 3.5、Qwen2.5 等都经过了这类训练。框架层推理引擎如 vLLM、OpenAI API、Ollama需要支持接收tools参数解析模型输出的工具调用指令并能正确地把工具结果塞回上下文。所以你如果拿一个没有微调过工具调用的模型、或者用一个不支持 Function Call 的接口就算你传了tools参数效果也会很差。三、ToolFunction Call 的进化版叫法3.1 名字的演变在早期这套机制叫 Function Call函数调用。但随着生态发展函数这个词显得太窄了——调用的不只是函数还可能是数据库、API、本地文件系统……于是业界逐渐统一用Tool工具这个词涵盖所有模型可以请求调用的外部能力。Function Call 现在更多是描述这套机制本身而 Tool 是对单个可调用能力的抽象。3.2 Tool 的标准结构一个标准的 Tool 定义通常包含字段说明name工具唯一标识模型靠这个名字调用description工具功能描述这是模型决策的主要依据parameters入参的 JSON Schema定义类型、必填项、含义其中description尤为关键——写得好不好直接影响模型能不能在合适的时候选对工具。这是 Prompt 工程里很重要的一部分。3.3 并行调用与顺序调用现代大模型支持在一次回复中发出多个工具调用请求parallel tool calls。比如用户说帮我查一下北京和上海今天的天气模型可以同时发出两个get_weather调用节省时间。当然也有需要顺序调用的场景——比如先查数据库拿到 ID再用这个 ID 查详情。这取决于任务的依赖关系。四、MCP给工具连接装上USB-C 接口4.1 旧世界的痛点在 MCP 出现之前每个 AI 应用要连接外部工具都得自己造轮子你要让 Claude 访问 GitHub得自己写一套 GitHub 的工具定义你要让 GPT-4 读本地文件得自己写文件系统的工具你要换一个模型所有工具定义可能得重写工具是烟囱式的不可复用维护成本极高。每个 AI 客户端和每个数据源之间都要单独建立连接。4.2 MCP 的设计哲学2024 年 11 月 25 日Anthropic 发布了MCPModel Context Protocol模型上下文协议并将其开源。MCP 的目标是定义一套标准化协议让任何 AI 客户端都能用统一方式连接任何数据源或工具服务器。类比很流行MCP 就是 AI 领域的 USB-C 接口。在 USB-C 出现之前不同设备有不同接口Micro-USB、Lightning……每次充电得找对应的线。USB-C 统一了标准一条线走天下。MCP 做的是同样的事情——让 AI 和工具之间的连接标准化、可复用。4.3 MCP 的架构MCP 定义了三个角色┌─────────────────────┐│ MCP Host │ ← 你的 AI 客户端Claude Desktop / Cursor / IDE│ (AI Application) │└────────┬────────────┘ │ MCP ProtocolJSON-RPC 2.0 │┌────────┴────────────┐│ MCP Client │ ← 内嵌在 Host 中的协议处理层└────────┬────────────┘ │┌────────┴────────────┐│ MCP Server │ ← 工具/数据源的封装层可以有很多个│ (GitHub / DB / FS) │└─────────────────────┘MCP Server负责把某类能力比如读写文件、查数据库、调 GitHub API封装成标准接口。MCP ClientHost按协议去连接 Server发现它有哪些工具然后在需要时发起调用。4.4 MCP Server 暴露的三类能力MCP 定义了三类原语primitives**① Tools工具**可执行的操作比如搜索文件、“提交 PR”、“发送邮件”。这对应 AI 的主动行为。**② Resources资源**可读取的数据比如返回项目里所有 Markdown 文件的内容。这对应 AI 的读取行为。**③ Prompts提示词模板**预定义的提示词片段帮助用户快速完成特定任务。4.5 传输方式MCP 支持两种传输方式stdio本地 MCP Server 通过标准输入输出与 Client 通信适合本地工具HTTP/SSE远程 MCP Server 通过网络通信适合云端工具和共享服务4.6 MCP 的意义MCP 把工具生态从私有变成了公共基础设施。有了 MCP开发者写一个 GitHub MCP Server所有支持 MCP 的 AI 客户端都能用企业可以把内部知识库包装成 MCP Server任何 AI 工具都能安全接入AI 应用开发者不用重复造轮子专注业务逻辑截至 2025 年MCP 生态已经爆发式增长GitHub、Slack、Notion、数据库、代码仓库……几乎所有主流工具都有了对应的 MCP Server。五、Skill把工具包装成可复用的专业能力5.1 工具 vs. 能力Tool 解决了AI 能调什么的问题但还有一个问题没解决AI 应该怎么用这些工具比如AI 有了搜索网页这个 Tool但如何搜、搜哪些关键词、如何整合多次搜索结果、输出什么格式——这些逻辑每次都要重新在 Prompt 里写吗这就是Skill技能要解决的问题。Skill 是在 Tool 之上的一层抽象把完成某类任务所需的工具组合、使用流程、输出规范打包成一个可复用的单元。5.2 Skill 的结构一个典型的 Skill包含触发条件什么样的用户请求会激活这个 Skill使用哪些 Tools需要哪些工具支撑执行流程分几步、每步做什么输出规范结果用什么格式呈现比如公众号文章写作这个 Skill触发用户说帮我写一篇公众号文章流程 Step 1 → 调用搜索 Tool并行搜 3-5 个关键词 Step 2 → 整合资料写 5000 字初稿 Step 3 → 生成 5 个备选标题 Step 4 → 提供排版建议输出Markdown 格式文章 标题列表5.3 Skill 的实现形式不同平台对 Skill 的实现略有不同但核心思路一致文件形式一个SKILL.md文件写明触发条件、工具需求和执行步骤AI 读到文件就知道怎么做配置形式YAML/JSON 配置描述工具链和参数代码形式直接用代码定义 Skill 类或函数注入到 Agent 框架在 OpenClaw 等现代 AI 助手平台里Skill 可以像插件一样安装、更新、卸载极大提升了 AI 能力的可扩展性。5.4 Skill 与 Tool 的层次关系层次概念类比原子能力Tool锤子、螺丝刀工作流Skill装修施工方案执行者Agent装修工人工具是孤立的Skill 把工具串成了有目的的工作流。六、CLI让 AI 直接操作系统级能力6.1 CLI 是什么CLICommand Line Interface命令行界面是软件通过文字命令与操作系统交互的方式。在 AI 工具调用体系里CLI 扮演着非常特殊的角色它是 AI 访问系统级能力的最直接通道。当 AI 有了执行 Shell 命令的能力它能做的事情就是操作文件系统读写删除文件、目录运行脚本、执行程序调用任何有命令行接口的工具git、ffmpeg、curl……管理进程、安装依赖几乎整个操作系统都在它触手可及的范围之内。6.2 AI CLI 真正的本地 Agent这就是为什么 Claude Code、Cursor、OpenClaw 这类 AI 编码助手都会提供执行 Shell 命令的能力exec tool——有了 execAI 就不只是一个对话机器人了它可以真正在本地完成工作。一个典型的 AI CLI 工作流用户说帮我把这个目录里所有 PNG 图片转成 WebP 格式AI 1. exec: ls ./images | grep .png → 拿到文件列表 2. exec: for img in *.png; do cwebp $img -o ${img%.png}.webp; done 3. 告诉用户转换完成共处理 23 张图片全程无需用户手动操作AI 自己把任务做完了。6.3 CLI 与 Tool 的配合CLI 通常不是孤立存在的而是作为一类特殊的 Tool 被纳入体系AI 平台定义一个execTool或bashTool这个 Tool 接受命令字符串作为参数AI 在需要时调用这个 Tool传入具体命令执行结果作为 Tool 返回值回到上下文这样CLI 就和其他 API 类工具一样都变成了 AI 可以调用的手。6.4 CLI 的安全边界CLI 是双刃剑。给了 AI 执行命令的能力也给了它潜在的破坏力。负责任的 AI 平台都会有一套安全策略沙箱隔离命令在隔离的容器环境中执行不影响主机权限控制限制可执行的命令类型比如禁止rm -rf /用户确认高风险操作要求用户明确授权日志审计所有执行操作留有记录安全是 CLI 能力落地的前提。七、五个概念一张关系图讲了这么多我们来整理一下这五个概念的层次关系┌─────────────────────────────────────────────────────────────────┐│ 用户请求 │└──────────────────────────────┬──────────────────────────────────┘ │ ▼┌─────────────────────────────────────────────────────────────────┐│ LLM大模型 ││ 理解意图 → 决策 → 生成工具调用指令 │└──────────────────────────────┬──────────────────────────────────┘ │ Function Call / Tool Use ▼┌─────────────────────────────────────────────────────────────────┐│ Skill 层 ││ 把多个 Tool 组合成有步骤、有规范的工作流 │└──────┬───────────────────────┬──────────────────────────────────┘ │ │ ▼ ▼┌─────────────┐ ┌────────────────────────────────────────────┐│ MCP │ │ Tool 层 ││ (标准协议) │ │ 搜索 / API / 数据库 / CLI(exec) / 文件 / ... │└──────┬──────┘ └────────────────────────────────────────────┘ │ ▼┌────────────────────────────────┐│ MCP Server外部服务 ││ GitHub / Notion / DB / ... │└────────────────────────────────┘简单总结Function Call定义了 LLM 如何声明我要调工具的底层机制Tool单个可调用能力的抽象是 Function Call 的载体MCP工具连接的标准协议让工具生态可复用、可互通Skill把 Tool 组合成完整工作流的上层抽象可复用、可分发CLI通过命令行访问系统级能力是最底层也是最强大的 Tool 类型之一八、真实世界的应用一次完整的 AI 任务为了让这套体系更直观我们用一个完整的例子走一遍。场景你告诉 AI 助手“帮我整理一下最近一周 GitHub 上我们项目新增的 Issue生成一份摘要报告发到工作群里。”幕后发生了什么1. LLM 分析意图触发 SkillAI 识别到整理 GitHub Issue 生成报告 发消息这个复合任务加载对应的 Skill 模板。2. Skill 开始执行调用 GitHub Tool通过 MCP 协议连接到 GitHub MCP Server调用list_issuesTool{ tool: list_issues, arguments: { repo: your-org/your-project, since: 2025-03-24T00:00:00Z, state: open }}GitHub MCP Server 返回了 15 条 Issue 的数据。3. LLM 处理数据生成摘要AI 读取 Issue 数据按优先级分类生成结构化摘要。4. 调用 CLI Tool保存报告echo # Issue 周报 2025-03-31\n... /reports/issue-summary.md5. 调用消息发送 Tool投递到工作群{ tool: send_message, arguments: { channel: work-group, content: 本周 Issue 周报已生成共 15 条其中 P0 问题 3 条... }}整个过程用户什么都不用做。这就是 Function Call Tool MCP Skill CLI 协同工作的结果。九、未来走向Agent 时代工具调用的核心地位当我们把 Function Call、Tool、MCP、Skill、CLI 这些能力组合起来就构成了AI Agent的基础能力栈。Agent 是有目标、会规划、能行动的 AI——它不是一问一答的聊天机器人而是一个能自主完成复杂任务的数字员工。这套工具调用体系就是 Agent 的手脚神经系统。2025 年AI 领域最重要的竞争不再是哪个模型更聪明而是谁能接入更多工具、让 Agent 在更多场景自主完成任务。MCP 生态的爆发正是这个趋势的缩影。当一个 AI 能查邮件、能读代码、能发消息、能操控浏览器、能执行命令——它就不只是助手了它更像一个真正的团队成员。十、总结概念核心价值一句话理解Function Call底层机制LLM 声明我要用什么函数Tool单一能力一件工具一个本事MCP连接标准AI 领域的 USB-C 接口Skill工作流复用把工具串成专业流程CLI系统级操作给 AI 一个真实的 Shell这五个概念是当前 AI 工程化最核心的构建块。理解了它们你就理解了为什么今天的 AI 助手能越来越真正做事而不只是侃侃而谈。普通人如何抓住AI大模型的风口领取方式在文末为什么要学习大模型目前AI大模型的技术岗位与能力培养随着人工智能技术的迅速发展和应用 大模型作为其中的重要组成部分 正逐渐成为推动人工智能发展的重要引擎 。大模型以其强大的数据处理和模式识别能力 广泛应用于自然语言处理 、计算机视觉 、 智能推荐等领域 为各行各业带来了革命性的改变和机遇 。目前开源人工智能大模型已应用于医疗、政务、法律、汽车、娱乐、金融、互联网、教育、制造业、企业服务等多个场景其中应用于金融、企业服务、制造业和法律领域的大模型在本次调研中占比超过30%。随着AI大模型技术的迅速发展相关岗位的需求也日益增加。大模型产业链催生了一批高薪新职业人工智能大潮已来不加入就可能被淘汰。如果你是技术人尤其是互联网从业者现在就开始学习AI大模型技术真的是给你的人生一个重要建议最后只要你真心想学习AI大模型技术这份精心整理的学习资料我愿意无偿分享给你但是想学技术去乱搞的人别来找我在当前这个人工智能高速发展的时代AI大模型正在深刻改变各行各业。我国对高水平AI人才的需求也日益增长真正懂技术、能落地的人才依旧紧缺。我也希望通过这份资料能够帮助更多有志于AI领域的朋友入门并深入学习。真诚无偿分享vx扫描下方二维码即可加上后会一个个给大家发【附赠一节免费的直播讲座技术大佬带你学习大模型的相关知识、学习思路、就业前景以及怎么结合当前的工作发展方向等欢迎大家~】大模型全套学习资料展示自我们与MoPaaS魔泊云合作以来我们不断打磨课程体系与技术内容在细节上精益求精同时在技术层面也新增了许多前沿且实用的内容力求为大家带来更系统、更实战、更落地的大模型学习体验。希望这份系统、实用的大模型学习路径能够帮助你从零入门进阶到实战真正掌握AI时代的核心技能01教学内容从零到精通完整闭环【基础理论 →RAG开发 → Agent设计 → 模型微调与私有化部署调→热门技术】5大模块内容比传统教材更贴近企业实战大量真实项目案例带你亲自上手搞数据清洗、模型调优这些硬核操作把课本知识变成真本事‌02适学人群应届毕业生‌无工作经验但想要系统学习AI大模型技术期待通过实战项目掌握核心技术。零基础转型‌非技术背景但关注AI应用场景计划通过低代码工具实现“AI行业”跨界‌。业务赋能突破瓶颈传统开发者Java/前端等学习Transformer架构与LangChain框架向AI全栈工程师转型‌。vx扫描下方二维码即可【附赠一节免费的直播讲座技术大佬带你学习大模型的相关知识、学习思路、就业前景以及怎么结合当前的工作发展方向等欢迎大家~】本教程比较珍贵仅限大家自行学习不要传播更严禁商用03入门到进阶学习路线图大模型学习路线图整体分为5个大的阶段04视频和书籍PDF合集从0到掌握主流大模型技术视频教程涵盖模型训练、微调、RAG、LangChain、Agent开发等实战方向新手必备的大模型学习PDF书单来了全是硬核知识帮你少走弯路不吹牛真有用05行业报告白皮书合集收集70报告与白皮书了解行业最新动态0690份面试题/经验AI大模型岗位面试经验总结谁学技术不是为了赚$呢找个好的岗位很重要07 deepseek部署包技巧大全由于篇幅有限只展示部分资料并且还在持续更新中…真诚无偿分享vx扫描下方二维码即可加上后会一个个给大家发【附赠一节免费的直播讲座技术大佬带你学习大模型的相关知识、学习思路、就业前景以及怎么结合当前的工作发展方向等欢迎大家~】

更多文章