Commit Graph

155 Commits

Author SHA1 Message Date
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
Wenjie Zhang
b19fdcb9f5 refactor: 将 services 和 adapters 移动到 graphs 目录
- 将 src/knowledge/services/upload_graph_service.py 移动到 src/knowledge/graphs/
- 将 src/knowledge/adapters/ 整个目录移动到 src/knowledge/graphs/adapters/
- 更新所有导入路径:src.knowledge.adapters → src.knowledge.graphs.adapters
- 保持原有的延迟导入设计以解决循环依赖问题
- 保持向后兼容性:src.knowledge.__init__ 仍然导出 UploadGraphService 和 GraphDatabase

影响范围:
- server/routers/graph_router.py
- src/knowledge/__init__.py
2026-03-03 14:44:58 +08:00
肖泽涛
97cea83285 Revert "fix(graph): 增加知识图谱禁用模式与降级路径"
This reverts commit 835f0786b2.
2026-03-01 17:53:40 +08:00
肖泽涛
835f0786b2 fix(graph): 增加知识图谱禁用模式与降级路径
- 新增 disabled graph service,统一图服务不可用时的行为

- 调整知识模块初始化与管理器,支持降级运行

- 更新图相关路由与工具调用逻辑,避免连接失败中断

- 同步部署文档与环境模板说明
2026-02-28 16:59:04 +08:00
肖泽涛
1f8ea859f8 fix(knowledge): 优化 laws 分块并加强超长保护
- 归一化法规 markdown,避免标题/列表标记干扰层级识别

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

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

- 补充分块回归测试,覆盖 markdown 条款和超长场景
2026-02-28 16:58:52 +08:00
肖泽涛
0695f6f4cd fix(embedding): use model-level batch_size for provider-specific limits
Root cause: DashScope embeddings accepts at most 10 inputs per request, but code used fixed batch_size=40, causing 400 Bad Request during indexing.

Changes:

- add batch_size to EmbedModelInfo with default 40

- set dashscope/text-embedding-v4 batch_size to 10

- persist batch_size in BaseEmbeddingModel and use it as default in batch/abatch encode

- update Milvus, evaluation, and upload-graph embedding paths to read model-configured batch_size
2026-02-28 13:09:53 +08:00
肖泽涛
725e2077a0 Merge branch 'codex/run-ha-v4-redis-stream' 2026-02-27 18:19:14 +08:00
肖泽涛
ffb32ed242 merge: reconcile main with origin/main 2026-02-27 18:19:14 +08:00
肖泽涛
6768fa9ed3 fix(kb): 修复 worker 容器 获取不到 知识库实例的问题 2026-02-27 18:19:13 +08:00
Wenjie Zhang
52f9ed0eb9 refactor(metadata): 将_save_metadata()替换为_persist_file()以优化文件持久化逻辑 #513 2026-02-25 15:53:38 +08:00
肖泽涛
6416589787 feat: 支持 Dify 只读知识库检索接入 2026-02-24 12:12:02 +08:00
肖泽涛
60bc408a3e feat(knowledge): add ragflow-like chunk preset pipeline 2026-02-20 19:35:43 +08:00
Wenjie Zhang
812bb95f8d format: 格式化代码 2026-01-29 21:08:43 +08:00
Wenjie Zhang
a4f425dbf9 feat: 上传文件新增基于URL获取和处理功能,需要配置白名单环境变量
- 引入新的端点来获取URL内容并转换为Markdown格式。
- 在环境变量中添加URL白名单配置以确保安全。
- 增强文件上传模态框以支持URL输入和URL批量处理。
- 更新文件处理逻辑以区分文件和URL。
- 改进UI组件以适应新的URL处理功能。
- 添加用于URL验证和获取的工具函数。
2026-01-27 17:12:48 +08:00
Wenjie Zhang
537b798f9a fix: 更新 MilvusKB 配置项标签,添加重排序模型选择功能,优化 SearchConfigModal 描述显示 2026-01-27 17:07:18 +08:00
jonasHanhan
e41fc1e000 feat: add keyword and hybrid retrieval for milvus 2026-01-27 16:31:56 +08:00
Wenjie Zhang
b08ae33678 fix: 修改 db_id 生成逻辑,限制哈希长度为 32 字符 #499 2026-01-26 16:33:49 +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
f3da61b10a 功能:增强知识库访问控制和共享配置 #480
- 在save_agent_config中实现了基于用户角色的知识库访问控制。
- 添加了新端点以检索当前用户可访问的数据库。
- 在数据库创建和更新过程中引入了share_config以管理共享设置。
- 创建了ShareConfigForm组件用于在UI中管理共享设置。
- 更新了部门和知识API以支持新的访问控制功能。
- 增强了用户管理组件以显示用户角色和部门名称。
- 重构了数据库视图以包含共享配置设置。
2026-01-24 10:56:31 +08:00
Wenjie Zhang
e0adda65fc fix(lightrag): 修复 lightrag 知识库 embedding dim 的错误 Fixes: Error: 知识库上传PDF检索测试失败
Fixes #498 Error: ValueError: Embedding dimension mismatch detected: total elements (1024) cannot be evenly divided by expected dimension (1536)
Fixes #491
2026-01-23 22:29:24 +08:00
Wenjie Zhang
08573a6de4 fix(kb_utils): 从 content_hashes 映射中获取 content_hash,添加缺失时的异常处理 #486 2026-01-20 13:05:44 +08:00
Wenjie Zhang
67bcd26565 fix(lightrag): 过滤掉引用不存在节点的边以确保查询结果的有效性 #477 2026-01-19 16:01:27 +08:00
GitHub Actions
0f684851bc style: auto-format with ruff [skip ci] 2026-01-18 14:55:37 +00:00
Wenjie Zhang
62af84eea9 fix(graph-minio): 修复未配置 HOST_IP 的情况下导致的错误 Fixes: Question: 不允许的外部 URL: localhost:通过图谱功能上传jsonl文件后无法解析
Fixes #479
2026-01-18 15:17:27 +08:00
Wenjie Zhang
c7a417c68b feat: 添加时间戳到上传的图片文件名,以避免文件名冲突 2026-01-15 12:29:01 +08:00
Wenjie Zhang
937355e390 feat: 添加加载状态和空内容提示,优化文件详情展示 2026-01-15 12:17:18 +08:00
Wenjie Zhang
22921fdec7 feat(parsing): 使用 docling 处理 docx/xlsx/pptx #439 2026-01-15 00:29:00 +08:00
Wenjie Zhang
9fa8ce288f feat: 添加知识库名称检查,防止重复创建相同名称的知识库 #466 2026-01-14 22:00:53 +08:00
Wenjie Zhang
9430cba037 feat: 增强LLM查询功能,lightrag 中支持选择返回内容范围(默认仅 chunk) #437 2026-01-14 21:03:11 +08:00
Wenjie Zhang
5a5b105769 feat: 更新日志配置,添加日志桥接功能 #462 2026-01-12 19:22:41 +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
c00949778d feat(lightrag): 添加对结构化查询结果的支持并优化前端展示
- 在 KnowledgeBase 及其实现类中添加 agent_call 参数以区分不同调用场景
- 为 LightRAG 实现结构化查询结果返回,包括实体、关系和文档块
- 在前端添加完整的结构化结果展示组件,包含元数据、实体卡片、关系卡片等
- 优化查询结果样式和交互体验
2026-01-08 23:17:28 +08:00
Wenjie Zhang
98c73a90c9 refactor(knowledge): 将知识库检索参数从 router 移动到对应的实现文件中 2026-01-08 22:13:17 +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
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
9c48eee7dc Merge branch 'main' of https://github.com/xerrors/Yuxi-Know 2026-01-02 14:20:35 +08:00
Wenjie Zhang
450911eaad refactor(kb): 移除QA分割功能并改进分隔符处理
移除不再使用的QA分割功能及相关代码,简化文本分块逻辑
添加分隔符转义处理以支持前端传入的转义字符
改进分块参数配置界面的描述和默认值
2026-01-02 14:20:18 +08:00
GitHub Actions
09fc577ec3 style: auto-format with ruff [skip ci] 2026-01-01 15:40:44 +00:00
Wenjie Zhang
c5fcbc6374 fix(logging): 移除lightrag中的重复日志配置并增强日志线程安全
禁止lightrag重复配置日志,避免覆盖主程序日志配置
在logging_config中添加enqueue参数确保日志线程安全
2026-01-01 23:39:24 +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