## 背景 课程教学场景要求回答基于教材、课件和讲义,而不是只依赖大模型参数记忆。EduAvatar 已采用 BGE 嵌入模型和 FAISS 构建本地课程知识库,并在本地未命中时使用网络搜索兜底。 ## 目标 完善本地 RAG 知识库的导入、更新、检索和来源追踪能力,使课程资料能够持续维护,回答结果可验证、可追溯。 ## 当前能力 - 支持从 TXT、PDF、Word、PPT 等课程资料加载文本。 - 使用文本分块和 BGE 中文嵌入模型生成向量。 - 使用 FAISS 在本地保存和检索知识片段。 - 提供命令行方式构建知识库和执行查询测试。 - Agent 优先检索本地知识库,本地未命中时可降级到网络搜索。 - 知识库管理服务已提供上传、目录构建、知识列表和检索接口。 ## Proposal(后续完善) - 支持增量导入,避免新增资料时全量重建索引。 - 根据文件哈希和内容指纹识别重复文档与重复分块。 - 支持按来源删除文档,并安全重建或压缩 FAISS 索引。 - 在检索结果和最终回答中保留文件名、页码或分块来源。 - 增加索引版本、嵌入模型版本和构建时间等元数据。 - 为损坏文件、空文档、编码错误和模型加载失败提供明确提示。 ## 验收标准 - [ ] PDF、Word、TXT 和 PPT 资料均可成功导入并检索。 - [ ] 重复上传同一文档不会产生重复知识分块。 - [ ] 新增单个文档时可以增量更新知识库。 - [ ] 可以按来源查看和删除已导入的课程资料。 - [ ] 检索结果包含来源文件及可用的定位信息。 - [ ] 本地未命中时 Agent 能自动降级,并在回答中说明来源。 - [ ] 索引或嵌入模型异常时返回可理解的错误信息。 ## 涉及模块 - `rag/rag_faiss_build.py` - `rag/rag_faiss_query.py` - `backend/agent/src/react_agent/tools.py` - `faiss_frontend/app.py` - `faiss_store/`
Activity
github-actions commentedon Aug 31, 2026
你好!虽然你是主人,但我还是检测到你发了新 Issue!