Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

智能知识问答工具(RAG)

基于 DeepSeek 大模型 + 向量检索增强生成(RAG)的本地知识问答工具。

功能特性

  • 📄 支持 PDF / Word / TXT 三种格式文档入库
  • 🔍 基于向量检索的语义问答,从您的文档中查找答案
  • 💬 Gradio 聊天界面,支持流式输出、多轮对话
  • 📊 知识库状态查看、一键重建索引
  • 📚 回答附带参考来源,方便验证

快速开始

1. 安装依赖

pip install -r requirements.txt

2. 配置环境变量

复制 .env.example 为 .env,填入您的 DeepSeek 配置:

cp .env.example .env

编辑 .env:

DEEPSEEK_API_KEY=你的DeepSeekAPI密钥
DEEPSEEK_BASE_URL=https://api.deepseek.com
DEEPSEEK_MODEL=deepseek-v4-pro

3. 准备知识库文档

将您的 PDF / Word / TXT 文档放入 knowledge/ 文件夹。

4. 构建知识库索引

python ingest.py

如需强制重建索引(清空并重新入库所有文档):

python ingest.py --rebuild

5. 启动问答界面

python app.py

浏览器访问 http://127.0.0.1:7860 即可开始问答。

项目结构

rag_assistant/
├── config.py        # 配置文件(API、路径、参数)
├── ingest.py        # 文档解析、分块、向量化入库
├── retriever.py     # 向量检索模块
├── rag_pipeline.py  # RAG 生成管道(检索 + DeepSeek 生成)
├── app.py           # Gradio Web 界面
├── knowledge/       # 知识库文档存放目录
├── chroma_db/       # 向量数据库持久化目录
├── requirements.txt
└── .env             # 环境变量(从 .env.example 复制)

使用说明

  1. 提问:在输入框输入问题,点击"发送"或按回车
  2. 查看知识库状态:点击右侧"📊 查看知识库状态"按钮
  3. 重建索引:新增文档后,点击"🔄 重建知识库索引"按钮(或运行 python ingest.py)

技术栈

  • LLM:DeepSeek(OpenAI 兼容接口)
  • 向量化:sentence-transformers(shibing624/text2vec-base-chinese)
  • 向量数据库:ChromaDB(本地持久化)
  • 文档解析:PyMuPDF / python-docx

注意事项

  • 首次运行会下载中文向量模型(约 400MB),需要网络连接
  • 如果知识库中没有相关文档,模型会明确提示
  • 支持增量入库:运行 python ingest.py 时,已入库的文档会自动跳过

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages