Files
rag/CHANGELOG.md
lacerate551 100d1a06eb init: RAG 知识库服务初始提交
- 后端 API(Flask + Gunicorn)
- RAG 引擎(混合检索 + 云端 Reranker + 引用溯源)
- 文档解析(MinerU + 多格式支持)
- Docker 生产部署配置
- 排除前端项目、敏感配置、模型文件
2026-06-04 17:35:27 +08:00

145 lines
4.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Added - Graph RAG
- **知识图谱模块** - Neo4j 图数据库集成
- `graph_manager.py`: 图谱管理器,支持实体/关系的 CRUD 操作
- `entity_extractor.py`: LLM 驱动的实体提取器
- `graph_rag.py`: 图谱增强检索模块
- `graph_build.py`: 图谱构建脚本
- **Graph RAG 功能**
- 向量检索 + 图谱检索融合
- 多跳推理查询(如"XX部门负责什么制度"
- 实体关系自动发现
- 中文关系类型映射负责→RESPONSIBLE_FOR
- **前端图谱状态显示**
- 图谱连接状态面板
- 节点/关系数量统计
- 实体类型分布展示
- "测试图谱检索"按钮
- **Graph RAG API**
- `POST /graph/search`: 图谱检索接口
- `POST /graph/build`: 重建图谱索引
- `GET /graph/stats`: 获取图谱统计信息
- **智能聊天网络搜索**
- Chat 模式支持网络搜索(实时天气、新闻等)
- 自动判断是否需要实时信息
- 触发关键词:今天、最新、天气、新闻、股价等
- 消息显示"网络搜索"标签
### Changed
- `/chat` 接口从直接 LLM 调用改为 `agentic_rag.chat_search()`
- 前端模式命名:"普通聊天" → "智能聊天"
- 返回结果增加 `web_searched` 字段
### Technical Details - Graph RAG
| 组件 | 技术 | 说明 |
|------|------|------|
| 图数据库 | Neo4j 5.x | Docker 部署 |
| 实体提取 | LLM (Qwen) | 从文档自动提取三元组 |
| 关系映射 | 中文→英文 | Neo4j 关系类型限制 |
| 检索融合 | Vector + Graph | 上下文融合生成答案 |
---
## [3.0.0] - 2025-03-28
### Added
- **双模式对话系统**
- `/chat`: 普通聊天模式 (qwen3.5-flash)
- `/rag`: 知识库问答模式 (qwen3.5-plus)
- **会话管理**
- SQLite 持久化存储
- 多用户多会话支持
- 会话列表、历史记录、删除功能
- **前端界面**
- `chat-ui/`: HTML + CSS + JavaScript
- 会话列表侧边栏
- 模式切换按钮
- 加载状态显示
- 来源信息展示
- **并发支持**
- Flask threaded 模式
- 多用户同时请求
- **Agentic RAG**
- Agent 决策:动态决定检索、改写、分解
- 网络搜索Serper API 集成
- 多源融合:知识库 + 网络内容
### Changed (v3.0.0 后的优化提交)
- 统一模型目录管理,使用 HuggingFace 模型名
- 合并 rag_api.py 到 rag_api_server.py
- 增量同步时同步更新 BM25 索引
- 从 rag_demo.py 移除图谱构建代码
### Technical Details
| 模块 | 技术 | 说明 |
|------|------|------|
| 会话管理 | SQLite | sessions.db |
| 前端 | Vanilla JS | 无框架依赖 |
| API | Flask + CORS | 跨域支持 |
---
## [2.1.0] - 2025-03-27
### Added
- Dify 智能出题系统集成
- 自动出题和批阅功能
- `exam_manager.py`: 出题系统管理器
- Dify 快速入门指南文档
### Changed
- 更新配置模板支持 Dify API
---
## [1.1.0] - 2025-03-27
### Added
- **P1: Excel智能分块** - Excel数据按语义块存储解决表格检索碎片化问题
- **P2: 置信度标注** - 回答末尾自动添加置信度评估(高/中/低)
- **P3: Rerank重排序** - 使用CrossEncoder对检索结果精排提高准确率
- **P4: 混合检索** - 向量检索 + BM25关键词检索 + RRF融合 + Rerank精排
- BM25索引管理器支持中文分词(jieba)
- RAG幻觉问题优化方案文档
### Changed
- 重构检索模块,支持多种检索策略
- 优化Prompt添加严格约束防止幻觉
### Technical Details
| 优化项 | 技术 | 效果 |
|--------|------|------|
| P1 | Excel智能分块 | 354片段→4片段检索完整 |
| P2 | Prompt优化 | 置信度标注 |
| P3 | bge-reranker-base | 精确打分 |
| P4 | BM25 + RRF + Rerank | 语义+关键词融合 |
---
## [1.0.0] - 2025-03-26
### Added
- 初始版本RAG本地知识库问答系统
- 支持PDF、Word、Excel、TXT格式
- 本地向量模型 bge-base-zh-v1.5
- Chroma向量数据库
- Qwen3.5-plus API调用