什么是 Agent 

在我们使用大模型的时候,大模型其实缺少很多能力。比如:我们向 Claude 发出指令:帮我画一只小猫。这时候 Claude 会这样回复你:对不起,我没有绘画的能力,无法帮你画一只小猫。

这时候怎么办呢?

我们就要使用到 Agent 。 

第一步:我们要自己开发一个绘画的接口,该接口接收一个入参: Prompt ,然后调用其他 AI 工具比如 Midjourney 、 Stable Diffusion 等,生成图片,然后返回一个 Image_url 。 

第二步:我们要生成一个 Json 对象,用自然语言描述我们这个接口的功能、入参、出参等,帮助大模型理解。 

第三步:在调用大模型的时候,传入一个 Tools 对象,把上一步的 Json 传进去。

第四步:此时,我们再向大模型发出指令:帮我画一只小猫。此时的大模型返回值中,会有一个: Tool_use 字段,告诉你的程序:此时要调用工具了。并且会返回给你对应工具的名称、入参等。 

第五步:你的程序根据大模型的返回值调用绘画接口。 

第六步:拿到绘图结果之后,你有两个选择:1.你可以直接返回图片给用户 2.你也可以再次将结果发给大模型,由大模型转为更加自然的语言返回给用户。 

第七步:完毕。 

整个流程如下:

 

这样,我们就通过 Agent ,给大模型加上了很多的能力,比如:绘画、查询天气、预订机票、网页搜索等等,所有传统代码的操作能力都可以集成到大模型上。这样大模型的能力就大大加强了。

什么是 MCP 

以上的 Agent 有一个缺点:各大模型之间不通用。 

比如:调用 Claude 的时候,属性名称叫 Tools ,调用其他模型的时候,可能叫 Functions ,总之有一些细微的区别,这导致了你开发的 Tool 无法适配各个大模型。 

就像之前的手机接口: 苹果手机用的是两端扁平的 Lightning 接口;安卓是梯形的安卓接口。直到 Type-C 出现后,才解决了这个问题,统一了各家的接口,成功让一根线可以适配不同的系统。 

而现在, MCP 就是大模型界的 Type-C 。 Type-C 是一种协议, MCP 也是一种协议。协议就是约定。只要你按照这种约定开发的工具,你就不用担心模型适配的问题。 换个模型也能用。现在各大模型都已经支持 MCP 协议,也就是说,现在按照 MCP 协议去开发的工具,不用再像以前那样,换一个模型就不能用,就要修改代码了。 这带来了极大的便利性。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐