检索增强生成实验平台

RAGPlayground是一个用于实验检索增强生成(RAG)管道的项目,集成了PostgreSQL + pgvector进行语义搜索,Hugging Face模型用于嵌入和生成,以及一个MCP服务器,使GitHub Copilot Agent Mode能够与知识库交互。

  • by Ahmed-Nezar
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 ahmed-nezar/ragplayground

使用说明

RAG铺设场地

RAGPlayground是一个试验检索增强生成(RAG)管道的项目。它集成了PostgreSQL+pgvector用于语义搜索,Hugging Face模型用于嵌入和生成,以及一个允许GitHub Copilot Agent Mode与知识库交互的MCP服务器。

该项目演示了两个工作流程:

  1. 经典RAG:拥抱脸LLM用于根据检索到的上下文生成响应。
  2. 代理模式:GitHub Copilot使用MCP(模型上下文协议)查询知识库。

特性

  • 端到端RAG管道(数据接收→ 嵌入→ 数据库→ 检索→ LLM响应)
  • PostgreSQL与pgvector用于向量相似性搜索
  • 嵌入的句子转换器
  • 拥抱面部推理API用于LLM聊天完成
  • 用于Copilot Agent集成的MCP服务器
  • 自动创建数据库和表(如果不存在)
  • 用于彩色提示查询的交互式CLI循环

RAG管道流量


项目结构

RAGPlayground/
├── README.md
├── LICENSE
├── main.py
├── requirements.txt
└── src/
    ├── db/
    │   └── rag.py          # Database setup, table creation, embeddings insertion
    ├── extract/
    │   └── processing.py   # Dataset download, preprocessing, embeddings generation
    ├── llm/
    │   └── llm.py          # Hugging Face client, context retrieval, LLM querying
    └── mcp/
        └── server.py       # MCP server for GitHub Copilot Agent

安装

  1. 克隆存储库 git clone https://github.com/ahmednezar/RAGPlayground.git cd RAGPlayground

  2. 安装依赖项 pip install -r requirements.txt

  3. 安装PostgreSQL并启用pgvector扩展 内部 psql: CREATE EXTENSION IF NOT EXISTS vector;

  4. 在中配置环境变量 .env 文件:

    HF_TOKEN=your_huggingface_token_here
    

数据集

该项目使用Kaggle的AG新闻分类数据集。它是使用自动下载的 kagglehub 当你运行管道时,然后预处理成嵌入。


如何使用

拥抱脸部模型跑步(经典RAG)

python main.py --llm mistralai/Mistral-7B-Instruct-v0.3 --embedding BAAI/bge-base-en-v1.5

例子:

[RagPlayground] Enter your query: Tell me about soccer news
[RagPlayground] Response: <contextual answer based on retrieved docs>

在MCP(副驾驶代理模式)下运行

python main.py --mcp --embedding BAAI/bge-base-en-v1.5

  • 在以下位置启动MCP服务器 localhost:5001.
  • 副驾驶代理将使用 retrieve_documents 在回答之前获取上下文的工具。
  • 代理人遵循以下说明 .github/instructions/.

建筑

  1. 数据层:下载AG News数据集,生成嵌入。
  2. 存储层:使用pgvector存储在PostgreSQL中的嵌入。
  3. 检索层:使用余弦距离进行相似性搜索。
  4. 产生层:拥抱脸LLM或带MCP的副作用剂。

截图

经典RAG

抹布+MCP