Commit Graph

73 Commits

Author SHA1 Message Date
Wenjie Zhang
3eac205c0e format: g 格式化代码 2026-03-16 21:40:19 +08:00
Wenjie Zhang
9a0541eb7d refactor: 移除过时的审批逻辑和相关代码,优化选项处理 2026-03-10 00:16:41 +08:00
肖泽涛
b4efa21c82 chore: fix lint formatting issues 2026-03-08 00:42:20 +08:00
肖泽涛
ad41efef94 fix(test): 修复或删除一些因为重构报错的测试文件
 test_graph_unit.py - 修复了 config mock 和 driver/status 属性问题
 test_skill_service.py - 修复了函数名变更和导入问题
 test_skills_backend.py - 删除了过时的 create_agent_composite_backend 测试
 删除了 test_runtime_config_middleware_skills.py(API 完全重构)
2026-03-08 00:09:50 +08:00
Wenjie Zhang
85d0867080 format: 修复代码格式,优化导入顺序,清理多余空行 2026-03-06 10:24:38 +08:00
Wenjie Zhang
c4beda2ef1 feat: 新增图表工具组件,支持图表结果展示 2026-03-05 02:29:01 +08:00
Wenjie Zhang
c288c04a82 fix: 优化Qwen-Image 工具 2026-03-05 01:43:45 +08:00
Wenjie Zhang
df80829bb2 fix(minio): 增强知识库删除功能,添加 MinIO 文件清理逻辑 Fixes 关于删除知识库时,所涉及到的上传文件问题
Fixes #533
2026-03-04 04:46:37 +08:00
Wenjie Zhang
43679f4c0d style(format): 格式化代码 2026-03-04 04:13:05 +08:00
Wenjie Zhang
76656ab95e refactor: 重构知识库工具并集成新工具
- 新增 KnowledgeBaseMiddleware,提供通用知识库工具(list_kbs、get_mindmap、query_kb)
- 新增 debug/tools.py 调试工具集
- 重构 kbs/tools.py,分离通用工具与 MySQL 工具
- 移除旧的 toolkits registry 简化架构
- API 变更:get_databases_by_user → get_databases_by_user_id
- 前端拆分 KnowledgeBaseTool.vue 为多个专用工具组件
2026-03-04 04:06:48 +08:00
肖泽涛
9c30c74d41 Revert "feat: 集成Langfuse并新增GAIA离线评估工具"
This reverts commit 45ecf7bcf2.
2026-03-01 17:44:53 +08:00
肖泽涛
1f8ea859f8 fix(knowledge): 优化 laws 分块并加强超长保护
- 归一化法规 markdown,避免标题/列表标记干扰层级识别

- 按章节条进行层级语义切分,优先保持条级完整

- 超长 chunk 优先句级切分,最终保留 token 上限兜底

- 补充分块回归测试,覆盖 markdown 条款和超长场景
2026-02-28 16:58:52 +08:00
肖泽涛
37daae7958 Merge branch 'feature/skills'
# Conflicts:
#	server/utils/lifespan.py
2026-02-27 18:19:14 +08:00
肖泽涛
85480dbdc0 feat: migrate chat streaming to async run queue + SSE 2026-02-27 18:19:13 +08:00
肖泽涛
7f002f329d refactor(skill): unify runtime skill snapshot source 2026-02-27 16:51:20 +08:00
肖泽涛
326f87d67f refactor: 会话级 skill resolver 与 skills 加载链路重构 2026-02-26 18:35:03 +08:00
肖泽涛
45ecf7bcf2 feat: 集成Langfuse并新增GAIA离线评估工具 2026-02-24 18:04:02 +08:00
肖泽涛
6416589787 feat: 支持 Dify 只读知识库检索接入 2026-02-24 12:12:02 +08:00
肖泽涛
0f7c0d3017 fix(skills): 增强安全性与交互体验
- 添加 skill slug 格式校验,防止路径遍历攻击
- 优化导出文件清理逻辑,添加异常处理
- 前端依赖管理表单添加禁用状态联动
- 补充相关单元测试

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 20:52:26 +08:00
肖泽涛
2666b27fcb feat(skills): 支持依赖管理与运行时渐进注入 2026-02-22 17:42:37 +08:00
肖泽涛
46b676db07 feat(skills): add skills management module
实现 Skills 管理功能,支持超级管理员导入、编辑、导出和删除技能包。

- 新增 Skill 数据模型(元数据存数据库,内容存文件系统)
- 新增 /api/system/skills/* 路由(权限分级:admin 可列表,superadmin 可管理)
- 新增 SelectedSkillsReadonlyBackend,运行时只读挂载到 /skills
- Agent 配置新增 skills 字段,运行时注入技能提示词
- 前端新增 Skills 管理页面(设置弹窗 + 独立路由)
- 新增测试覆盖:service/router/backend 单测

未实现功能:
 - 关联使用其他技能
 - 沙箱执行代码
 - 在技能中绑定工具
2026-02-21 02:48:20 +08:00
肖泽涛
a307f689e8 merge: attachments state sync fixes into feature/skills 2026-02-21 02:23:59 +08:00
肖泽涛
5b101bbbc9 fix(attachments): preserve runtime files when syncing upload state 2026-02-21 01:51:41 +08:00
肖泽涛
dcb3d2c939 fix(attachments): merge state files by /attachments namespace 2026-02-21 00:59:29 +08:00
肖泽涛
bfae184e1c fix(attachments): sync thread state on upload/delete 2026-02-21 00:50:57 +08:00
肖泽涛
b554bbbe4a Merge branch 'fix/conversation-title-length' 2026-02-20 23:56:30 +08:00
肖泽涛
8fe32d0b21 fix: 修复新增对话时内容直接作为标题长度超出表字段长度限制问题, titile 字段长度限制为255
- 新增 MAX_CONVERSATION_TITLE_LENGTH 常量 (255 字符)
- 新增 _normalize_title() 方法用于截断和校验标题
- 防止创建和更新对话时数据库字段溢出
- 前端 AgentChatComponent 同步添加标题标准化处理
- 添加标题标准化的单元测试
2026-02-20 23:41:44 +08:00
肖泽涛
60bc408a3e feat(knowledge): add ragflow-like chunk preset pipeline 2026-02-20 19:35:43 +08:00
肖泽涛
4bd77fce12 Merge branch 'main' of https://github.com/xerrors/Yuxi-Know 2026-02-20 13:27:35 +08:00
肖泽涛
360316963e feat(evaluation): 支持评估基准下载 2026-02-20 13:23:20 +08:00
Wenjie Zhang
1f5636520e style: 统一代码格式和 import 顺序
- 调整 Python 文件 import 顺序,遵循标准库→第三方库→项目模块顺序
- 统一字符串引号风格为双引号
- 优化 Vue 组件 console.log 格式
- 压缩 import 语句为单行
- 清理不必要的空行
2026-02-13 22:29:20 +08:00
Wenjie Zhang
44e41bbb5a refactor: 简化附件处理架构,使用 StateBackend 替代 MinIO
- 移除 MinIOBackend 和复合存储后端,统一使用 StateBackend
- 依赖 LangGraph checkpointer 自动恢复 state(attachments, files)
- 前端适配 StateBackend 字典格式文件结构
- 优化 @提及 文件搜索逻辑,支持路径匹配
2026-02-13 22:16:11 +08:00
Wenjie Zhang
d538527e7a chore(database): 优化镜像配置与部分 SQLite 残留 2026-01-24 10:56:31 +08:00
Wenjie Zhang
63fed0dfd6 refactor: 移除基于 SQLite 的遗留问题 2026-01-24 10:56:31 +08:00
Wenjie Zhang
a5d55d6c37 refactor(storage): 重构对话数据库模型与存储管理
将业务数据模型从SQLite迁移至PostgreSQL,统一使用models_business.py
删除旧的SQLite模型和ConversationManager,新增repository和服务层
优化时间处理工具函数,增加utc_now_naive和format_utc_datetime
重构前端组件代码格式,统一多行导入和长字符串的换行风格
2026-01-24 10:56:31 +08:00
Wenjie Zhang
3da0d57c1c refactor: 重构数据库访问层,用户/对话/消息都统一迁移至PostgreSQL并添加业务模型支持 2026-01-24 10:56:31 +08:00
Wenjie Zhang
a1812f2e97 feat(知识库): 重构知识库元数据存储为PostgreSQL数据库
- 新增知识库、知识文件、评估基准、评估结果等数据模型
- 实现知识库相关Repository类提供CRUD操作
- 修改知识库实现类使用PostgreSQL存储元数据
- 添加PostgreSQL数据库管理器和初始化逻辑
- 更新相关路由和工具类适配新的存储方式
- 添加数据库迁移脚本和测试工具
- 在docker-compose中配置PostgreSQL服务
2026-01-24 10:56:31 +08:00
Wenjie Zhang
22921fdec7 feat(parsing): 使用 docling 处理 docx/xlsx/pptx #439 2026-01-15 00:29:00 +08:00
GitHub Actions
9ffc058d6d style: auto-format with ruff [skip ci] 2026-01-08 17:23:00 +00:00
Wenjie Zhang
05a67c24f8 fix(knowledge): 修复智能体调用场景下,知识库查询参数不生效的问题。
- 将查询参数从全局元数据迁移到知识库实例元数据
- 废弃 reranker_config 配置,统一通过 query_params.options 管理
- 修改 Milvus 和 LightRAG 实现以使用新的查询参数结构
- 更新前端界面移除旧的 reranker 配置表单
- 添加测试用例验证新的查询参数配置流程
2026-01-09 01:21:41 +08:00
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
302175e0b0 refactor: 移除 ChromaDB 相关代码和依赖
移除项目中所有与 ChromaDB 相关的代码、依赖和文档引用,统一使用 Milvus 作为向量数据库实现
2026-01-02 14:44:00 +08:00
GitHub Actions
834202fc20 style: auto-format with ruff [skip ci] 2025-12-30 12:12:04 +00:00
Wenjie Zhang
610b60e204 feat(knowledge): 智能体查询知识库时,支持基于文件名的模糊过滤功能,不支持 LightRAG
实现知识库检索时可按文件名进行模糊匹配过滤
在Milvus知识库中支持文件名的like表达式过滤
前端展示添加文件名显示
添加相关测试用例验证过滤功能
2025-12-30 20:10:42 +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
5f6047849c refactor: 优化代码格式和结构,改进错误提示信息
- 统一代码格式,移除多余空格和注释
- 改进MySQL连接错误提示信息
- 优化GraphDatabase查询格式和响应结构
- 简化测试用例参数传递方式
- 调整前端GraphCanvas组件样式
2025-12-16 10:28:44 +08:00
Wenjie Zhang
cb9edfdb5e feat(graph): 支持带属性的知识图谱节点和关系导入
- 扩展三元组导入功能,支持节点和关系的属性存储
- 新增测试数据文件和单元测试验证功能
- 更新文档说明支持新旧两种数据格式
- 优化查询结果处理,保留并返回节点和关系的属性
2025-12-16 00:10:05 +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
83e0caae7d feat(evaluation): 新增RAG评估功能模块
实现RAG评估系统,包括基准管理、评估指标计算和结果展示功能

- 添加评估路由和API接口
- 实现评估指标计算工具类
- 新增基准上传和自动生成功能
- 添加评估结果展示组件
- 完善相关文档和测试用例
2025-12-09 16:21:18 +08:00