Commit Graph

42 Commits

Author SHA1 Message Date
Wenjie Zhang
ebbb831fc0 feat: 实现MCP服务以统一业务逻辑和状态管理
- 新增 mcp_service 文件,移除原本的 src/agents/common/mcp.py,所有功能合并到mcp_service,MCP服务来处理服务器配置的增删改查操作、数据库与缓存之间的同步以及MCP客户端和工具的管理。
- 将重构的 MCP 和现有智能体做适配,引入全局缓存和状态管理机制用于MCP服务器和工具。
- 数据库表更新,在MCPServer模型中为StdIO传输类型添加了command和args字段。
- 其他代码优化、增强样式以提升用户体验和可读性。
2026-01-14 20:16:51 +08:00
Wenjie Zhang
7c414521c9 fix(reporter): 修复 reporter 智能体的模型加载异常 2026-01-02 19:56:55 +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
8087ef4b00 feat(chatbot): 增强智能体工具和知识库集成能力
- 在智能体上下文中添加知识库字段,支持从知识库中选择工具
- 重构工具获取逻辑,支持根据上下文动态加载工具
- 优化前端知识库创建和加载逻辑,移入 store 管理
- 改进工具调用结果渲染,支持知识库工具识别
- 添加 clear-btn 样式改进
2025-12-30 19:01:45 +08:00
Wenjie Zhang
e62ec33e4b feat(agents): 增加模型重试中间件并调整递归限制
将递归限制从100增加到300以支持更深的调用链
添加ModelRetryMiddleware到聊天机器人中间件链
优化模型加载逻辑,支持openai和deepseek官方初始化
2025-12-17 22:27:46 +08:00
Wenjie Zhang
8b4b7c230c feat: 添加附件上传中间件和管理功能
- 实现对话线程的附件上传、列出和删除功能
- 引入附件中间件以支持附件内容的上下文注入
- 更新智能体和对话管理器以处理附件元数据
- 增强前端组件以支持文件上传和显示附件状态
- 优化文档以反映新功能和使用示例
2025-11-08 10:51:30 +08:00
Wenjie Zhang
09fffb233c feat: 添加 middleware, subagents 支持
- 统一导入路径,优化代码结构,删除冗余文件和函数
- refactor: 将 chatbot agent 使用 create_agent 重构,大幅简化处理逻辑
2025-11-05 02:04:34 +08:00
Wenjie Zhang
d56cec5002 refactor: 适配了 langchain v1 版本,但并引入新特性,仅无兼容性错误 2025-10-23 01:39:01 +08:00
Wenjie Zhang
6986378e02 fix: 修复消息中断时带来的消息显示问题 2025-10-12 23:45:17 +08:00
Wenjie Zhang
3600c7f9b7 fix: 修复部分场景下历史记录保存异常的问题。回退到使用 AsyncSaver的双线备份消息模式 2025-10-12 16:04:46 +08:00
Wenjie Zhang
ff955bdda5 feat: 移除 Async的Checkpointer,并默认配置了 InMemorySaver 2025-10-11 21:10:39 +08:00
Wenjie Zhang
7641ab3699 stylle: 使用更加严格的风格检查以及代码格式化方法 2025-09-01 22:37:03 +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
402ff52739 refactor(tools_factory): 重构工具工厂模块,优化工具管理和错误处理
- 重命名工具获取函数为 get_buildin_tools 和 get_buildin_tools_info
- 改进工具ID生成和描述构建逻辑
- 添加详细的日志记录和错误处理
- 优化知识库工具创建流程,避免闭包问题
- 分离静态工具和知识库工具获取逻辑
- 增强计算器和知识图谱查询工具的错误处理
2025-08-24 20:12:15 +08:00
Wenjie Zhang
68e7bd8300 feat(ui): 优化智能体界面交互和样式
- 添加单例模式支持,区分独立页面和普通视图
- 重构智能体选择器为按钮样式并优化交互
- 更新侧边栏组件以支持不同模式下的显示
- 统一智能体名称显示为"智能体助手"
- 调整按钮圆角样式提升视觉一致性
2025-08-11 21:29:33 +08:00
Wenjie Zhang
612bd9f7b0 refactor(graph): 重构知识图谱查询和格式化逻辑
- 修改查询方法以支持不同返回格式(graph/triples)
- 移除不再使用的格式化方法和废弃查询方法
- 优化节点和关系的查询性能及结果处理
- 更新相关API端点以直接返回原始查询结果
2025-07-30 10:50:06 +08:00
Wenjie Zhang
7d4722b62c feat: 更新知识库相关配置
- 实现QA数据
- 优化现在创建知识库的体验
- 优化文件处理与加载方法
- 整体的格式检查与优化
- 优化 Embedding model 的加载逻辑,修复并行问题
- 优化整体的颜色布局
- 移除未使用的接口(前后端)
- 优化知识库的 chunk 逻辑
- 添加新的 Embedding模型支持
- 修复新建知识库后,Agent无法reload的问题
2025-07-26 03:36:54 +08:00
Wenjie Zhang
75c52a3855 feat(router): 添加工具路由,更新聊天和智能体相关功能,优化工具获取逻辑 2025-07-24 00:45:47 +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
a9b5e84618 feat: 添加异步工具支持,优化工具检索和 LLM 调用逻辑
- 在 tools_factory.py 中引入异步检索器包装函数,确保异步工具的正确处理。
- 更新 ChatbotAgent 类的 llm_call 方法为异步版本,以支持异步工具调用。
2025-06-27 01:49:31 +08:00
Wenjie Zhang
fd7cd8cf25 feat: 更新工具工厂和聊天机器人逻辑,增强前端多选组件
- 在 tools_factory.py 中修改工具名称生成逻辑,确保兼容 Deepseek 的要求。
- 在 graph.py 中优化聊天模型与工具的绑定逻辑,增加条件判断以提高灵活性。
- 在 AgentView.vue 中新增环境变量显示部分,增强用户界面,添加多选卡片组件以改善选项选择体验。
- 更新样式以支持多选卡片的响应式设计,提升整体用户体验。
2025-06-24 00:13:11 +08:00
Wenjie Zhang
a6857c3e21 style: fix ruff check 2025-05-24 11:29:45 +08:00
Wenjie Zhang
6475170c4b refactor: 重构智能体管理和基础代理类
- 将 AgentManager 类中的方法重命名为更具描述性的名称,并优化了代理的注册和实例化逻辑。
- 添加了线程ID和用户ID字段到基础代理类,并改进了获取历史消息的逻辑,增加了错误处理。
- 在 ChatbotAgent 中确保创建图时设置 checkpointer,并处理可能的异常。
2025-05-20 22:21:51 +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
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
693d05d808 添加自定义工具功能,给未来的 MCP 打一下基础 2025-04-05 17:27:52 +08:00
Wenjie Zhang
ff61e4cb48 超级大更新 2025-04-02 13:00:25 +08:00
Wenjie Zhang
9451b01ae9 临时保存 2025-04-02 00:00:04 +08:00
Wenjie Zhang
e43f1cd618 优化了一大堆:(1)添加了一个适配 LangGraph 的 graph 的类,这样可以更加方便的调试 Agent 了。(2)增加了 Agent call 的报错体验,但是前端还没有加进去。(3)移除部分无关紧要的 logger 2025-03-31 22:20:29 +08:00
Wenjie Zhang
b1be99fabc 优化基础智能体体验 2025-03-29 17:33:09 +08:00
Wenjie Zhang
98bfa82b24 修改 Agent 配置方法 2025-03-28 11:40:46 +08:00
Wenjie Zhang
6b0ccf8d17 添加智能体页面 2025-03-25 16:28:23 +08:00
Wenjie Zhang
dbf5000ac7 update a lot 2025-03-25 05:40:07 +08:00
Wenjie Zhang
b7533a0111 create the base chatbot agent 2025-03-24 23:00:14 +08:00
Wenjie Zhang
501ac557e8 agent demo 2025-03-24 19:07:51 +08:00