应用背景
你是否向大模型提问过:“现在几点了?”“我这里的天气怎么样?”的问题?那么它能够正确回答吗?
目前来看——一般会回答错误。
当下,LLM的能力早已不局限于“文本生成”,而是能够通过外部工具的调用变得“手眼通天”:脱离原有的封闭环境,获得了与外部环境交互的能力。
相当于给大模型加上了手脚🧐
与外部环境交互通过MCP进行工具调用的规范化,通过A2A实现Agent与Agent之间交互的规范化。
Function Calling->MCP
工具调用基于function calling实现并被广泛用于商业API交互,目前国产的主流LLM大多已支持。
而Ahthropic推出的MCP(Model Context Protocol)正是针对“工具调用接口的规范化”应运而生的协议。
调用的过程其实是让大模型理解我们需求的过程。
这里按个人理解写一下MCP应用流程:
用户通过配置MCP服务->提供工具调用的相关函数及其对应的传参要求,
模型在
- 理解用户需求
- 学会函数对应参数的攥写格式
的基础上,
判断函数是否调用、如何调用、拿到返回的结果后如何分析。
Function Calling和MCP是当前技术落地的核心方式。前者侧重模型原生能力,后者强调协议标准化。
那么AI Agent(人工智能代理/智能体)则为更高阶的形态,其融合了自主决策+工具调用,能够更加适用于复杂场景。
MCP->A2A
若再视野拓展至MAS(Multi-Agent Systems)的多智能体系统协作领域,我们就不能不提起A2A(Agent-to-Agent Protocol,代理间通信协议)。
到这里可以将上文提到的三个概念搭建为三层级的技术栈模型:
【A2A】 // Agent与Agent~协作网络
↑
【MCP】 // Agent与工具~资源与会话管理
↑
【Function Calling】 //模型原生能力
👉Google将A2A比作互联网早期的HTTP协议。
