返回市场
带有Milvus的测试 Rag

带有Milvus的测试 Rag

作者:NanGePlus29 星标更新:2025-09-15

项目介绍

1. 项目介绍

从内容收集到智能搜索:全栈开源:构建企业级AI搜索代理,逐步理解业务逻辑,低代码收集+云原生向量库Milvus+MCP协议+代理
https://youtu.be/i3ul7JAAQIY\ https://www.bilibili.com/video/BV1whaqzzEK8/

Milvus Attu图形用户界面可视化管理工具操作指南,涵盖从内容收集到智能搜索,包括创建数据库、定义模式、创建索引、创建集合、上传本地文件和导入数据
https://youtu.be/SaMb4kA7OT0\ https://www.bilibili.com/video/BV1sPafzqEEQ/

[从内容收集到智能搜索] N8N低代码平台实现官方账号文章内容收集的全自动工作流程,并使用AI代理自动生成内容摘要
https://youtu.be/bHjI5U3ETLU\ https://www.bilibili.com/video/BV17mpBz5ELJ/

企业在应用AI时遇到的问题不仅因为工程要求高,还因为开发者往往沉浸在某些技术细节中,而忽视了现实场景的复杂性。以看似简单的AI内容搜索为例,用户的需求远不止“查找关于AI代理的文章”这种单维度问题,这些问题可以通过“知识库+向量+大模型”轻松解决。实际情况可能是:
查找由辛志远在2023年9月5日之前发表的与AI智能代理相关的文章,返回3篇文章并提供其标题、链接和发布者。
此类请求结合了向量相似度(文本语义)、关键词全文搜索、条件精确过滤、混合搜索等。问题的瓶颈并非在于大模型,更不用说向量数据库。而是:
企业AI应用的众多场景从来不是孤立的,而是与企业的业务紧密相关,这体现在应用、流程和数据的多个层面。

本项目提供了一个解决方案思路,介绍了如何实现一个类似的搜索案例,具体如下:
查找由辛志远在2023年9月5日之前发表的与AI智能代理相关的文章,返回3篇文章并提供其标题、链接和发布者。
此外,可能还会受到无关条件信息的干扰,例如:
查找由辛志远在2025年9月5日之前发表的与AI智能代理相关的文章,字数为200字且价格不超过500元的文章,返回3篇文章并提供其标题、链接和发布者。

主要实现功能:
(1) 使用低代码平台N8N自动收集并保存多个微信公众号的文章至本地文件
(2) 使用主流开源云原生向量数据库milvus存储收集的数据到知识库,满足语义搜索、全文搜索和混合搜索需求
(3) 封装搜索功能为标准MCP服务器,提供外部服务
(4) 大模型(代理)使用搜索MCP服务器进行内容搜索
整体业务流程如图所示:
<img src="./img.png" alt="" width="1200" />

2. 初步准备工作

2.1 集成开发环境构建

Anaconda提供了Python虚拟环境,而PyCharm提供了集成开发环境
详情请参阅以下视频:
【大型模型应用开发-入门系列】03 集成开发环境构建-开发前准备
https://youtu.be/KyfGduq5d7w

2.2 大型模型LLM服务接口调用方案

(1) 国外大型模型如GPT大型模型的使用计划
无法直接在国内访问,可以使用代理选择具体的代理解决方案
我们推荐大家使用:https://nangeai.top/register?aff=Vxlp\ (2) 非GPT大型模型解决方案OneAPI方法或大型模型供应商的原生接口
(3) 本地开源大型模型解决方案(Olama方法)
详情请参阅以下视频:
【大型模型应用开发-入门系列】04 大型模型应用的LLM服务接口调用方案
https://youtu.be/mTrgVllUl7Y

3. 项目初始化

3.1 下载源代码

从GitHub或Gitee下载项目文件到本地设备。下载链接如下:
https://github.com/NanGePlus/RagWithMilvusTest\ https://gitee.com/NanGePlus/RagWithMilvusTest

3.2 项目构建

使用PyCharm构建项目,并为项目配置虚拟Python环境
项目名称:RagWithMilvusTest
保持虚拟环境名称与项目名称一致

3.3 将相关代码复制到项目工程中

将下载代码文件夹中的所有文件复制到新创建项目的根目录

3.4 安装项目依赖

新建命令行终端,在终端中运行以下命令进行安装
pip install pymilvus==2.6.0
pip install openai==1.101.0
pip install mcp==1.8.0
pip install requests==2.32.5
注意: 建议首先使用此项目所需的相应版本,避免因版本升级导致的代码不兼容问题。测试通过后,再进行升级测试

4. 功能测试

详情请参阅各部分的说明文档