Skip to content

GML-FMGroup/article-rag

Repository files navigation

Article-RAG

💡 Overview

Article-RAG是一个基于文档篇章结构的RAG系统。关于系统的技术说明请查看文档

📁 Code structure

|-- conf                配置文件
|-- data                本地数据文件
|-- docker
|   |-- elastic_search  es docker启动
|   |-- milvus          milvus docker启动
|   |-- vllm            vllm docker启动
|-- docs                文档
|-- script
|   |-- chat_client     
|   |-- mini_dm         mini对话管理模块
|   |-- streamlit_bot   streamlit bot
|   |-- insert_to_kb.py 插入数据到知识库
|   |-- pdf2md.py       pdf转md
|-- server              主服务
|-- src
|   |-- connector       数据库连接
|   |-- local           本地数据处理
|   |-- models          模型请求客户端
|   |-- pipeline        系统pipeline
|   |-- query_analyze   query分析
|   |-- reranker        重排
|   |-- retrieval       召回
|   |-- utils           工具

✨ Features

  • 本地部署: 基于docker部署检索服务,包括Elasticsearch,Milvus,同时提供了vllm模型服务
  • 一键转换数据: 支持pdf数据一键转换成md数据
  • 知识一键入库: 使用自动化脚本一键将数据导入知识库
  • 对话: 支持多轮对话,提供简单的对话UI

🚀 Quick Start

环境要求

Python 3.11 或更高版本 uv 包管理器 (推荐)

安装指南

  1. 克隆项目到本地:

    git clone <repository-url>
    cd article-rag
  2. 安装依赖库:

    uv sync

配置说明

  • 填写必要配置信息,复制.env.template文件为.env,并填写对应的参数。

启动中间件

  • 启动Elasticsearch: docker-compose -f docker/elastic_search/docker-compose.yml up -d
  • 启动Milvus: docker-compose -f docker/milvus/docker-compose.yml up -d
  • 启动vllm(可选): docker-compose -f docker/vllm/docker-compose.yml up -d

数据预处理

  • 将数据放入data目录下,并使用script/pdf2md.py将pdf数据转换成md数据。
  • 若用到mineru,请安装magic_pdf

知识入库

  • 使用script/insert_to_kb.py将数据导入知识库。

启动服务

  • 启动服务: cd server && uv run main_server.py

对话测试

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages