Commit Graph

218 Commits

Author SHA1 Message Date
Wenjie Zhang
3c77755a78 feat: 重构知识库文件处理流程,支持分阶段处理【!important】
refactor(lightrag/milvus): 将文件处理拆分为上传、解析和入库三个阶段
feat(base): 新增文件状态枚举和分阶段处理方法
feat(api): 添加手动触发解析和入库的API接口
fix(utils): 修复MinIO URL解析逻辑,支持更多协议格式
style(components): 优化UI组件样式和交互
test: 移除过时的测试文件
2026-01-04 21:35:25 +08:00
Wenjie Zhang
fffe237780 feat(知识库): 在生成描述时支持传入文件列表
在知识库描述生成功能中增加文件列表参数,使AI能参考文件内容生成更准确的描述
前端组件传递文件列表至API,后端处理时将其包含在提示词中
2026-01-03 19:02:08 +08:00
Wenjie Zhang
dd5dc53a64 feat(security): 对于图谱文件上传,添加从MinIO URL下载文件的临时文件上下文管理器
重构文件上传服务以使用新的MinIO上下文管理器
移除本地文件路径支持,仅允许MinIO URL
2026-01-02 22:52:33 +08:00
Wenjie Zhang
302175e0b0 refactor: 移除 ChromaDB 相关代码和依赖
移除项目中所有与 ChromaDB 相关的代码、依赖和文档引用,统一使用 Milvus 作为向量数据库实现
2026-01-02 14:44:00 +08:00
Wenjie Zhang
9c1747667c feat(知识图谱): 添加批处理大小配置并优化上传功能
- 在知识图谱上传功能中添加批处理大小配置选项
- 将同步操作改为异步以提高性能
- 优化前端上传配置界面布局
- 更新文档中的路线图信息
2026-01-01 23:39:17 +08:00
Wenjie Zhang
20f0f793dc feat(knowledge-graph): 添加嵌入模型选择功能到图数据库实体上传(仅初次)
允许用户在上传图数据库实体时选择嵌入模型
添加前端模型选择组件和后端支持
确保模型选择与现有数据兼容
2026-01-01 22:19:48 +08:00
Wenjie Zhang
295d019d16 style: 统一文件夹图标样式并修复缩进问题
更新前端文件夹相关图标为更一致的填充样式
修复后端Python代码中的缩进不一致问题
2025-12-31 00:00:24 +08:00
Justin Gao
192da56fca feat(知识库): 实现文件夹功能支持
添加文件夹创建、移动和删除功能
- 后端添加文件夹相关API和逻辑处理
- 前端实现文件夹树形展示和操作界面
- 支持文件上传到指定文件夹
- 添加拖拽移动文件功能
2025-12-31 00:00:24 +08:00
Wenjie Zhang
22fc138ab5 refactor(agents): 移除reload_graph能力并简化agent初始化逻辑
统一agent初始化流程,直接从context获取system_prompt
清理不再使用的middleware导入和配置
2025-12-30 19:19:49 +08:00
Wenjie Zhang
606ff9f122 fix(chat_router): 修复流式消息处理中未正确累积内容的问题 Question: 上下文比较长时,回答速度很慢,CPU只吃了单核,一直占满资源
Fixes #410

确保在流式处理过程中正确累积消息内容,并在各种中断情况下(如敏感内容检测、错误处理等)保存已累积的内容。同时添加对用户会话的权限检查
2025-12-30 03:12:43 +08:00
Wenjie Zhang
e9681c8a32 feat(ocr): 添加 DeepSeek OCR 支持
新增 DeepSeek OCR 解析器,基于 SiliconFlow API 实现文档处理和 OCR 功能
更新文档处理工厂和前端组件以支持新 OCR 选项
优化前端 OCR 选项标签生成逻辑为通用函数
2025-12-29 10:32:07 +08:00
Wenjie Zhang
da351df193 feat(agent): 添加智能体配置保存时的graph重载功能
在保存智能体配置时新增reload_graph选项,用于强制清空graph缓存并重新构建
修改前后端接口以支持该功能,并在UI中添加相应提示
为DeepAgent添加subagents_model配置项,优化子智能体模型选择
2025-12-28 22:55:42 +08:00
Wenjie Zhang
012e46a761 refactor: 移除未实现的保存思维导图到知识库功能 2025-12-24 20:37:30 +08:00
Wenjie Zhang
15a7a32787 feat(feedback): 增加反馈消息和对话标题的展开收起功能
在反馈模态框中添加消息内容和对话标题的展开/收起功能,优化长文本显示体验
添加相关样式和交互逻辑,支持自适应显示和折叠
移除消息内容长度限制,显示完整内容
2025-12-24 13:17:12 +08:00
Wenjie Zhang
44ede4d911 feat(feedback): 实现消息反馈状态的预加载和同步
Fixes #394

在消息管理中预加载tool_calls和feedbacks数据
前端组件添加反馈状态初始化和消息变化监听
后端接口返回消息时包含当前用户的反馈状态
2025-12-24 11:41:03 +08:00
Wenjie Zhang
696cd97618 feat(日志): 增加后端日志级别过滤功能并优化前端显示
1. 在后端添加日志级别过滤参数,支持按级别筛选日志
2. 前端移除本地级别过滤,改为向后端传递过滤参数
3. 优化日志显示样式和自动刷新逻辑
2025-12-23 11:21:34 +08:00
Wenjie Zhang
0527cf491d refactor: 将同步IO操作改为异步以提高性能 2025-12-21 21:25:13 +08:00
Wenjie Zhang
1d04842f02 refactor(agent-tools): 移除已弃用的工具获取接口及相关代码 2025-12-21 20:58:40 +08:00
Wenjie Zhang
3f7e70db31 refactor(router): 移除废弃的graph兼容性接口并合并测试
将废弃的lightrag兼容性接口从graph_router.py中移除
删除单独的test_graph_router.py测试文件
在test_unified_graph_router.py中添加相关测试
2025-12-20 15:13:56 +08:00
Wenjie Zhang
ac848ea165 refactor(graph): 重构图谱适配器与服务层架构
将 GraphDatabase 重构为 UploadGraphService 并引入 BaseNeo4jAdapter 作为基础查询层
优化适配器工厂支持自动检测图谱类型,统一查询接口
添加 GraphMetadata 元数据管理,增强类型安全与能力声明
重构 LightRAGGraphAdapter 使用标准查询接口,改进节点边规范化处理
更新路由层使用新的适配器工厂方法,简化图谱类型检测逻辑
2025-12-20 15:00:49 +08:00
Wenjie Zhang
8d97a33ea4 style(lint): 优化代码格式和错误处理 2025-12-19 21:24:19 +08:00
Wenjie Zhang
ba2d0d0007 fix(db): 使用asyncio.shield确保数据库连接正确关闭
1. 简化对话状态重置逻辑并移除冗余代码
2. 重构聊天路由的数据库会话管理
2025-12-19 02:22:29 +08:00
limbo
6ebbb46c9f feat: AI 辅助知识库描述生成功能 2025-12-18 21:43:26 +08:00
limbo
1dab4a7010 fix: 修复 dashboard_router 中 ConversationManager 方法缺少 await 的问题 2025-12-18 20:04:51 +08:00
Wenjie Zhang
98fdce0e79 refactor: 移除对.doc文件格式的支持 2025-12-18 11:27:21 +08:00
Wenjie Zhang
a3edaa8129 feat(server): 添加访问日志中间件并优化日志配置
1. 实现自定义访问日志中间件以记录请求处理时间
2. 禁用uvicorn默认访问日志处理器
优化日志格式化配置
2025-12-17 22:55:12 +08:00
Wenjie Zhang
80d03554b4 refactor(deep_agent): 不使用默认的 create_deep_agent 而是仅使用其中间件重构深度智能体创建逻辑
重构深度智能体的创建逻辑,使用更灵活的create_agent替代create_deep_agent
添加多个中间件包括摘要、文件系统和子代理处理
优化研究代理的描述并更新提示词指导
修复聊天路由中extra_metadata的合并逻辑
2025-12-17 22:28:28 +08:00
Wenjie Zhang
5f6047849c refactor: 优化代码格式和结构,改进错误提示信息
- 统一代码格式,移除多余空格和注释
- 改进MySQL连接错误提示信息
- 优化GraphDatabase查询格式和响应结构
- 简化测试用例参数传递方式
- 调整前端GraphCanvas组件样式
2025-12-16 10:28:44 +08:00
Wenjie Zhang
3d63418adf feat: 实现统一图谱适配器及前端组件重构
重构图谱系统架构,引入适配器模式支持多种图数据库类型。主要变更包括:

1. 新增 GraphAdapter 基类及 LightRAG/Upload 适配器实现
2. 重构前端组件结构,新增 GraphDetailPanel 等可复用组件
3. 实现 useGraph 组合式函数统一管理图谱状态
4. 优化 Neo4j 节点/边数据标准化处理
5. 新增统一图谱 API 接口及对应测试用例
6. 改进前端交互体验,增加节点详情展示等功能

前端组件库重构为模块化结构,提升代码复用性。适配器模式使系统可灵活支持不同图数据源,为后续扩展奠定基础。

Next:上传图谱文件的时候,支持属性解析
2025-12-15 23:25:56 +08:00
Wenjie Zhang
e662466fae style: ruff format 2025-12-14 22:44:18 +08:00
Wenjie Zhang
0875e9769c feat(eval): 添加评估基准分页和错误结果过滤功能
实现评估基准和结果的分页查询,支持按错误过滤结果
优化评估结果表格展示,增加文档链接和说明
提升文件上传验证逻辑和错误处理
2025-12-14 18:13:46 +08:00
Wenjie Zhang
ade5445cae feat(evaluation): 重构评估服务以支持知识库基准集中管理
重构评估服务接口和实现,统一通过知识库ID管理评估基准和结果:
1. 新增带db_id的评估基准和结果查询/删除接口
2. 将基准元数据集中存储到知识库metadata中
3. 实现自动生成评估基准功能
4. 优化评估结果表格展示生成答案列
5. 简化基准生成弹窗配置项

移除旧接口并标记为废弃,所有前端调用迁移至新接口
2025-12-10 22:48:53 +08:00
Wenjie Zhang
19cb293024 refactor: 优化组件和API的空值处理逻辑
- 在KnowledgeGraphSection和QuerySection组件中添加事件声明
- 移除mindmap_router和knowledge_router中不必要的404异常抛出
- 在SearchConfigModal中增加databaseId为空时的处理逻辑
- 在KnowledgeBaseCard中优化描述显示和样式调整
2025-12-10 19:42:58 +08:00
Wenjie Zhang
e5a06405ba feat(evaluation): 重构评估配置处理逻辑
- 将前端传递的 retrieval_config 改为 model_config 并合并到检索配置
- 从知识库元数据中获取检索配置作为基础配置
- 在评估结果中显示使用的检索配置
- 优化配置保存流程,先保存到服务器再存本地
- 统一知识库查询参数存储结构
2025-12-09 21:11:51 +08:00
Wenjie Zhang
83e0caae7d feat(evaluation): 新增RAG评估功能模块
实现RAG评估系统,包括基准管理、评估指标计算和结果展示功能

- 添加评估路由和API接口
- 实现评估指标计算工具类
- 新增基准上传和自动生成功能
- 添加评估结果展示组件
- 完善相关文档和测试用例
2025-12-09 16:21:18 +08:00
Wenjie Zhang
7750a5f106 feat(database): 实现同名文件检测与MinIO存储支持
- 添加同名文件检测功能,当上传文件时检查知识库中是否存在同名文件并提示用户
- 重构文件存储逻辑,使用MinIO作为主要存储后端,支持本地和MinIO文件的统一处理
- 优化文件下载功能,根据文件路径类型自动选择本地或MinIO下载方式
- 新增同名文件列表展示组件,支持下载和删除操作

Co-authored-by: YuChuan <xerrors@qq.com>
2025-12-07 23:38:20 +08:00
Wenjie Zhang
6003563adb refactor(storage): 将图片上传功能重构为异步文件上传
重构图片上传功能为通用的异步文件上传,支持自定义文件名
移除同步上传方法,统一使用异步接口
2025-12-07 18:25:45 +08:00
GitHub Actions
eb9fd5b798 style: auto-format with ruff [skip ci] 2025-12-07 09:56:30 +00:00
Wenjie Zhang
3b4d6a2a3e refactor(auth): 将数据库查询从同步改为异步实现
将auth_router中的所有数据库查询操作从同步SQLAlchemy改为异步实现
添加async_check_first_run方法以支持异步检查首次运行
2025-12-07 17:46:00 +08:00
Wenjie Zhang
e75243cef7 fix(chat_router): 修复遗漏了异步操作的地方 Fixes: #369 #368 2025-12-07 16:52:58 +08:00
Wenjie Zhang
0976201782 fix(db): 将同步数据库操作改为异步操作
将所有直接调用db.commit()和db.refresh()的地方改为await db.commit()和await db.refresh()
同时将log_operation函数改为异步并在调用处添加await  Fixes: #365
2025-12-06 23:06:20 +08:00
Wenjie Zhang
959defb938 fix(knowledge_router): 处理MinIO删除文件失败时继续删除知识库记录
Fixes #362

添加对MinIO删除文件失败的异常处理,确保即使MinIO操作失败(如旧知识库无MinIO实例),也能继续从知识库删除记录
2025-12-04 14:42:37 +08:00
Wenjie Zhang
100f9dac7f style: 统一代码格式并修复格式问题 2025-12-04 10:12:01 +08:00
Wenjie Zhang
2126f45493 refactor(db): 将数据库操作迁移到异步SQLAlchemy
- 将DBManager重构为支持异步操作
- 更新auth_middleware使用异步会话
- 修改chat_router和dashboard_router使用异步数据库操作
- 重构ConversationManager为异步版本
- 添加aiosqlite和asyncpg依赖
- 优化数据库查询性能
2025-12-04 10:11:28 +08:00
Wenjie Zhang
ab06e9e1e9 fix(chat): Error Message 2025-12-03 22:19:59 +08:00
Wenjie Zhang
49253cbc04 fix(embedding): 修复ollama model 不起作用的 bug,并修复model info 由于 getattr 不生效的 bug # 361
- 在 EmbedModelInfo 中添加 model_id 字段
- 修改 get_embedding_config 以优先使用 model_id 选择模型
- 重构 MilvusKB 的嵌入函数获取逻辑
- 添加调试日志并优化错误处理
2025-12-03 18:28:31 +08:00
Wenjie Zhang
5a66ff80c2 feat(AgentPopover): 增强待办事项图标样式并添加文件下载功能
- 将简单的文本图标替换为SVG图标,提升视觉体验
- 为文件列表项添加下载按钮功能
- 优化文件区域的样式和布局
- 移除已完成TODO注释和相关代码
2025-12-02 21:36:12 +08:00
Wenjie Zhang
10ad84a679 Merge branch 'feature/documents' 2025-12-02 21:19:55 +08:00
Wenjie Zhang
31a4e54764 refactor: 优化文件下载,移除原有逻辑
清理minio客户端导入顺序
移除已处理的TODO注释和废弃代码
2025-12-02 21:17:32 +08:00
miluELK
954cf3db83 fix: 修复chroma和lightRAG中prepare_item_metadata没有添加await的问题。用make优化了格式 2025-12-02 16:15:32 +08:00