RAG Qdrant探员
AI Agent&Qdrant是一个小型的实验性单仓库,它汇集了基本的模型上下文协议(MCP)组件和Qdrant向量存储。该项目的目标是探索如何在一个地方构建一个简单的检索增强生成(RAG)设置,在那里可以测试和更新工具、代理和工作流,而无需管理多个仓库。
______________________________________________________________________
快速入门:MCP示例,包括Qdrant、ai_service(存根)、后端(FastAPI)、前端(Vite React)
- 构建并运行(需要Docker Compose):
docker构建
- 服务
- 后端(FastAPI):http://localhost:8000
- 健康:http://localhost:8000/api/health/ - AI端点:http://localhost:8000/api/ai/query(职位)
- AI服务(存根):http://localhost:8001
- 健康:http://localhost:8001/health - 查询:http://localhost:8001/v1/query(职位)
- 问题:http://localhost:6333(用于存根)
- 卷曲示例:
curl-X POSThttp://localhost:8000/api/ai/query-H“内容类型:应用程序/json”-d'{“查询”:“你好”}'
笔记:
- 这
frontend_builder该服务构建Vite前端,并将构建内容复制到NGINX容器中。
______________________________________________________________________
具有AI服务、FastAPI、Redaction Gate MCP和React UI的MCP Monrepo项目结构
- Python AI服务(例如,使用LangChain/OpenAI)
- Python FastAPI后端(提供API端点)
- React前端
agent_rag_qdrant/
│
├── .github/
│ └── workflow/
│ └── github-actions.yml
│
├── ai_service/ # Python AI service (LangChain/OpenAI logic)
│ ├── main.py
│ ├── requirements.txt
│ └── ... (other modules)
│
├── backend/ # FastAPI backend (serves API)
│ ├── main.py
│ ├── requirements.txt
│ └── ... (routers, models, etc.)
│
├── frontend/ # React UI
│ ├── package.json
│ ├── public/
│ └── src/
│
├── redaction_gate/ # Python Redact FastMCP/FastAPI
│ ├── main.py
│ ├── requirements.txt
│ └── ... (other modules)
│
├── docker-compose.yml
└── README.md细节:
ai_service/:包含核心AI逻辑,可以作为单独的服务运行或由后端导入。backend/:FastAPI应用程序,可以为API端点提供服务。frontend/:React应用程序(使用Create React app、Vite或类似工具创建)。- docker-compose.yml:编排所有服务(Qdrant、AI服务、FastAPI后端、NGINX中的React前端)。
redaction_gate/:FastMCP服务,可以为MCP服务。
要点:
- 这
frontend服务构建React应用程序并输出到frontend/build. - 这
backend为API端点提供服务。 - 这
ai_service可以是单独的微服务,也可以由后端导入。
______________________________________________________________________
部署前
- 添加
.env归档于 *./ai_服务/* 并定义 OPENAI_API_KEY=\[API_KEY\] 以允许访问OpenAI。
______________________________________________________________________
开发环境
- 使用以下docker compose命令执行deploy-dev模式:
docker compose -f docker-compose.yml -f docker-compose.overwrite.dev.yml up -d --build