前言

加入星球的同学应该都知道,我们最近开发完成了一个AI智能体通信项目

AI智能体通讯项目通过rpc框架实现clinet与server通信,利用client把想对agent询问的问题发送给server,server集成了多个agent,来实现复杂问题的解答。

agent之间使用a2a协议进行交互,并且agent也通过mcp协议集成了mcp tools,也利用rag技术减少了大量无效mcp tools信息传入给agent消耗token。

很多学cpp / c++相关的同学,也都想做一个AI相关的项目,追一下目前的AI潮流,给简历增加点含金量。

但是又怕花钱加入星球,发现这个项目也像其他博主哪样,对于AI相关的只是调用了AI对话接口,本质还是后端这样的项目。

针对此项目的原文章可以看下面的链接:

https://mp.weixin.qq.com/s/cATjUcO2uoi8Knim6ZKb5w

但是呢,有含金量的同时就意味着难度很大,需要花费很长的时间。很多同学可能时间不够,马上该投简历面试了。那这个时候既想简历上有AI的东西又想快速掌握。

那这个时候怎么办呢?

很多同学会考虑做咱们这个AI智能体通讯项目衍生出来的子项目:

源码实现a2a协议,看下面文章

https://mp.weixin.qq.com/s/L74rYrYoCTxQh8FgyHTsgA

源码实现mcp协议,但是针对mcp协议这个子项目,一直没有从完整项目里摘出来,代码看起来可能比较费事,针对这种情况,今天我把它摘出来了

项目视频

https://www.bilibili.com/video/BV12c62BzEPR/?spm_id_from=333.1007.0.0&vd_source=b7f84f9122e6cf826e5c747e473cb4f7

alt

代码截图

alt

简历书写

alt

文档展示

(文档内容太多了,只截取一部分哈,可以看看关于此项目的其他公众号文章加一步了解)

架构图

alt

RAG-MCP(重点)

大家可以重点了解一下

(此部分个人认为是此项目mcp实现中优化的一个亮点,在面试中也会是一个极具加分的点)

说明

RAG-MCP (Retrieval-Augmented Generation for Model Context Protocol) 是本项目中实现的一个基于语义检索的智能工具选择框架

它的核心思想是:当 MCP Server 提供大量工具时,不再将所有工具都发送给 LLM,而是通过语义相似度搜索,只返回与用户查询最相关的少量工具。

解决的问题

在实际应用中,一个 MCP Server 可能提供几十甚至上百个工具。如果将所有工具的描述和参数 Schema 都发送给 LLM,会带来以下问题:

(1)Token 消耗过大:每个工具的名称、描述、参数 Schema 都会占用 Token,大量工具会显著增加成本

(2)选择准确率下降:LLM 在大量工具中选择正确工具的准确率会下降

(3)响应速度变慢:处理大量工具信息需要更多时间

(4)上下文窗口限制:可能超出 LLM 的上下文窗口限制

RAG-MCP 通过语义检索,只返回与用户查询最相关的 Top-K 个工具(默认 5 个),有效解决了上述问题。

实现原理/实现过程

RAG-MCP 的工作原理可以用一句话概括:将文本转换为向量,通过向量相似度找到最相关的工具。

具体主要分为两个阶段:

(1)工具索引阶段:将每个工具的名称、描述、参数信息组合成文本,调用 Embedding API 转换为向量,存储在向量索引中

(2)查询检索阶段:将用户查询转换为向量,在向量索引中搜索最相似的工具向量,返回对应的工具

alt

整体流程:

(1)工具索引流程: alt

(2)查询检索详细流程 alt

底层原理讲解

为什么 "计算 123 + 456" 能够匹配到 "calculator" 工具?

语义匹配原理 alt alt alt

MCP开发做的工作

alt

星球同学对项目评价/期待

alt alt alt

alt alt

项目运行效果截图

alt alt alt alt alt alt alt

知识星球介绍(公认的cpp c++学习地)

星球名字:奔跑中的cpp / c++

专注cpp/c++相关求职领域的辅导

加入星球福利,后续如果有其他活动、服务,不收费,不收费,可以合理赚钱就收取下星球费用,但是不割韭菜,保持初心

感兴趣的微信扫下面的码,然后下载知识星球app登录即可 alt

(1)高质量的项目合集 alt alt alt alt alt alt alt

同时如果项目,遇到任何困惑也会第一时间进行解答的 alt

(2)高质量精确性八股资料 alt alt alt

(3)详细的学习路线 alt

(4)活跃的学习氛围,星球打卡不只是一个形式,而是每天观看,针对同学们的学习情况提出合理化的建议,同时也有高质量的星球微信内部群 alt alt alt

(5)星球提问简历修改,提供意见的同时,还会给安排一对一腾讯会议辅导 alt alt

(6)星球同学offer情况,以及对应学习情况,给大家提供参考 alt

(7)全网最全cpp相关面经整理 alt alt

(8)编程实战能力提升平台(大家都可以使用的,免费的)

访问网址 cppagancoding.top alt

星球同学的评价 alt

(9)每周也会进行直播答疑,同时有时也会给星球内部同学开一些知识、路线分享会。

具体可以看B站放的视频,up名字:cpp辅导的阿甘

(10)奖励金激励,会根据大家打卡学习/ 面经打卡整理情况,每个月每个季度发放奖励金。有的人陆陆续续已经获得了数千月的奖励金,是加入星球费用的数十倍了 alt alt

等等,可能还有一些其他服务,目前没想起来的,以及后续也会增加的服务

本文由 mdnice 多平台发布

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐