MCP和Function Calling

MCP

MCP(Model Context Protocol,模型上下文协议) ,2024年11月底,由 Anthropic 推出的一种开放标准,旨在统一大模型与外部数据源和工具之间的通信协议。MCP 的主要目的在于解决当前 AI 模型因数据孤岛限制而无法充分发挥潜力的难题,MCP 使得 AI 应用能够安全地访问和操作本地及远程数据,为 AI 应用提供了连接万物的接口。

如下图示意,可以将 MCP 理解为一个 "AI 的 USB 接口",提供了一个连接标准,使 Agent/LLM(如 Claude、ChatGPT、Qwen)能够方便、安全的访问各种外部工具和数据(比如 Gmai、Slack、本地文件等)。

MCP 就是制定了一套标准,充当 AI 模型的"万能转接头",让 LLM 可以使用不同工具。如下图示,这样你应该更容易理解"中间协议层"的概念。

MCP 提供给 LLM 所需的上下文:Resources 资源、Prompts 提示词、Tools 工具。

更具体的说 MCP 的优势在于:

  • 生态:MCP 提供很多现成的插件,你的 AI 可以直接使用。
  • 统一性:不限制于特定的 AI 模型,任何支持 MCP 的模型都可以灵活切换。
  • 数据安全:你的敏感数据留在自己的电脑上,不必全部上传(因为我们可以自行设计接口确定传输哪些数据)。

Function Calling

将模型连接到外部数据和系统,平铺式的罗列 Tools 工具。Function Call是大模型与真实世界交互的"桥梁" ,从语言理解 => 具体行动

Function Calling在大模型中的作用:

  • 扩展模型能力
    大模型本身无法直接操作外部系统(如数据库、计算工具),但通过调用预设函数,可以完成:实时数据获取(天气、股价、新闻);复杂计算(数学运算、代码执行);操作外部系统(发送邮件、控制智能设备)
  • 结构化输出
    模型可将用户自然语言请求转化为结构化参数,传递给函数。例如:用户说"明天北京天气如何?" → 模型调用 get_weather(location="北京", date="2025-05-06")
  • 动态决策流程
    模型可根据上下文决定是否/何时调用函数,甚至链式调用多个函数(如先查天气,再推荐穿搭)。

MCP与Function Calling区别

已经有了MCP还需要Function Calling么?

简单、原子化任务使用Function Calling会更方便

  • 查询天气 get_weather(city="北京")
  • 计算数学公式 calculate(expression="3+5")
  • 发送单条通知 send_email(to="user@example.com")

Function Calling优势:

开发快捷:无需配置 MCP Server,直接通过模型 API 调用预定义函数。

低延迟:单次请求-响应,无需协议层开销。

MCP 可能成为主流,但 Function Calling 作为底层能力仍将存在

相关推荐
麻雀无能为力2 小时前
CAU数据挖掘实验 表分析数据插件
人工智能·数据挖掘·中国农业大学
时序之心3 小时前
时空数据挖掘五大革新方向详解篇!
人工智能·数据挖掘·论文·时间序列
IMPYLH3 小时前
Python 的内置函数 reversed
笔记·python
.30-06Springfield3 小时前
人工智能概念之七:集成学习思想(Bagging、Boosting、Stacking)
人工智能·算法·机器学习·集成学习
说私域4 小时前
基于开源AI智能名片链动2+1模式S2B2C商城小程序的超级文化符号构建路径研究
人工智能·小程序·开源
永洪科技4 小时前
永洪科技荣获商业智能品牌影响力奖,全力打造”AI+决策”引擎
大数据·人工智能·科技·数据分析·数据可视化·bi
shangyingying_14 小时前
关于小波降噪、小波增强、小波去雾的原理区分
人工智能·深度学习·计算机视觉
书玮嘎5 小时前
【WIP】【VLA&VLM——InternVL系列】
人工智能·深度学习
猫头虎6 小时前
猫头虎 AI工具分享:一个网页抓取、结构化数据提取、网页爬取、浏览器自动化操作工具:Hyperbrowser MCP
运维·人工智能·gpt·开源·自动化·文心一言·ai编程
要努力啊啊啊6 小时前
YOLOv2 正负样本分配机制详解
人工智能·深度学习·yolo·计算机视觉·目标跟踪