MCP≠FunctionCalling!大模型MCP跟FunctionCalling的本质区别

B站影视 内地电影 2025-03-25 14:11 2

摘要:MCP (Model Context Protocol,模型上下文协议),它是一个协议,就比如我们常说的HTTP协议,他们是一类东西。而MCP协议的目的是让各个应用程序和 AI 模型之间,有一种通用的标准的方式,能够快捷的交换信息。下图过于经典,不再赘述,我给

大家好,我是喜欢研究AGI的一枚产品经理,平时主要从事新能源汽车智能座舱、AI大模型应用等相关工作。另外,我超爱自驾游~

文摘:本文很短,主要对比概述MCP和FunctionCalling的本质区别,避免大家对于这两者存在理解上和使用上的偏差。

01 | MCP是什么?

MCP (Model Context Protocol,模型上下文协议),它是一个协议,就比如我们常说的HTTP协议,他们是一类东西。而MCP协议的目的是让各个应用程序和 AI 模型之间,有一种通用的标准的方式,能够快捷的交换信息。下图过于经典,不再赘述,我给大家在看一个更直接的图。

怎么样,上面这张图,是不是更清晰地表达了MCP的意义。

02 | MCP与FunctionCalling的区别是什么?

MCP:
一种专为大模型设计的标准化通讯协议,旨在简化大模型与外部数据源/服务之间的交互流程,提供统一的连接规范(例如数据格式、认证机制、请求模板)。Function Calling:
大模型根据用户指令生成结构化请求调用外部函数或API的能力,属于具体实现层面的技术手段。

MCP与FunctionCalling的核心区别,如下表所示:

Function Calling是大模型自带的一种能力,根据用户输入,识别用户意图并触发预先设定的外部函数或工具,进而将自然语言转化为结构化参数传送给对应的函数,然后再将函数的输出结果返回给大模型处理。

而MCP是 Anthropic 提出的标准化协议,旨在让 AI 应用(包括 agent)以一种通用规范且便捷的方式,连接各种外部数据或服务,以保证大模型能够更简单且自动化的实现各种能力,相当于大模型的 「HTTP 协议」。

比如:我们以往让大模型去实现某个功能,涉及到本地数据,因为大模型无法直接读取本地数据,所以我们需要借助某些平台的能力(比如插件),或者直接在大模型的prompt中,将数据代入。这种操作既不智能,又不安全,关键是没有通用性。

而现在有了MCP协议,那么大模型就可以具备自主调用本地数据的能力。当用户的输入涉及相关数据调用时,大模型就会自动通过MCP协议获取指定的数据,这样就能保证整个功能体验的流畅性和智能化。

这就像前阵子爆火的Manus一样。Manus内部集成了好几个大模型和agent,并且还集成了虚拟机等一堆工具,它是如何保证各种工具、数据、服务在各个大模型之间自动且智能化的流转的?当然主要就是靠MCP,将各种信息串在一起,以实现整体业务流程的高效运转。

最后,补充一句:MCP还是一个新鲜产物,它的提出和发展方向是毋庸置疑的。只不过,目前它的能力范围还有限,但随着后续的迭代,它的能力、效率和普适性一定会大幅提升的。每个关注大模型技术和产品的人,都应该持续关注MCP的发展和迭代!

来源:ID2008912004

相关推荐