掘金 人工智能 07月11日 18:58
技术实操:基于 OceanBase 打造 MCP 顾问
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了MCP Advisor,一个旨在解决AI大模型与现实世界工具连接问题的方案。它通过统一的媒介接口MCP,简化了AI与各种工具的交互,并解决了工具种类繁多带来的动态规划、服务发现和使用复杂度等问题。MCP Advisor为大模型提供工具推荐和安装建议,并构建了多层Provider架构,融合多种搜索方式,最终为用户提供最佳效果。目前该服务已发布,并规划了未来发展蓝图,旨在赋能企业内部Agent市场。

🔌 MCP(模型上下文协议)被视为AI大模型的“USB-C接口”,是连接大语言模型与现实世界工具的媒介,用于处理文本与工具之间的交互,解决工具连接问题。

🤔 MCP Advisor 旨在解决MCP面临的挑战,包括动态规划、服务发现和使用复杂度等问题。它为大模型提供工具推荐和安装建议,简化了工具的使用流程。

⚙️ MCP Advisor 采用了多层Provider架构,包括MCP连接层、统一搜索服务层和向量引擎与DB层。该架构融合了多种搜索方式,旨在提供最佳的工具推荐效果。

🚀 OceanBase在MCP Advisor中发挥关键作用,包括支持标量、向量和全文搜索,以及作为企业内部数据源的优选。它与FastGPT、Camel AI等项目合作,构建丰富的生态。

💡 MCP Advisor已发布,并规划了四个发展阶段,包括完善基础功能、结合深度学习、开发任务分解引擎以及打造社区,旨在赋能企业内部的Agent市场。

作者,王艺辉,蚂蚁 Agent 开发工程师

首先为大家推荐这个 OceanBase 开源负责人老纪的公众号 “老纪的技术唠嗑局”,会持续更新和 #数据库、#AI#技术架构 相关的各种技术内容。欢迎感兴趣的朋友们关注!

MCP 和 MCP Advisor 是什么

MCP(模型上下文协议)可被简单理解为 AI 大模型的“手”和“脚”。大语言模型本质上是文本的概率模型,其输入与输出均为语言文本。然而,要将这些语言文本与现实世界中的各类工具(如打开空调、电脑,或指挥其他事务)关联起来,就需要一个媒介,而 MCP 正是这样一个统一的媒介接口,可将其视为 AI 与世界之间的“USB-C 接口”,如同电脑通过该接口连接硬盘、网盘、U 盘等设备,为其提供辅助功能。

尽管 MCP 具有重要作用,但现实世界中的工具种类繁多。目前市场上已存在超过13000~15000种工具,涵盖各行各业。例如,借助 MCP 与大语言模型的结合,可绘制《我的世界》中的三维图、CAD 图、机械臂,或在软件工程中进行代码部署、绘制 UI 文件等。

然而,众多工具也带来了诸多问题,主要体现在三个方面。

一是动态规划问题。例如,如果要在小红书上查找最新的新闻并进行分析,Agent 需要临时想到去小红书寻找,那么如何快速找到小红书上的相应工具及 MCP 来完成任务,即动态规划如何满足需求。

二是服务发现问题。面对众多工具,需降低大模型的认知负担,否则当工具数量超过四五十个时,大模型可能难以承受,不清楚该选择哪个工具以及需要发现哪些工具。

三是使用复杂度问题。即使已选定 MCP,如何快速投入使用,降低使用复杂度,也是亟待解决的。因此,MCP Advisor 应运而生,旨在解决这些问题。

以上文提到的小红书热点问题为例,大模型本身在本地并无能力分析处理,需通过 MCP。于是它会询问 MCP Advisor 有哪些工具及 MCP 能助其完成任务。MCP Advisor 会为其推荐 RedNote MCP 和 MCP-Hot news-Servers 等。大模型记录下这些 MCP 后,会选择其中一个继续操作。在操作过程中,若发现 RedNote MCP 还需 play wright 环境,它会继续安装 play wright 的MCP,并询问 MCP Advisor 如何安装。MCP Advisor 会告知其安装方法,大模型便可在整个过程中不间断地完成动态规划,持续运行下去。这便是 MCP Advisor 提供建议及安装能力的基础功能。

架构设计如何兼顾企业&社区

系统组件架构

社区可能会有 13000~15000 多个相对公开的数据源,对于企业用户来说,数据源可能来自于企业内部的文档数据源,文档 MCP,以及一些 MCP 无法完成的发布流程,面对不同的场景和需求,我们设计了多层 Provider 架构,一共分为 MCP 连接层、统一搜索服务层、向量引擎与 DB 层,共同完成整个分析处理流程。

MCP 连接层: 处理查询请求,同时支持 STDIO 、SSE 和 REST 三种传输方式;处理来自本地、API 和企业内部的数据源,满足不同集成场景的需求。

统一搜索服务层: 多 Provider 架构,融合 OceanBase、Meilisearch 、API 与内存引擎的混合搜索结果,提供最好的推荐效果。

向量引擎与 DB 层: 基于 TensorFfow 与 OceanBase 的 HNSW 高维向量索引,实现分布式定时数据更新,支持内存兜底。

最终将各个 Provider 的结果进行融合,无论是离线的、企业的还是社区的数据,都能在最后重排,为用户提供最佳效果。

数据流程

当用户提出问题时,在系统中包含4个处理步骤。

第一步,意图处理:首先对问题进行简单的 NLP(Natural Language Query),即自然语言处理,过程中提取关键词和意图,由 TensorFlow.js 向量化处理。向量化完成后,会进行 embedding,维度与 OpenAI 的嵌入模型保持一致,为1536 维。

第二步,并发召回与融合:多个 provider 并发混合搜索,包括内部自建的内存向量数据库、公网 API、优先处理标量过滤和向量过滤的 OceanBase 、MeiliSearch,可以继续扩展,融合各自优点。

第三步,标量&向量混合搜索:并发执行标量过滤 和向量 HNSW 相似度查询。

第四步,融合结果:允许调整不同来源的权重,加权融合推荐结果。

在 MCP Advisor 架构中,OceanBase的核心作用包括三个方面:

成果展示与未来规划

MCP Advisor 服务正式发布一月来,仅仅 Glama 一个平台已有 380+ 下载(github.com/istarwyh/mc… mcp.so 首页,并且云端已 hosted,用户可免费体验,也可下载到本地进行简单配置。

展望未来,我们将 MCP Advisor 的发展路径划分为以下四个发展阶段:

老纪的技术唠嗑局」不仅希望能持续给大家带来有价值的技术分享,也希望能和大家一起为开源社区贡献一份力量。如果你对 OceanBase 开源社区认可,点亮一颗小星星 ✨ 吧!你的每一个Star,都是我们努力的动力。

github.com/oceanbase/o…

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

MCP MCP Advisor AI OceanBase
相关文章