Commit Graph

436 Commits

Author SHA1 Message Date
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
680dd92457 lint: Python Ruff Lint 2025-09-19 01:32:07 +08:00
Wenjie Zhang
c6c2d588a8 docs(readme): 更新文档内容及示例配置说明 2025-09-19 01:30:32 +08:00
Wenjie Zhang
63cceb4562 feat(chat): 添加调用重试机制提升接口稳定性
- 引入 tenacity 库实现自动重试功能
- 在调用 OpenAI 接口的 call 方法上增加重试装饰器
- 设定重试次数、指数退避等待策略及日志记录
- 调整流式和非流式响应处理逻辑,保证重试生效
- 在 pyproject.toml 中添加 tenacity 依赖声明
2025-09-19 01:10:20 +08:00
Wenjie Zhang
782eb4ae31 refactor(chat): 优化异步调用及增强内容审查机制
- 将chat_router中的predict_async重命名为call_async并调用model.call替代model.predict
- 在流式消息处理中新增加基于LLM的内容审查
- 配置类中增加enable_content_guard_llm及对应LLM模型配置项
- 兼容models.private.yaml替代旧的models.private.yml文件名
- chat_model及embedding模块统一将predict方法重命名为call或encode,增强接口语义
- ContentGuard新增基于LLM的内容合规检测功能,支持动态加载审查模型
- 更新静态模型配置提示,建议使用models.private.yaml文件
- 新增示例CSV测试数据文件,补充测试用例基础数据
2025-09-19 00:57:53 +08:00
Wenjie Zhang
e5e39d25ef lint(src): 规范导入语句及代码格式 2025-09-18 23:18:58 +08:00
Wenjie Zhang
33dbe78914 refactor(models): move model selection logic to chat_model and embedding modules 2025-09-18 20:34:10 +08:00
Wenjie Zhang
342c541645 feat(guard): 添加内容审查模块并集成至聊天服务(默认关闭)
- 新增内容审查关键词库 src/static/bad_keywords.txt,支持自定义敏感词
- 实现内容审查插件 src/plugins/guard.py,提供敏感词检测功能
- 配置新增 enable_content_guard 选项,支持开关内容审查功能
- 聊天路由 chat_router.py 集成输入和输出内容审查逻辑,拦截敏感内容
- 前端设置页增加内容审查开关,方便管理员启用或禁用该功能
- 错误时前端显示详细错误信息,并停止消息流,提升用户体验
- README 添加服务安全说明文档,介绍内容审查机制与配置方法
2025-09-18 20:33:38 +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
166990bc81 feat(MySQL): 集成 MySQL 数据库查询功能
- 添加 MySQL 连接管理器,支持连接和查询数据库
- 实现获取表名、描述表结构和执行 SQL 查询的工具
- 增强安全性,防止 SQL 注入和限制查询结果大小
- 更新 README.md,提供 MySQL 配置示例和使用说明
- 添加 MySQL 连接测试脚本,验证连接和工具功能
2025-09-16 15:23:18 +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
04f49f48d5 feat(agent): 添加智能体元数据支持和示例问题展示
- 新增智能体元数据配置文件及图标资源
- 在聊天界面中显示智能体图标和示例问题
- 更新 changelog 中已完成的任务项
2025-09-09 20:25:48 +08:00
Wenjie Zhang
2acbd4b93a feat: 添加HOST_IP环境变量支持并更新图片生成工具
- 在docker-compose中添加HOST_IP环境变量配置
- 修改minio_utils以支持通过HOST_IP配置公开端点
- 移除本地MCP服务器配置
- 将text_to_img工具替换为基于Kolors API的实现
2025-09-07 20:25:42 +08:00
Wenjie Zhang
7a23ce4742 refactor: 优化界面组件和样式,简化代码结构
- 移除知识图谱查看器的图例和部分控制按钮
- 调整数据库信息视图的面板宽度和背景色
- 简化知识库工厂注册参数
- 移除文件表格的自动刷新和面板切换按钮
- 优化代理配置侧边栏的系统提示词编辑体验
2025-09-06 14:04:33 +08:00
Wenjie Zhang
91fa5c903e fix(graphbase): 优化连通查询并修复节点重复添加问题 2025-09-03 11:55:40 +08:00
Wenjie Zhang
08ac557028 feat(agent): implement text-to-img tool with MinIO storage
Adds a new agent tool `text_to_img` that generates a placeholder image
from text and uploads it to a MinIO server, returning a public URL.

Key changes:
- Adds `minio` and `Pillow` to project dependencies.
- Creates a reusable MinIO utility module in `src/utils/minio_utils.py`
  to handle file uploads and bucket management.
- Refactors the agent tool to use this new utility, separating concerns
  and simplifying the tool's implementation.
- Replaces the previous hardcoded URL with a real, functional image
  upload process.
2025-09-02 14:00:06 +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
2648bec1be refactor(mcp): 移除deepwiki服务器配置
清理不再使用的deepwiki MCP服务器配置,简化配置列表
2025-09-01 19:13:57 +08:00
Wenjie Zhang
165ec73ca8 refactor(mcp): 移除全局MCP客户端缓存并优化工具加载逻辑
移除全局MCP客户端缓存,改为每次调用时创建新客户端实例
优化工具加载逻辑,添加服务器名称校验并改进错误处理
清理未使用的导入和冗余代码
2025-09-01 12:25:15 +08:00
Wenjie Zhang
63da8d9733 feat(chatbot): 添加MCP工具支持并优化工具管理逻辑
实现MCP服务器工具的动态加载和管理功能
重构工具获取逻辑以支持MCP工具和本地工具的混合使用
优化前端工具调用结果显示样式
移除未使用的工具相关代码
添加工具序列化转换工具函数
2025-09-01 03:38:46 +08:00
Wenjie Zhang
221f4af213 fix(chatbot): 修复智能体工具获取和权限问题
- 修改工具获取逻辑,使用智能体实例的工具列表
- 将工具获取接口的权限从管理员改为普通用户
- 更新日志格式,添加行号信息
- 修复前端工具获取时未传递智能体ID的问题
2025-08-31 10:27:58 +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
808485aa5e refactor(tools): 重构工具工厂返回工具列表而非字典
feat(ui): 在代理视图头部添加品牌名称显示
style(ui): 调整代理视图头部内边距和样式

fix(chatbot): 修复工具选择逻辑以匹配新工具结构

chore: 删除未使用的深度研究代理相关代码文件
2025-08-29 20:54:49 +08:00
Wenjie Zhang
92fe65fecf refactor(embedding): 重构嵌入模型代码,添加异步支持并改进错误处理
- 将BaseEmbeddingModel改为抽象基类(ABC)
- 添加异步预测方法apredict
- 重构批量编码方法,添加任务状态跟踪
- 为Ollama和Other嵌入实现添加异步支持
- 改进错误处理和日志记录
- 添加类型注解提高代码可读性

docs: 更新changelog记录已知问题
2025-08-28 13:50:48 +08:00
Wenjie Zhang
85e13b6481 feat: 添加Makefile并改进错误日志记录
docs: 更新项目文档结构并删除旧文档
refactor: 优化工具工厂的错误处理逻辑
2025-08-28 13:16:19 +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
51c0af517b fix: 修复知识图谱查询日志中的类型判断错误并支持品牌文件路径配置
修复 tools_factory.py 中知识图谱查询结果日志记录时的类型判断错误,将 'd' 改为 'dict'
在 system_router.py 中添加对环境变量 YUXI_BRAND_FILE_PATH 的支持,用于配置品牌文件路径
2025-08-24 21:07:55 +08:00
Wenjie Zhang
402ff52739 refactor(tools_factory): 重构工具工厂模块,优化工具管理和错误处理
- 重命名工具获取函数为 get_buildin_tools 和 get_buildin_tools_info
- 改进工具ID生成和描述构建逻辑
- 添加详细的日志记录和错误处理
- 优化知识库工具创建流程,避免闭包问题
- 分离静态工具和知识库工具获取逻辑
- 增强计算器和知识图谱查询工具的错误处理
2025-08-24 20:12:15 +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
68e7bd8300 feat(ui): 优化智能体界面交互和样式
- 添加单例模式支持,区分独立页面和普通视图
- 重构智能体选择器为按钮样式并优化交互
- 更新侧边栏组件以支持不同模式下的显示
- 统一智能体名称显示为"智能体助手"
- 调整按钮圆角样式提升视觉一致性
2025-08-11 21:29:33 +08:00
Wenjie Zhang
7f1b4f4a59 refactor: 移除qianfan模型相关代码和依赖 2025-08-11 15:40:41 +08:00
Wenjie Zhang
93d2dac343 feat(knowledge): 添加知识库数据导出功能(未完成)
style(AgentMessageComponent): 调整工具调用边框样式

chore: 删除未使用的MessageComponent.vue文件
2025-08-10 21:58:41 +08:00
Wenjie Zhang
4857de1856 feat(ui): 重构登录页和主页UI设计,优化品牌信息配置
- 将登录背景图片移至public目录并更新引用路径
- 完全重构登录页面布局,分为图片区和表单区
- 优化主页布局,添加导航链接和底部版权信息
- 更新品牌信息配置,移除short_name字段
- 调整多个组件的样式和间距
- 更新README添加品牌配置说明
2025-08-08 22:57:14 +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
67f3af3257 docs: update document 2025-08-01 16:59:03 +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
b403d8dd90 chore(dependencies): 更新mineru依赖为mineru[core],简化文档解析逻辑 2025-07-27 12:04:44 +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
9f5924b8e6 refactor(agent): 移除不必要的要求检查,简化 BaseAgent 初始化逻辑;更新工具注册逻辑,添加获取可运行工具信息的功能;重构聊天 API,优化代码结构和可读性。 2025-07-24 00:46:15 +08:00
Wenjie Zhang
75c52a3855 feat(router): 添加工具路由,更新聊天和智能体相关功能,优化工具获取逻辑 2025-07-24 00:45:47 +08:00
Wenjie Zhang
770d098f05 refactor(database): 文件结构优化,顺便修复了 chroma 的 embedding 错误 2025-07-23 19:21:45 +08:00
Wenjie Zhang
b434c39182 feat(lightrag): 添加环境变量配置以支持动态选择 LLM 提供者和名称,优化 LLM 函数获取逻辑 2025-07-23 12:55:02 +08:00
Wenjie Zhang
50931b0456 update deepresearch 2025-07-22 22:16:34 +08:00
Wenjie Zhang
9d58ebc13c refactor(agent): 将智能体相关的名称参数更改为ID,优化智能体管理逻辑 2025-07-22 17:30:00 +08:00
Wenjie Zhang
9d9101a3e5 refactor(router): 更新系统路由 2025-07-22 17:29:38 +08:00
Wenjie Zhang
44b6dfdbc0 feat: 更新依赖项,添加新的配置字段,优化智能体管理和视图组件 2025-07-22 04:12:55 +08:00
Wenjie Zhang
d50399f217 feat: 移除无关文件,并添加 paddlex cli 的脚本 2025-07-22 00:23:08 +08:00
Wenjie Zhang
d9a796aec1 docs: 更新 README 文档等 2025-07-21 19:48:15 +08:00
Wenjie Zhang
84039ae474 feat: 添加OCR服务健康检查和统计功能,优化PDF解析逻辑,增强错误处理机制 2025-07-21 19:25:07 +08:00
Wenjie Zhang
14d95ce64c
feat: 知识库更新,支持Milvus、Chroma、Lightrag类型的知识库 (#223) 2025-07-21 18:18:47 +08:00
Wenjie Zhang
f463f80386 fix: 部分场景下 env 不生效的 bug 2025-07-21 13:10:15 +08:00
Wenjie Zhang
5ed016298c feat: 更新 Docker 配置,添加 Milvus 令牌支持,优化健康检查命令,移除 PostgreSQL 配置,调整环境变量,增强系统稳定性 2025-07-18 11:29:12 +08:00
Wenjie Zhang
9a162d5197 feat: 更新环境模板,添加知识图谱模型名称配置;重构工具工厂,移除冗余代码并优化工具注册逻辑;增强图数据库类,添加数据库连接检查和嵌入模型获取功能;调整设置视图,移除不必要的开关和选择项 2025-07-02 02:58:13 +08:00
Wenjie Zhang
6810f1f84e feat: 在依赖组中添加 ruff 依赖,并优化代码中的类型提示和异常处理,提升代码可读性和稳定性 2025-07-02 02:38:36 +08:00
Wenjie Zhang
9233ba64fb refactor(lightrag): 优化Python类型提示以及代码稳健型 2025-07-01 13:26:17 +08:00
Wenjie Zhang
c89ba37617 style: 优化部分细节样式 2025-06-29 15:43:40 +08:00
Wenjie Zhang
7b846ff76b fix: 更新数据库路径和日志配置,确保兼容性和可维护性 2025-06-28 20:19:26 +08:00
Wenjie Zhang
a91d57f274 fix: 更新嵌入模型配置,修复相关信息获取逻辑
- 修改数据路由器中的嵌入模型信息获取方式,确保使用正确的配置项。
- 在 LightRagBasedKB 类中,增强 LLM 和嵌入函数的获取逻辑,支持动态配置。
- 更新嵌入模型和重排序模型的 URL 获取方式,统一为 base_url。
- 前端数据库视图中,调整嵌入模型选择的样式和信息展示,提升用户体验。
2025-06-27 12:22:35 +08:00
Wenjie Zhang
30163baed4 feat: !important 讲知识库的后端修改为 LightRAG 添加 PostgreSQL 支持和环境变量配置
- 在 docker-compose.yml 中新增 PostgreSQL 服务配置,包括健康检查和环境变量设置。
- 添加 PostgreSQL 初始化脚本,确保数据库和用户的创建及权限配置。
- 更新 pyproject.toml,新增 asyncpg 和 graspologic 依赖。
- 重构知识库管理逻辑,使用 LightRagBasedKB 替代原有 KnowledgeBase 类,优化知识库的管理和查询功能。
- 更新前端 API 接口,调整文件处理和数据库创建逻辑,支持新的嵌入模型配置。
2025-06-27 01:55:04 +08:00
Wenjie Zhang
9bc5b086f9 chore: 移除 Chat 、Retriever 相关代码,知识库与知识图谱默认开启且无法修改
- 删除 retriever.py 文件,移除不再使用的检索器逻辑。
- 更新 base_router.py,简化重启逻辑,移除 retriever.restart() 调用。
- 修改 config.py,移除知识库和知识图谱的配置项。
- 更新前端组件,调整与知识库相关的显示逻辑,确保界面一致性。
- 修改路由配置,移除与聊天相关的路由,优化用户导航体验。
2025-06-27 01:52:59 +08:00
Wenjie Zhang
a9b5e84618 feat: 添加异步工具支持,优化工具检索和 LLM 调用逻辑
- 在 tools_factory.py 中引入异步检索器包装函数,确保异步工具的正确处理。
- 更新 ChatbotAgent 类的 llm_call 方法为异步版本,以支持异步工具调用。
2025-06-27 01:49:31 +08:00
Wenjie Zhang
db38035577 chore: 移除不再使用的脚本和优化日志信息
- 删除了 download_models.sh 和 migrate_kb_to_sqlite.py 脚本,清理不必要的代码。
- 在 base_router.py 中更新日志信息,调整为英文以提高可读性。
- 移除 retriever.restart() 调用,简化重启逻辑。
- 优化 OCRPlugin 中的注释,去除冗余代码。
2025-06-27 01:47:52 +08:00
Wenjie Zhang
57299fda8d chore: 更新配置文件和日志路径
- 在 docker-compose.yml 中新增测试目录挂载。
- 修改 __init__.py 文件,更新配置文件路径以使用 save_dir 变量。
- 更新 logging_config.py 文件,调整日志文件路径至 tmp/logs,并确保相应目录存在。
- 移动 test/test_neo4j.py 文件
2025-06-26 02:13:46 +08:00
Wenjie Zhang
4afbb42f96 feat: 添加自动索引功能,优化文件处理流程
- 在知识库中新增自动索引参数,支持在文件处理后自动触发索引。
- 更新前端界面,允许用户配置自动索引选项,并在处理结果中反馈索引状态。
- 调整定时器刷新间隔,提高数据库信息更新的实时性。
2025-06-25 02:45:57 +08:00
Wenjie Zhang
5000afc3ca feat: 更新模型服务脚本和配置,支持 Qwen3 系列模型
- 修改 run.sh 脚本,新增对 Qwen3-32B、Qwen3-Embedding-0.6B 和 Qwen3-Reranker-0.6B 模型的支持。
- 更新 rerank_model.py,优化 API URL 获取逻辑,使用 get_docker_safe_url 函数。
- 在 models.yaml 中添加 Qwen3 系列模型的配置信息,包括名称、维度和 API 密钥。
2025-06-25 02:12:19 +08:00
Wenjie Zhang
cfb6700dcf refactor: 优化知识库获取逻辑,提升性能和数据处理效率
- 修改 get_all_databases 方法,避免预加载文件数据,直接构造返回数据,减少查询时间。
- 批量获取集合信息,减少对 Milvus 的单独查询,提高数据获取效率。
2025-06-24 16:02:56 +08:00
Wenjie Zhang
04aaa2e55f feat: 添加 indexing 的队列机制,当遇到高并发处理的时候不会出现显存资源不够的情况 2025-06-24 15:43:39 +08:00
Wenjie Zhang
b87f2f2e02 fix: 修复获取知识库信息加载时间过久的问题 2025-06-24 15:42:59 +08:00
Wenjie Zhang
3e64a4249b feat: 更新文件索引状态处理逻辑
- 在 knowledgebase.py 中将文件索引失败时的状态更新为 "pending_indexing"。
- 在 DataBaseInfoView.vue 中调整条件判断,允许在文件状态为 "pending_indexing" 或 "failed" 时显示操作按钮。
2025-06-24 00:14:34 +08:00
Wenjie Zhang
c90e2e0b26 feat: 移除零一万物模型支持并更新相关文档和配置
- 从 README.md 和 .env.template 中移除 LINGYIWANWU_API_KEY 相关内容。
- 更新 select_model 函数以支持 dashscope 和 deepseek 模型提供者的逻辑。
- 修改模型配置文件,更新 dashscope 的默认模型和相关信息。
- 移除与零一万物相关的图标和配置,简化模型选择逻辑。
2025-06-24 00:14:12 +08:00
Wenjie Zhang
fd7cd8cf25 feat: 更新工具工厂和聊天机器人逻辑,增强前端多选组件
- 在 tools_factory.py 中修改工具名称生成逻辑,确保兼容 Deepseek 的要求。
- 在 graph.py 中优化聊天模型与工具的绑定逻辑,增加条件判断以提高灵活性。
- 在 AgentView.vue 中新增环境变量显示部分,增强用户界面,添加多选卡片组件以改善选项选择体验。
- 更新样式以支持多选卡片的响应式设计,提升整体用户体验。
2025-06-24 00:13:11 +08:00
Wenjie Zhang
286e06f25b style: ruff check fix 2025-06-23 10:32:01 +08:00
Wenjie Zhang
eeb53f4774 feat: 添加 PaddleX OCR 支持及示例更新
- 在 example_usage.py 中更新分析文档的示例,使用新的 PaddleX OCR 服务。
- 在 data_router.py 中优化文件处理反馈信息,增加处理失败文件的统计。
- 在 indexing.py 中新增对 PaddleX OCR 的支持。
- 在 _ocr.py 中添加 process_pdf_paddlex 方法,集成 PaddleX OCR 处理逻辑。
- 新增 paddlex.py 文件,封装 PaddleX 版面解析服务的 API 调用。
- 更新前端 DataBaseInfoView.vue,增加 PaddleX OCR 选项。
- 新增测试文件 PixPin_2025-06-19_23-42-17.png 以支持 OCR 测试。
2025-06-23 10:09:51 +08:00
Wenjie Zhang
4ecf9a8cd6 feat: 添加系统信息配置功能
- 在 API 路由中新增获取和重新加载系统信息配置的接口。
- 实现信息配置的加载逻辑,并提供默认配置。
- 更新前端以支持动态加载和展示信息配置。
- 修改 Dockerfile,移除代理设置。
2025-06-22 23:07:57 +08:00
Wenjie Zhang
6671c920c3 refactor: 更新 Docker 配置,优化服务连接和健康检查 2025-06-20 17:32:49 +08:00
Wenjie Zhang
c6ab72cd5b refactor: 项目配置重构及 OCR 功能增强
- 更新 .gitignore,忽略本地文件。
- 调整 docker-compose.yml,优化服务配置及端口设置。
- api.Dockerfile 更换为基于 NVIDIA CUDA 的镜像,支持 GPU。
- pyproject.toml 新增依赖 langchain-tavily,并升级 mineru。
- tools_factory.py 重构,采用 langchain_tavily 的 TavilySearch。
- knowledgebase.py 增强 Milvus 连接异常的错误日志。
- _ocr.py 中 OCRPlugin 升级,使用 mineru 新解析方法,并调整健康检查 URL。
- 新增 mineru.py,实现文档解析逻辑。
- logging_config.py 优化日志配置,采用 loguru 管理日志。
- DataBaseInfoView.vue 新增分块参数配置及文件上传相关弹窗和功能。
2025-06-18 19:07:29 +08:00
Wenjie Zhang
22c473d370 fix: 重命名查询参数为 query_text 2025-06-16 23:07:28 +08:00
Wenjie Zhang
589894720c feat: 添加标记等待状态文件为失败的功能 2025-05-27 11:14:48 +08:00
Wenjie Zhang
b10edefe17 feat: 优化知识库和文件展示逻辑
- 更新了 KnowledgeDatabase 和 KnowledgeFile 的 to_dict 方法,支持选择性加载节点信息。
- 在 KnowledgeBase 中调整了数据库获取逻辑,确保在获取数据库时不加载文件节点。
- 在前端组件中添加了加载状态指示,改善了用户体验。
- 增强了数据库信息视图的交互性,支持批量索引和删除文件功能。
2025-05-26 20:39:31 +08:00
Wenjie Zhang
9d2604801d feat: 优化知识库和文件详情展示
- 在知识库中简化了文件加载逻辑,移除了不必要的节点加载。
- 将文件详情展示从抽屉组件改为模态框,增强用户体验。
- 添加了加载状态指示,改善了文件详情的展示效果。
- 新增分页功能,提升了文件列表的可用性。
2025-05-26 13:59:05 +08:00
Wenjie Zhang
d9802414f1 feat: 更新依赖和优化数据处理接口
-  优化了数据路由器中的文件和 URL 分块处理逻辑,增加了错误处理和日志记录。
- 更新了前端 API 接口以支持新的文件索引流程,移除了过时的接口。
2025-05-26 13:12:17 +08:00
Wenjie Zhang
a6857c3e21 style: fix ruff check 2025-05-24 11:29:45 +08:00
Wenjie Zhang
911f88d7eb feat: 添加mineru健康检查端点并优化类型注解
- 在 app.py 中新增健康检查端点以确认 API 正在运行。
- 优化了类型注解,使用更简洁的语法。
- 在 db_manager.py 中修正了日志信息的语言。
- 在 OCR 插件中添加了对 MinerU OCR 服务健康检查的逻辑。
2025-05-23 22:16:34 +08:00
Wenjie Zhang
b0db3c6b0d feat: 更新 Docker 配置和添加 MinerU OCR 服务
- 修改了 docker-compose.yml,更新了 API 和 Web 服务的镜像名称,并添加了 MinerU OCR 服务。
- 在 pyproject.toml 中添加了 Ruff 代码检查工具的配置。
- 更新了 API 和 Web Dockerfile,添加了代理环境变量。
- 新增了用于拉取 Docker 镜像的脚本。
- 在文档中添加了关于如何使用 MinerU OCR 的说明。
- 优化了代码结构和日志记录,提升了可读性和维护性。
2025-05-23 15:30:14 +08:00
Wenjie Zhang
6475170c4b refactor: 重构智能体管理和基础代理类
- 将 AgentManager 类中的方法重命名为更具描述性的名称,并优化了代理的注册和实例化逻辑。
- 添加了线程ID和用户ID字段到基础代理类,并改进了获取历史消息的逻辑,增加了错误处理。
- 在 ChatbotAgent 中确保创建图时设置 checkpointer,并处理可能的异常。
2025-05-20 22:21:51 +08:00
Wenjie Zhang
44fad724bf feat: 更新依赖并优化组件
- 在 pyproject.toml 中添加了 colorlog、langchain-deepseek 和 langchain-together 依赖。
- 修改了 chat_router.py 中的日志记录方式。
- 重命名 tools_factory.py 中的函数以更好地描述其功能。
- 更新了配置文件以支持新的模型选择。
- 优化了前端组件的样式和功能,包括侧边栏和消息输入框的交互体验。
2025-05-20 20:49:50 +08:00
Wenjie Zhang
9429a819ee refactor: 合并database数据库和server数据库
- 同时合并管理器,将事务相关的内容修改到knowledgebase中
- 添加数据库迁移的检测脚本
2025-05-17 23:36:01 +08:00
Wenjie Zhang
8c8abdc06b fix: 修复工具调用问题 2025-05-17 10:06:56 +08:00
Wenjie Zhang
77ce5a25da feat: Agent 消息保存在SQLite 中 2025-05-16 23:46:25 +08:00
Wenjie Zhang
548b018501 perf 暂时屏蔽ReActAgent 2025-05-15 23:17:22 +08:00
Wenjie Zhang
a292e69b22 feat: 添加消息记录云端保存
主要修改:
1. 服务端新增 Thread 模型,用于存储对话列表信息,但不保存实际的历史记录
2. langgraph 配置了 InMemorySaver,添加 thread_id 参数,消息对话保存在内存中(服务重启后丢失)
3. 添加获取历史记录的 API 接口,从内存中获取
4. 添加 Graph 的单例模式,get_runnable_agent 导致的重复创建 Agent 实例的情况。
5. 优化 Agent 管理页面,更容易配置,更容易调试
6. 添加独立页面的侧边栏。
2025-05-15 22:37:50 +08:00
Wenjie Zhang
b01abfcf71 feat: Agent配置可以同步在用户侧了,用户侧会使用 config file 中的配置 2025-05-13 19:49:54 +08:00
Wenjie Zhang
8a6664758e 添加 知识库信息更新方法,支持修改标题和描述 2025-05-10 10:53:15 +08:00
Wenjie Zhang
ea40fa4d1b 优化改写逻辑,默认启用改写查询 2025-05-10 10:53:15 +08:00
Wenjie Zhang
144632b703 进一步优化并行处理能力:file-to-chunk 部分优化完成 2025-05-10 10:53:15 +08:00
Wenjie Zhang
ab809f748f 优化本地 embedding 的GPU 处理问题,添加 GPU 部署映射 2025-05-10 10:53:15 +08:00
Wenjie Zhang
7449938775 支持使用URL添加到知识库; 2025-05-10 10:53:14 +08:00
Wenjie Zhang
044de7e8fd 修复system prompt 对于 DeepSeek 接口要求 system prompt 必须在第一个的 bug 2025-05-10 10:53:14 +08:00
Wenjie Zhang
67a15229f4 优化配置更新方法 2025-05-10 10:53:14 +08:00
Wenjie Zhang
a454389f6e 继续优化接口,移除无关模块:(1)移除原本的 Token 管理模块;(2)所有 API 请求使用 /api 前缀;(3)移除重复的中间件验证;(4)前后端都移除工具模块;(5)移除原本的 safe_config 模块;(6)其他小细节优化 2025-05-10 10:53:14 +08:00
Wenjie Zhang
9fdc6a6b77 基本权限控制功能实现 2025-05-10 10:53:14 +08:00
Wenjie Zhang
c36d504a5c env update 2025-05-10 10:52:26 +08:00
Wenjie Zhang
c4d9d06d7c add debug info when connect error 2025-05-09 14:48:32 +08:00
Wenjie Zhang
0dd1d61204 修复 model_provider_lite 的 bug 2025-05-06 22:48:16 +08:00
Wenjie Zhang
d56df04415 修复 Hit 问题 2025-04-26 23:13:48 +08:00
Wenjie Zhang
14dfe60333 新增:如果节点之前已经被索引,则跳过索引 2025-04-24 22:54:46 +08:00
Wenjie Zhang
9c61a8a436 优化embedding阶段的并行处理 2025-04-23 21:18:39 +08:00
Wenjie Zhang
04918055c9 优化一些样式预计说明文字 2025-04-15 12:39:46 +08:00
Wenjie Zhang
ce6f88b8b2 修复图谱检索结果重复的问题,同时将检索部分的逻辑代码,迁移到graphbase 里面 2025-04-15 10:49:30 +08:00
Wenjie Zhang
b7d5532e2a 优化一些错误提示 2025-04-14 00:15:30 +08:00
Wenjie Zhang
8696bf6583 add logger for loading local model 2025-04-13 23:50:19 +08:00
Wenjie Zhang
11f932d4b3 fix _models_private error 2025-04-13 23:12:55 +08:00
Wenjie Zhang
8323279ff4 修复知识图谱检索bug 2025-04-13 21:06:23 +08:00
Wenjie Zhang
26eb6d01db
Update tools_factory.py 2025-04-11 12:24:30 +08:00
Wenjie Zhang
380e7e38d6 优化知识库查询以及工具定义方法 2025-04-11 11:54:45 +08:00
Wenjie Zhang
f11f719b4e 优化重写查询 2025-04-11 11:53:37 +08:00
Wenjie Zhang
aa50f24c4f 新增openrouter的支持 2025-04-10 11:42:20 +08:00
Wenjie Zhang
2bfe284dd1 修复配置覆盖更新的bug 2025-04-10 11:41:21 +08:00
Wenjie Zhang
dd40f90e49
Merge pull request #147 from xerrors/agent-bug-fix
Agent bug fix
2025-04-09 12:26:37 +08:00
Wenjie Zhang
3fb11d6f9c 更新 env template 2025-04-09 12:12:55 +08:00
Wenjie Zhang
a2be4c80dd 更新关于在线搜索的描述 2025-04-09 12:05:05 +08:00
Wenjie Zhang
ede78ad390 fix agent talk bug and add some error traceback 2025-04-09 11:47:08 +08:00
Wenjie Zhang
1084d62891 只有当启用搜索的时候才会加载网络搜索 2025-04-08 00:35:29 +08:00
Wenjie Zhang
82974d9550 fix typo found by copilot 2025-04-06 20:47:45 +08:00
Wenjie Zhang
1d40da7460 添加自动获取模型列表,目前仅支持适配了 OpenAI格式的供应商,更多供应商支持中…… 2025-04-06 20:33:15 +08:00
Wenjie Zhang
693d05d808 添加自定义工具功能,给未来的 MCP 打一下基础 2025-04-05 17:27:52 +08:00
Wenjie Zhang
642b8411a7 使用数据库替代现有的 json 形式 2025-04-05 13:10:47 +08:00
Wenjie Zhang
42384236f8 Merge remote-tracking branch 'origin/main' into agent-update 2025-04-04 18:34:49 +08:00
Wenjie Zhang
f3707c34bc 重命名项目结构 2025-04-04 00:16:18 +08:00