LLM工具调用(Function Calling、MCP、Skill、CLI的区别)

发布时间:2026/9/24 7:32:36

LLM工具调用(Function Calling、MCP、Skill、CLI的区别) 什么是Function Calling原理是什么工具定义使用JSON Schema描述description字段是LLM判断是否调用的核心依据运行时是「两轮对话中间执行」的闭环流程模型通过finish_reason为tool_calls来明确告知需要工具帮助以及模型支持一次返回多个tool_calls实现并行调用。LLM全程只负责决策输出结构化的JSON调用请求真正执行工具的是宿主程序代码这个职责分工是整个机制的核心设计。Function Calling的关键改进是LLM直接输出结构化JSON而非自然语言让工具调用有了统一标准。LLM是如何学会调用外部工具的?SFT通过大量包含完整工具调用流程的对话样本让模型学会识别工具定义、判断要不要调用、输出规范JSON的整套流程RLHF通过人类打分训练奖励模型再让强化学习调整主模型让它建立「能直接回答就不调用工具」的边界感。另外运行时的Function Calling机制模型只负责决策输出JSON代码负责执行。训练层面靠两个阶段SFT监督微调给模型喂入大量「工具调用示范对话」让它通过模仿学会「看到工具描述→判断要不要调用→输出结构化JSON请求」整套流程RLHF基于人类反馈的强化学习收集人类对「哪种回答更好」的判断训练一个打分器再用这个分数反复调整模型让它学会什么是否不应该调用工具运行层面在每次调用请求时应用代码将工具描述Schema传给模型模型如果判断需要工具就结构化输出一个tool_calls JSON代码拿到这段JSON去真正执行把结果塞回对话模型再给出最终答案。MCP协议Function Calling解决的是「模型怎么输出结构化的工具调用请求」而MCP解决的是「工具怎么标准化接入、一次实现到处复用」两者是不同层面的东西。MCP是开放协议任何支持MCP的客户端都可以接入。MCP不是Function Calling的替代品而是建立在Function Calling之上的。MCP解决的工具接入碎片化问题每接入一个新工具都要单独写对接代码换个客户端又得重写。MCP是Client-Server架构Server是工具实现方Client是AI应用侧一个Client可以连接多个Server。MCP核心能力Tools是有副作用的操作需要授权Resources是只读数据无副作用Prompts是可复用的提示词模板。底层通信使用JSON-RPC 2.0传输层支持Stdio本地和Streamable HTTP远程两种方式。MCP和CLIMCP获取到数据会被完整输入LLM的上下文窗口中提供给模型读取和理解上下文窗口的大小是有限的当数据量比较大时会撑爆窗口导致模型无法处理而报错或中断回答。MCP 的通信机制和 LLM 的架构限制上下文窗口是瓶颈数据溢出会导致错误累积效应加剧问题为什么换成“脚本”就没问题CLI脚本可以绕过MCP的问题核心是改变了数据流向MCP数据流入模型数据被拉进LLM上下文窗口成为模型思考的一部分大数据会直接撑爆窗口导致失败脚本数据留在外部脚本在模型外部执行数据被处理后只把精简的结果如一个路径、一个简短摘要返回给模型模型只需要处理少量文本避免了窗口溢出的风险。工程最佳实践MCP Server要优化返回数据只返回必要字段或摘要对于大数据MCP Server 可以提供“先检索、再按需获取”的工具组合。先用工具A找到目标再用工具B获取特定部分可以在 MCP Client如 Claude Desktop和 Server 之间加一个代理层Proxy自动拦截大响应存到外部存储只返回一个摘要和ID给模型模型后续可以再通过特定工具按需获取详情将 MCP 工具调用的结果缓存起来当模型再次需要相同数据时可以直接从缓存读取避免重复调用和上下文污染MCP 不是银弹它只是桥梁。真正的高级用法是不要让模型去“看”数据而是让模型去“指挥”工具处理数据。把模型当成大脑把 MCP 工具当成手脚。大脑不需要记住身体的每一个细胞只需要能指挥手脚去拿东西即可。为什么有些特定的模型不支持MCP协议推理模型的思考链是一次性连续生成的不能中途打断工具调用天然需要在生成过程中暂停等待外部执行这和连续生成的范式冲突MCP底层依赖于Function Calling推理模型连Function Calling都支持不好MCP自然也使用不了。但时候后续模型迭代中采用了折中方案在保证推理质量和支持工具调用之间找平衡点。就是让工具调用发生在思考阶段结束后保证思考过程仍然完整连续后续还有允许在多次工具调用之间穿插思考部分缓解了局限。Agent SkillAgent Skill是一个能力包本质是一个包含指令、脚本和资源的文件夹。它的核心是完成特定任务的复杂流程、专业知识和最佳实践封装成AI可以随时查阅和执行的操作手册。Agent能自动发现它、按需加载它、在需要时调用里面的脚本和资源。它不只是存prompt而是一份Agent能自己翻阅的操作手册和工具箱。每个skill都是一个文件夹里面有skill.md指令文件可以带上脚本、模板、参考文档等资源。和Prompt的区别Skill能被Agent自动发现和按需加载不能每次手动输入和MCP工具的区别MCP给Agent提供外部工具和数据的访问能力而Skill教Agent拿到这些工具和数据后该怎么使用。Skill具有渐进式加载设计三层加载机制只读元数据→按需加载指令→用到时才读取资源Prompt、Tool和Agent Skill的区别Tool 和 Skill 互补不冲突Tool 是「能做什么」Skill 是「该按什么流程做 」。给新人配了电脑和所有权限Tool他也不知道怎么完成代码审查需要 Skill。Skill ≠ 保存好的 PromptSkill 多了「自动发现」「按需加载」「配套脚本模板」「团队复用」这四样东西。把它当 prompt 文件夹理解就对了。Skill vs CLI两者都打包指令但 CLI 必须手动输入/code-review触发Skill 是 Agent 看到任务后自己判断「这个需要code-review」然后主动加载。学习资源推荐如果你想更深入地学习大模型以下是一些非常有价值的学习资源这些资源将帮助你从不同角度学习大模型提升你的实践能力。一、全套AGI大模型学习路线AI大模型时代的学习之旅从基础到前沿掌握人工智能的核心技能​因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取二、640套AI大模型报告合集这套包含640份报告的合集涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师还是对AI大模型感兴趣的爱好者这套报告合集都将为您提供宝贵的信息和启示​因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取三、AI大模型经典PDF籍随着人工智能技术的飞速发展AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型如GPT-3、BERT、XLNet等以其强大的语言理解和生成能力正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取四、AI大模型商业化落地方案作为普通人入局大模型时代需要持续学习和实践不断提高自己的技能和认知水平同时也需要有责任感和伦理意识为人工智能的健康发展贡献力量。
延伸阅读

更多相关文章

2026/9/23 12:06:30

MySQL索引失效的7种常见场景与优化方案

1. 索引失效的典型表现与诊断方法当数据库查询性能突然下降时,索引失效往往是首要怀疑对象。一个明显的迹象是原本毫秒级响应的查询突然需要数秒甚至更长时间完成。通过EXPLAIN命令分析执行计划时,如果发现type列显示为"ALL"(全表扫…

2026/9/23 12:06:35

ACDC心脏诊断数据集

摘要:ACDC 数据集包含 150 名患者(五类心脏病理:正常、心梗、扩张型心肌病、肥厚型心肌病、右心室异常),MRI 电影图像(NIfTI 格式,ED/ES 帧),训练集 100 名,测…

2026/9/23 12:06:35

如何快速上手LipNet:从安装到实现唇语识别的完整指南

如何快速上手LipNet:从安装到实现唇语识别的完整指南 【免费下载链接】LipNet Keras implementation of LipNet: End-to-End Sentence-level Lipreading 项目地址: https://gitcode.com/gh_mirrors/lip/LipNet LipNet是一个基于Keras实现的端到端句子级唇语识…

2026/9/24 7:30:41

Type-C母座Pin数怎么选?24Pin、16Pin、12Pin、6Pin区别与选型指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 7:30:41

DAP调试接口全解析:从引脚定义到实战设计要点

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 7:30:41

三菱FX3U-4DA与西门子S7-200 SMART等PLC模块编程实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 7:30:41

Arm Development Studio双平台安装避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 7:30:41

OpenStack Nova实例生命周期深度解析:Start、Reboot与Lock操作实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 7:25:41

AI PLC智能升级:新设备原生集成与存量设备无感接入双路径

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/23 12:07:00

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/23 12:06:55

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/24 0:00:21

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为…

2026/9/24 0:00:21

单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

简介:一份基于单细胞RNA测序数据的细胞类型注释算法研究Python毕业设计源码,针对计算机相关专业正在做毕设或需要项目实战的学习者,可用于课程设计与期末大作业。项目代码完整、经导师指导评审通过,可直接运行,覆盖数据…

2026/9/24 0:00:21

C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

第一次在项目里被反射卡住,是在一个老旧的WinForms模块里:几十个类依赖PropertyChanged通知,运行时反射读属性、发通知,每次启动慢半拍不说,一上.NET Native/AOT裁剪模式几乎全面崩盘。后来我把这段逻辑全部改成C#源生…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/22 20:01:30

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码