前言
自从发布MCP相关文章以来,收到很多小伙伴的私信,我发现大部分人都在问MCP和LLM的Function Call(下文统称为函数调用)到底有什么区别? 前文如下:
这是一个好问题,至少说明小伙伴们在认真阅读,并深度思考问题, 这个状态很好。另外另外也算是对笔者的鼓励,写东西有人看了ฅʕ•̫͡•ʔฅ 下面笔者尽量用通俗的语言来讲解两者的区别,尽可能全方位展开论述。如有理解不到位的地方欢迎并感谢指正。 开整( •︠ˍ•︡ )
什么是LLM函数调用?
LLM函数调用是指大型语言模型(LLM)根据用户提示生成结构化输出(通常是JSON格式),用于调用外部函数或工具。 比如,当你问“纽约的天气如何?”时,LLM可能会生成一个JSON,告诉应用去调用“获取天气”函数。
什么是MCP?
MCP(模型上下文协议)是一个开放标准,让AI模型与外部工具和服务交互。 它像一个桥梁,AI通过它请求工具执行任务,比如获取天气数据,标准化了交互方式。 其它详细内容这里不赘述,可以看这里: 这里介绍只是为了整体结构的完整性•ɷ•
小结
- LLM函数调用: AI生成调用外部函数的指令,但需要为每个AI和工具单独设置,扩展性有限。
- MCP: 提供统一接口,AI通过MCP服务器访问工具,减少重复设置,更适合大规模使用。
MCP在可扩展性和效率上优于LLM函数调用,当然在世界上没有一个大一统(这也是爱因斯坦毕生的愿望)的东西存在,MCP的发展还需要时间来进化、跃迁。另外在MCP社区还有一个讨论比较热的点即:MCP与现有系统的兼容性如何发展。
其实从上面LLM函数调用与MCP简介中的“获取天气数据”例子,应该能找到大概感觉了。
详细说明
LLM函数调用
LLM函数调用是指LLM生成结构化输出(通常是JSON格式)的能力,这些输出可用于调用外部函数或工具。例如,当用户询问“纽约的天气如何?”时,LLM可能会生成如下JSON:
{
"function": "get_weather",
"parameters": {
"location": "北京"
}
}
应用然后会解析此输出并执行get_weather函数,返回天气数据。其目的是使LLM能够执行需要外部数据或功能的任务,如检索实时信息或与业务系统交互。
从搜索结果来看,LLM函数调用是许多AI模型(如OpenAI的GPT模型)的常见功能,特别是在构建聊天机器人或代理时。例如,Function Calling with LLMs (https://www.promptingguide.ai/applications/function_calling)详细说明了如何通过微调LLM来检测何时需要调用函数,并输出包含参数的JSON。
MCP的定义与用途
MCP是由Anthropic在2024年11月引入的开放标准协议,旨在为AI模型提供与外部工具、数据源和服务的标准化交互方式。它通过客户端-服务器架构工作:AI模型(客户端)向MCP服务器发送请求,服务器处理与特定工具或数据源的交互。例如,对于相同的天气查询,LLM可能会生成:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call", // 调用工具
"params": {
"name": "get_weather",
"arguments": {
"location": "北京"
}
}
}}
此请求发送到MCP服务器,服务器执行get_weather函数并以标准化格式返回结果。MCP的目的是解决AI集成的难题,提供通用接口,使开发者无需为每个工具编写自定义代码。例如,Introducing the Model Context Protocol(https://www.anthropic.com/news/model-context-protocol)强调了MCP如何帮助前沿模型产生更相关、更准确的响应。
详细比较
以下表格总结了MCP和LLM函数调用的关键区别:
方面 | LLM函数调用 | MCP(模型上下文协议) |
---|---|---|
焦点 | 使LLM能够生成用于调用外部函数的结构化输出。 | 提供标准化框架,执行这些函数调用,确保与不同工具和服务的兼容性。 |
标准化 | 可能需要为每个工具或服务编写自定义实现。 | 提供通用标准,允许与任何MCP兼容服务器的即插即用集成。 |
可扩展性 | 扩展到多个工具可能需要为每个集成编写自定义代码。 | 允许LLM通过连接不同MCP服务器使用广泛的工具,无需为每个工具编写自定义代码。 |
角色与集成 | 应用必须同时处理生成函数调用和执行,耦合度较高。 | 分离关注点:LLM生成调用,MCP服务器处理执行,使系统更模块化。 |
兼容性 | 可能特定于某些模型或框架(如OpenAI的GPT模型)。 | 设计为模型无关,任何支持协议的AI模型都可以使用任何MCP服务器。 |
复杂性 | 需要为每个LLM应用定义函数,可能较为繁琐。 | 通过将函数定义与LLM应用分离,简化集成,增强可重用性。 |
使用案例 | 适合基本工具集成,但对于复杂、多工具系统扩展性较差。 | 适合构建可扩展的集成AI系统,提供标准化工具访问。 |
为什么MCP被视为LLM函数调用的进步
MCP在LLM函数调用的基础上引入了标准化和模块化,使集成更加高效。例如,What's MCP all about? Comparing MCP with LLM function calling (https://neon.tech/blog/mcp-vs-llm-function-calling)指出,MCP服务器充当AI应用与第三方服务之间的桥梁,暴露函数通过标准化协议,任何MCP兼容的LLM都可以访问。这减少了开发工作量,并促进了社区采用,如GitHub、Slack等关键数据存储已开始支持MCP。
此外,MCP的客户端-服务器架构使开发者可以创建或使用现有的MCP服务器,增强了可扩展性和可重用性。例如,A Deep Dive Into MCP and the Future of AI Tooling(https://a16z.com/a-deep-dive-into-mcp-and-the-future-of-ai-tooling/)讨论了MCP如何改变AI与工具的交互方式,使开发者能够构建更强大的AI代理。
当前争议与未来展望
尽管MCP被视为进步,但其作为较新标准的采用和与现有框架(如LangChain)的兼容性仍存在争议。例如,Function-Calling vs. Model Context Protocol (MCP): Choosing the Right Approach for LLM Integration (https://www.runloop.ai/blog/function-calling-vs-model-context-protocol-mcp)指出,MCP的广泛采用可能需要时间,特别是对于依赖传统函数调用的现有系统。
自2025年起,MCP正迅速获得关注,特别是在AI社区中,但其长期影响仍需观察。研究表明,结合使用LLM函数调用和MCP可以创建更高效、可扩展的AI驱动软件自动化系统。
最后
总之,MCP和LLM函数调用的区别在于它们的角色:LLM函数调用使模型能够请求外部操作,而MCP提供标准化框架来高效、可扩展地履行这些请求。通过使用MCP,开发者可以构建更集成的AI应用,无需为每个工具编写自定义代码,这在AI工具领域是一个重大进步。 在MCP和LLM函数调用使用上的选择,笔者觉得MCP具有跟高的扩展项,能让项目的可能性更大。
如何系统的去学习大模型LLM ?
大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业
?”“谁的饭碗又将不保了?
”等问题热议不断。
事实上,抢你饭碗的不是AI,而是会利用AI的人。
继科大讯飞、阿里、华为
等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?
与其焦虑……
不如成为「掌握AI工具的技术人
」,毕竟AI时代,谁先尝试,谁就能占得先机!
但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。
基于此,我用做产品的心态来打磨这份大模型教程,深挖痛点并持续修改了近70次后,终于把整个AI大模型的学习门槛,降到了最低!
在这个版本当中:
第一您不需要具备任何算法和数学的基础
第二不要求准备高配置的电脑
第三不必懂Python等任何编程语言
您只需要听我讲,跟着我做即可,为了让学习的道路变得更简单,这份大模型教程已经给大家整理并打包,现在将这份 LLM大模型资料
分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程
等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓
一、LLM大模型经典书籍
AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。
二、640套LLM大模型报告合集
这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)
三、LLM大模型系列视频教程
四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)
五、AI产品经理大模型教程
LLM大模型学习路线 ↓
阶段1:AI大模型时代的基础理解
-
目标:了解AI大模型的基本概念、发展历程和核心原理。
-
内容:
- L1.1 人工智能简述与大模型起源
- L1.2 大模型与通用人工智能
- L1.3 GPT模型的发展历程
- L1.4 模型工程
- L1.4.1 知识大模型
- L1.4.2 生产大模型
- L1.4.3 模型工程方法论
- L1.4.4 模型工程实践
- L1.5 GPT应用案例
阶段2:AI大模型API应用开发工程
-
目标:掌握AI大模型API的使用和开发,以及相关的编程技能。
-
内容:
- L2.1 API接口
- L2.1.1 OpenAI API接口
- L2.1.2 Python接口接入
- L2.1.3 BOT工具类框架
- L2.1.4 代码示例
- L2.2 Prompt框架
- L2.3 流水线工程
- L2.4 总结与展望
阶段3:AI大模型应用架构实践
-
目标:深入理解AI大模型的应用架构,并能够进行私有化部署。
-
内容:
- L3.1 Agent模型框架
- L3.2 MetaGPT
- L3.3 ChatGLM
- L3.4 LLAMA
- L3.5 其他大模型介绍
阶段4:AI大模型私有化部署
-
目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。
-
内容:
- L4.1 模型私有化部署概述
- L4.2 模型私有化部署的关键技术
- L4.3 模型私有化部署的实施步骤
- L4.4 模型私有化部署的应用场景
这份 LLM大模型资料
包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程
等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓