Skip to content

Releases: weiwill88/Local_Pdf_Chat_RAG

v2.0.0 模块化重构 + Bug修复

18 Mar 03:11

Choose a tag to compare

🎉 v2.0.0 重大更新

🔧 架构重构

  • 模块化拆分:将 2775 行的单文件 rag_demo.py 拆分为 15 个独立模块
    • core/(8个模块):文档加载 → 文本分块 → 向量化 → FAISS索引 → BM25索引 → 混合检索 → 重排序 → 生成回答
    • features/(3个模块):联网搜索、矛盾检测、思维链处理
    • utils/:网络工具
    • config.py:配置中心
  • 消除全局变量:使用 VectorStore 类封装 FAISS 索引和数据
  • 代码精简 32%:总代码从 ~2775 行优化至 ~1891 行

🐛 Bug 修复

  • 修复: 提问后看不到回复process_chat 从 generator 改为 return 模式
  • 修复: .env 加载不生效 — 优先加载 .env,回退到 example.env
  • 修复: Ollama 模型名格式错误 — 改为标准 Ollama 格式 deepseek-r1:8b

✨ 新功能

  • LLM 后端自动检测:启动时自动检测 SiliconFlow API / Ollama,无需手动选择
  • 亮/暗主题切换:右上角 🌓 按钮一键切换,支持 localStorage 持久化
  • AutoFaissIndex 实际启用:根据数据量自动选择最优 FAISS 索引类型
  • Gradio 6.x 完整适配:CSS/JS/Chatbot API 全面兼容

📖 文档优化

  • README 新增 venv 分平台指南(Mac/Linux/Windows)
  • 新增 .env 配置步骤和 LLM 自动检测说明
  • 新增项目结构学习路线图

📦 环境要求

  • Python 3.9+
  • 至少配置以下其中一项:
    • SILICONFLOW_API_KEY(云端,推荐)
    • 本地 Ollama 服务