# RAG知识库 - 快速开始指南 ## 📝 操作步骤 ### 第1步:准备文档 将你的心理学知识文档放入上传目录: ``` D:\wwwroot\RAG\uploads\ ``` 支持的格式: - `.txt` - 纯文本 - `.pdf` - PDF文档 - `.docx` - Word文档 - `.md` - Markdown文档 示例文档结构: ``` D:\wwwroot\RAG\uploads\ ├── 抑郁症评估标准.txt ├── 焦虑症干预方法.pdf ├── 心理咨询案例集.docx └── 心理健康知识.md ``` ### 第2步:启动应用 确保以下服务正在运行: - ✅ Ollama(用于生成向量) - ✅ MySQL(系统数据库) - ✅ Redis(缓存) - ✅ Spring Boot应用 启动Spring Boot应用后,访问: ``` http://localhost:30081 ``` ### 第3步:处理文档 **方式A:使用脚本(推荐)** 双击运行: ``` 处理上传文件.bat ``` 脚本会自动: 1. 检查应用状态 2. 扫描上传目录 3. 调用API处理所有文档 4. 生成向量并保存 **方式B:使用API** ```bash # 处理所有文档 curl -X POST http://localhost:30081/api/knowledge/rebuild # 或使用Postman/浏览器访问 POST http://localhost:30081/api/knowledge/rebuild ``` **方式C:通过Web界面** 1. 登录系统 2. 进入"知识库管理" 3. 点击"重建索引"按钮 ### 第4步:检查状态 **方式A:使用脚本** 双击运行: ``` 检查知识库状态.bat ``` **方式B:使用API** ```bash # 查看知识库状态 curl http://localhost:30081/api/knowledge/status # 返回示例: { "ai_service": "connected", "vector_store": "connected", "document_count": 156, "mode": "hybrid", "ollama_url": "http://localhost:11434", "openai_url": "https://api.moonshot.cn/v1" } ``` **方式C:查看文件** 检查向量数据文件是否生成: ``` D:\wwwroot\RAG\data\chroma_db\vector_store.json ``` 如果文件存在且大小>0,说明数据已加载。 ### 第5步:测试检索 **使用API测试** ```bash # 测试知识检索 curl -X POST http://localhost:30081/api/knowledge/retrieve ^ -H "Content-Type: application/json" ^ -d "{\"query\":\"抑郁症的症状有哪些\",\"top_k\":3}" # 返回示例: { "documents": [ "抑郁症的主要症状包括:情绪低落、兴趣减退...", "轻度抑郁的表现:偶尔情绪低落,但能维持日常生活...", "中度抑郁需要及时寻求专业心理咨询..." ], "sources": [...], "retrieval_time": 0.05 } ``` ### 第6步:使用AI分析 在系统中使用AI分析功能: 1. 进入"测评报告"页面 2. 选择一个测评报告 3. 点击"AI分析"按钮 4. 系统会: - 从知识库检索相关内容 - 调用Kimi API生成分析 - 显示分析结果和知识来源 ## 🔄 日常维护 ### 添加新文档 1. 将新文档放入 `D:\wwwroot\RAG\uploads\` 2. 运行 `处理上传文件.bat` 3. 系统会处理新文档并更新向量库 ### 更新文档 1. 替换 `D:\wwwroot\RAG\uploads\` 中的文档 2. 运行 `处理上传文件.bat` 3. 系统会重新处理所有文档 ### 删除文档 1. 从 `D:\wwwroot\RAG\uploads\` 删除文档 2. 运行 `处理上传文件.bat` 3. 系统会重建索引(不包含已删除的文档) ### 清空知识库 **方式A:使用API** ```bash curl -X DELETE http://localhost:30081/api/knowledge/clear ``` **方式B:删除文件** ```bash # 删除向量数据 del D:\wwwroot\RAG\data\chroma_db\vector_store.json # 删除所有文档 del D:\wwwroot\RAG\uploads\*.* ``` ## 📊 监控和优化 ### 查看处理日志 应用日志会显示处理进度: ``` [INFO] 开始处理文档: 抑郁症评估标准.txt [INFO] 文档分块: 5个片段 [INFO] 生成向量: 5/5 [INFO] 保存到向量库: 完成 [INFO] 处理耗时: 2.3秒 ``` ### 性能优化 如果处理速度慢: 1. 检查Ollama是否正常运行 2. 减小文档大小或数量 3. 调整分块参数(application.yml) ### 备份数据 定期备份重要文件: ```bash # 备份向量数据 copy D:\wwwroot\RAG\data\chroma_db\vector_store.json backup\ # 备份文档 xcopy D:\wwwroot\RAG\uploads backup\uploads\ /E /I ``` ## ❓ 常见问题 ### Q: 运行脚本提示"应用未启动"? A: 先启动Spring Boot应用,确保能访问 http://localhost:30081 ### Q: 文档处理失败? A: 检查: 1. Ollama是否运行(`ollama list`) 2. 文档格式是否支持 3. 文档是否损坏 4. 查看应用日志 ### Q: 向量数据文件很大? A: 正常现象。1000个片段约10-20MB。可以: 1. 删除不需要的文档 2. 调整分块大小 3. 定期清理 ### Q: 重启后数据丢失? A: 不会!数据已持久化到 `vector_store.json`。 如果丢失,检查: 1. 文件是否存在 2. 文件权限是否正确 3. 应用日志是否有错误 ### Q: 如何验证数据已加载? A: 三种方式: 1. 运行 `检查知识库状态.bat` 2. 查看 `vector_store.json` 文件大小 3. 测试知识检索API ## 🎯 最佳实践 1. **文档质量**:上传高质量、结构化的文档 2. **定期更新**:及时更新过时的知识 3. **分类管理**:用子目录组织不同类型的文档 4. **测试验证**:上传后测试检索效果 5. **备份习惯**:定期备份向量数据和文档 --- **现在开始使用吧!** 🚀 有问题随时查看日志或运行检查脚本。