Commit Graph

155 Commits

Author SHA1 Message Date
Wenjie Zhang
a1fdcbc36c style: ruff format 2025-10-24 00:11:52 +08:00
Wenjie Zhang
fba6821355
Merge branch 'main' into main 2025-10-23 23:38:23 +08:00
Wenjie Zhang
f6547fef13 fix: 处理 embed_info 可能为字典或 EmbedModelInfo 对象的情况,确保获取模型名称和其他属性的兼容性 2025-10-23 22:57:01 +08:00
miluELK
367c79a06e fix:修复base中创建知识库时直接将basemodel转为json时的报错,先转为dict再转为json 2025-10-23 17:50:12 +08:00
Wenjie Zhang
d56cec5002 refactor: 适配了 langchain v1 版本,但并引入新特性,仅无兼容性错误 2025-10-23 01:39:01 +08:00
Wenjie Zhang
c33d56f078 fix: 移除 collection.flush() Fixes #297 2025-10-14 06:07:51 +08:00
Wenjie Zhang
50d2cf850f feat: 更新模型配置和选择逻辑,修改为通过 model_spec 统一指定模型格式 2025-10-14 02:27:15 +08:00
Wenjie Zhang
b36f6e78f3 refactor(time): 重构应用程序中的日期时间处理
- 新增工具模块 `datetime_utils.py`,用于统一处理UTC和上海时区
- 在 `manager.py`、`models.py` 等后端文件中,将直接操作日期时间的代码替换为工具函数
- 更新前端组件,使用 `dayjs` 进行时区感知的日期格式化和解析
- 移除冗余的日期格式化逻辑,将其集中到工具函数中
- 通过确保所有时间戳均以亚洲/上海时区显示,提升用户体验
2025-10-13 15:08:54 +08:00
Wenjie Zhang
246e133eb4 feat: 添加文件内容哈希计算功能,防止重复文件上传并更新相关逻辑 2025-10-11 21:52:48 +08:00
Wenjie Zhang
fd980a6153 feat: 更新 .env.template 文件路径,确保模型和保存目录的正确性;在 ChromaKB 中异步添加文档以提高性能 2025-10-11 11:47:11 +08:00
Wenjie Zhang
c3a8360a77 fix: 修复 doc 解析的问题,并增加文件类型支持检查和相关API
- 在文件上传功能中添加对不支持文件类型的检查,返回400错误。
- 新增获取支持文件类型的API接口。
- 更新前端文件上传组件,动态加载支持的文件类型并提供用户提示。
2025-10-11 10:36:57 +08:00
Wenjie Zhang
cfc9b903de style(dashboard): uv lint 2025-10-08 21:54:10 +08:00
Wenjie Zhang
1ce9afa0d3 fix(knowledge): 优化 ChromaDB 插入逻辑,支持分批处理 2025-10-07 16:36:34 +08:00
Wenjie Zhang
b8b73e4932 fix(knowledge): 修复 get_kb 不存在的问题 2025-10-06 21:56:48 +08:00
Wenjie Zhang
af4bb9f48e style(docs): 更新变更日志,添加网络搜索和绘制图片选项说明
- 在变更日志中新增网络搜索和绘制图片的选项,提供工具调用的相关信息
- 优化知识库架构,提升文档的可读性和完整性
2025-10-02 19:59:35 +08:00
Wenjie Zhang
2112d4833d refactor(knowledge): 重构知识库模块,优化架构和实现
- 优化知识库文件夹结构,增强可维护性
- 新增知识库管理器和工厂类,统一管理不同类型的知识库实例
- 实现知识库的基本操作接口,包括创建、更新和删除数据库
- 引入新的知识库实现类(ChromaKB、MilvusKB、LightRagKB),支持多种存储后端
- 增强文件路径验证,确保安全性
- 更新文档,提供新的知识库接口说明
2025-09-23 13:07:50 +08:00
Wenjie Zhang
790c068eb6 fix(docs): 更新 README 和文档路径,添加 MinIO 存储模块文档
- 修改 README 中的模型配置路径,确保指向正确的配置文件位置
- 新增 MinIO 存储模块文档,提供基本使用和高级使用示例
- 更新内容审查机制和品牌信息配置的相关路径
- 移除旧的用户模型和线程模型,重构数据库模型管理
- 优化代码结构,确保数据库管理器和模型的导入路径一致
2025-09-23 10:48:44 +08:00
Wenjie Zhang
59c60fa879 fix(security): 增强文件路径验证,防止路径遍历攻击
- 在知识库路由中添加文件路径安全检查,确保上传和下载的文件路径在允许的目录内
- 新增 validate_file_path 函数,规范化并验证文件路径,抛出相应的异常信息
- 更新文档,修复部分已知BUG,提升系统稳定性
2025-09-23 04:42:04 +08:00
Wenjie Zhang
a337cba3f7 fix(migrate): 修复用户字段迁移脚本,优化异常处理和字段检查逻辑
- 更新迁移脚本以确保在数据库中添加缺失的字段(user_id、phone_number、avatar)
- 优化异常处理,确保在迁移过程中发生错误时能够正确回滚
- 统一字符串引号格式,提升代码可读性
- 添加必要的导入语句,确保脚本正常运行
2025-09-22 17:18:07 +08:00
Wenjie Zhang
6d7e3ea2ef feat(knowledge): 添加文档基本信息和内容信息的获取接口,支持文件下载功能
- 在知识库路由中新增获取文档基本信息和内容信息的接口
- 实现文档下载功能,支持中文文件名处理
- 更新相关文档和API调用,确保前端能够正确下载文件
2025-09-21 23:48:56 +08:00
Wenjie Zhang
2a3e18b444 test(tests): 添加全面的API接口测试套件
- 新增认证API测试,覆盖登录、权限验证、用户管理等关键流程
- 新增对话API测试,包含智能体调用、线程管理、工具获取及配置查询
- 新增系统API测试,涵盖系统健康检查、信息查询及配置管理权限控制
- 配置pytest支持异步测试、标记分类及详细输出
- 添加测试环境配置示例文件 .env.test.example
- 新增测试用例README文档,说明测试架构及运行方法
- 优化Makefile,添加格式化差异检查任务 format_diff
- 更新.gitignore,支持忽略测试环境配置文件 .env.test
2025-09-20 22:53:37 +08:00
Wenjie Zhang
aebe63ce1c lint: 代码格式化 2025-09-18 20:32:33 +08:00
Wenjie Zhang
66c550c18c refactor: 重构配置/知识库模块,拆分为独立app.py文件 2025-09-18 15:20:39 +08:00
Wenjie Zhang
fc63025118 feat(graphbase): 优化图数据库查询逻辑,增强关键词检索和去重功能 #263 2025-09-16 00:33:40 +08:00
Wenjie Zhang
45fb5c1b0d fix(graphbase): 修复检索过程中的 limit 不生效的问题 #260 2025-09-11 03:19:56 +08:00
Wenjie Zhang
91fa5c903e fix(graphbase): 优化连通查询并修复节点重复添加问题 2025-09-03 11:55:40 +08:00
Wenjie Zhang
f1c843addc refactor: 清理未使用的导入和优化代码格式 2025-09-02 01:08:42 +08:00
Wenjie Zhang
7641ab3699 stylle: 使用更加严格的风格检查以及代码格式化方法 2025-09-01 22:37:03 +08:00
Wenjie Zhang
a1080a4641 perf(graph): 优化图布局性能并改进节点查询算法
调整力导向图布局参数以加快收敛速度并减少节点重叠
重构节点查询逻辑,优先返回连通的子图结构
完善关系查询,确保双向关系的完整性
2025-09-01 20:04:05 +08:00
Wenjie Zhang
b524ca687b feat(agents): 重构智能体系统,引入Context替代Configuration
- 将Configuration重构为Context,支持动态工具配置
- 新增state.py和tools.py模块,优化状态管理和工具处理
- 移除旧的tools_factory.py和registry.py
- 更新前端API引用路径,修复brandApi命名错误
- 调整README和更新日志,反映架构变更
- 优化智能体历史记录管理,改进SQLite检查点
- 修复默认智能体加载和工具展示问题
2025-08-31 00:34:26 +08:00
Wenjie Zhang
92fe65fecf refactor(embedding): 重构嵌入模型代码,添加异步支持并改进错误处理
- 将BaseEmbeddingModel改为抽象基类(ABC)
- 添加异步预测方法apredict
- 重构批量编码方法,添加任务状态跟踪
- 为Ollama和Other嵌入实现添加异步支持
- 改进错误处理和日志记录
- 添加类型注解提高代码可读性

docs: 更新changelog记录已知问题
2025-08-28 13:50:48 +08:00
Wenjie Zhang
b8ba85654f feat(知识库): 完善知识库检索结果展示逻辑和样式
refactor(工具): 更新知识库工具元数据结构
style(UI): 优化配置侧边栏和消息组件样式
docs: 更新开发计划文档
perf(调试): 增强智能体配置调试信息输出
2025-08-27 00:13:38 +08:00
Wenjie Zhang
afaba5c8cb fix(milvus_kb): 修正相似度计算逻辑
移除未使用的auth_api导出并更新相关注释
2025-08-25 02:26:50 +08:00
Wenjie Zhang
e3bb35a383 refactor(knowledge): 移除未使用的HistoryManager类及其引用
清理不再使用的历史管理功能,简化代码结构
2025-08-24 13:01:52 +08:00
Wenjie Zhang
fa56bca143 refactor: 移除未使用的代码和注释,优化代码结构
- 删除 SettingView.vue 中的 TODO 注释
- 移除 AgentView.vue 和 AgentChatComponent.vue 中侧边栏互斥逻辑
- 删除 kb_manager.py 中未实现的 migrate_database 方法
- 将操作日志功能提取到 common_utils.py
- 修复文件末尾缺少换行符的问题
2025-08-23 17:39:47 +08:00
Wenjie Zhang
fe6c9ea364 feat(知识库): 实现知识库删除时清理Milvus和Neo4j数据
添加delete_database方法,在删除知识库时同步清理Milvus集合和Neo4j节点关系
移除graphbase.py中未使用的txt_add_entity和format_query_result_to_graph方法
更新README.md中关于Neo4j节点标签和关系类型的说明
2025-08-19 13:08:41 +08:00
Wenjie Zhang
e6145657c5 feat(lightrag): 添加LightRAG知识库的语言选择和LLM模型选择功能
- 支持在创建LightRAG知识库时选择语言和LLM模型
- 修复知识图谱加载按钮在没有文件时仍可点击的问题
- 更新README中的分支说明
- 简化chroma和milvus的集合命名方式
- 修复知识库创建失败的情况
2025-08-16 20:07:12 +08:00
Wenjie Zhang
93d2dac343 feat(knowledge): 添加知识库数据导出功能(未完成)
style(AgentMessageComponent): 调整工具调用边框样式

chore: 删除未使用的MessageComponent.vue文件
2025-08-10 21:58:41 +08:00
Wenjie Zhang
24f3d03c8e fix(知识图谱): 修正节点和关系统计方法,排除知识库自动构建的图谱
更新 GraphView.vue 中的统计描述,明确说明不包含知识库创建的图谱
修改 graphbase.py 中的查询逻辑,只统计带有特定标签的节点和关系
更新 changelog 中相关问题的状态 #236
2025-08-08 21:21:24 +08:00
Wenjie Zhang
f372d6fa44 fix: 修复代理配置和文档错误,更新默认模型
修复docker构建时的代理配置问题,移除pyproject.toml中不必要的依赖
更新README中关于代理配置的说明,修正文档中的大小写错误
将默认LLM模型从Qwen更换为GLM-4.5-Air
添加测试数据文件,优化embedding配置的错误处理
2025-08-08 18:35:01 +08:00
Wenjie Zhang
a13c2e0a0c docs(models): 更新默认模型和文档说明
- 将默认模型从 Qwen/Qwen3-32B 更新为 zai-org/GLM-4.5
- 移除 DeepSeek 相关模型配置
- 更新 README 中的模型推荐和文档说明
- 调整 LightRAG 默认配置为 siliconflow/Qwen3-30B-A3B-Instruct-2507
2025-08-07 21:26:22 +08:00
Wenjie Zhang
f1098f0c7d refactor(kb_utils): 简化文件路径处理逻辑 2025-08-05 22:19:55 +08:00
Wenjie Zhang
583a17b37d feat(knowledge): 添加文件处理队列管理功能
添加文件处理队列管理功能,包括添加/移除文件到处理队列的方法
添加状态检查方法修复异常的processing状态
确保文件处理状态的一致性
2025-08-04 20:15:39 +08:00
Wenjie Zhang
e2d0b17e5a feat(knowledge_base): 检索的内容以字典返回,同时包含 filepath 等 metadata
将知识库的异步查询方法aquery的返回类型从字符串更改为包含字典的列表,增强了查询结果的结构化。更新了Milvus和Chroma知识库的查询逻辑,确保返回的文档块包含内容、元数据和相似度分数。同时,修复了文件路径处理逻辑,确保文件名相对路径的正确性。
2025-08-01 17:04:37 +08:00
Wenjie Zhang
612bd9f7b0 refactor(graph): 重构知识图谱查询和格式化逻辑
- 修改查询方法以支持不同返回格式(graph/triples)
- 移除不再使用的格式化方法和废弃查询方法
- 优化节点和关系的查询性能及结果处理
- 更新相关API端点以直接返回原始查询结果
2025-07-30 10:50:06 +08:00
Wenjie Zhang
007e6aeb1f fix(graph): 改进图数据库查询逻辑和错误处理
修复图数据库查询时的错误处理,添加完整的traceback信息
重构查询逻辑,分离向量查询和模糊查询方法
更新README文档说明知识图谱的限制和使用方法
确保查询只针对带有Entity标签的节点
添加数据库状态检查断言
2025-07-29 16:30:47 +08:00
Wenjie Zhang
b4439996fa refactor(knowledge): 重构文件处理逻辑并提取到独立模块
将文件处理和URL处理逻辑从KnowledgeBase类提取到独立的indexing模块
更新模型配置和README,添加新的API Key获取链接
优化日志输出格式并添加新的文件预处理脚本
2025-07-29 12:58:13 +08:00
Wenjie Zhang
24f4ffa73e feat(knowledge_base): 添加对CSV、Excel和JSON文件的支持
添加处理CSV、Excel和JSON文件的逻辑,将其内容转换为Markdown格式。使用pandas库处理表格数据,json库处理JSON数据,增强知识库的文件兼容性。
2025-07-29 00:29:41 +08:00
Wenjie Zhang
f847c7f340 docs: 更新文档内容并添加相关图片
- 添加多个文档图片用于功能展示
- 更新README文档内容,优化描述和结构
- 更新changelog添加新任务和修复问题
- 修改docker镜像配置,更新基础镜像版本
2025-07-28 16:26:01 +08:00
Wenjie Zhang
04f6cb5a79 feat(milvus_kb): 优化文件删除逻辑,增加文件存在性检查 2025-07-27 13:02:57 +08:00
Wenjie Zhang
cf3cb5ef33 feat(ocr): 增强OCR处理功能,支持图像解析和参数传递,优化Docker环境变量配置 2025-07-27 04:12:49 +08:00
Wenjie Zhang
b9fdd74889 feat(knowledge_base): 按创建时间倒序排序文件列表,优化文件记录管理逻辑 2025-07-27 02:55:49 +08:00
Wenjie Zhang
4f8e1e19e1 feat(batch_upload): 添加批量上传和处理文件功能,支持文件记录管理,优化API交互和错误处理逻辑(并发访问Milvus) 2025-07-27 01:02:14 +08:00
Wenjie Zhang
7d4722b62c feat: 更新知识库相关配置
- 实现QA数据
- 优化现在创建知识库的体验
- 优化文件处理与加载方法
- 整体的格式检查与优化
- 优化 Embedding model 的加载逻辑,修复并行问题
- 优化整体的颜色布局
- 移除未使用的接口(前后端)
- 优化知识库的 chunk 逻辑
- 添加新的 Embedding模型支持
- 修复新建知识库后,Agent无法reload的问题
2025-07-26 03:36:54 +08:00
Wenjie Zhang
770d098f05 refactor(database): 文件结构优化,顺便修复了 chroma 的 embedding 错误 2025-07-23 19:21:45 +08:00