Soulter
2171372246
feat: llm_tool 装饰器返回值支持返回 mcp 库中 tool 的返回值类型(mcp.type.CallToolResult) ( #2507 )
2025-08-20 15:33:46 +08:00
Soulter
d2df4d0cce
Feature: 支持在配置文件配置可用的插件组 ( #2505 )
...
* feat: 增加可用插件集合配置项
* remove: 旧版平台可用性配置
已经基于多配置文件实现。
* feat: 应用配置文件插件可用性配置
* perf: hoist if from if
2025-08-20 15:25:41 +08:00
Soulter
fbc4f8527b
Merge remote-tracking branch 'origin/master' into releases/4.0.0
2025-08-19 00:53:36 +08:00
Soulter
90cb5a1951
fix: 当返回文本为空并且存在工具调用时错误地被终止事件,导致工具调用结果未被返回 ( #2491 )
...
fixes : #2448 #2379
2025-08-19 00:52:13 +08:00
Soulter
9c6d66093f
feat: 增加工具使用模型能力选项
2025-08-18 10:37:10 +08:00
Soulter
1df49d1d6f
refactor: 重构 Function Tool 管理并初步引入 Multi Agent 及 Agent Handsoff 机制 ( #2454 )
...
* stage
* refactor: 重构 Function Tool 管理并引入 multi agent handsoff 机制
- Updated `star_request.py` to use the global `call_handler` instead of context-specific calls.
- Modified `entities.py` to remove the dependency on `FunctionToolManager` and streamline the function tool handling.
- Refactored `func_tool_manager.py` to simplify the `FunctionTool` class and its methods, removing deprecated code and enhancing clarity.
- Adjusted `provider.py` to align with the new function tool structure, removing unnecessary type unions.
- Enhanced `star_handler.py` to support agent registration and tool association, introducing `RegisteringAgent` for better encapsulation.
- Updated `star_manager.py` to handle tool registration for agents, ensuring proper binding of handlers.
- Revised `main.py` in the web searcher package to utilize the new agent registration system for web search tools.
* chore: websearch
* perf: 减少嵌套
* chore: 移除未使用的 mcp 导入
2025-08-17 10:57:25 +08:00
Soulter
1d766001bb
Feature: 增加图片转述提供商配置、支持用户自定义模型模态能力 ( #2422 )
...
* feat: 增加图片转述提供商配置、支持用户自定义模型模态能力
* fix: 修复 LLMRequestSubStage 中会话管理方法参数不一致的问题,简化方法调用
2025-08-13 19:11:17 +08:00
Soulter
0759a11a85
fix: 修复 stage 在不同 pipeline 中被重复使用的问题和 persona 相关问题
2025-08-13 13:13:04 +08:00
Soulter
369eab18ab
Refactor: 重构配置文件管理,以支持更灵活的、会话粒度的(基于 umo part)配置文件隔离 ( #2328 )
...
* refactor: 重构配置文件管理,以支持更灵活的、基于 umo part 的配置文件隔离
* Refactor: 重构配置前端页面,新增数个配置项 (#2331 )
* refactor: 重构配置前端页面,新增数个配置项
* feat: 完善多配置文件结构
* perf: 系统配置入口
* fix: normal config item list not display
* fix: 修复 axios 请求中的上下文引用问题
2025-08-13 09:18:49 +08:00
Soulter
0c6e526f94
fix: platform id
2025-08-04 13:10:37 +08:00
Soulter
b1e3018b6b
Improve: 引入全新的人格管理模式以及重构函数工具管理器 ( #2305 )
...
* feat: add persona management
* refactor: 重构函数工具管理器,引入 ToolSet,并让 Persona 支持绑定 Tools
* feat: 更新 Persona 工具选择逻辑,支持全选和指定工具的切换
* feat: 更新 BaseDatabase 中的 persona 方法返回类型,支持返回 None
2025-08-04 00:56:26 +08:00
Soulter
87f05fce66
Fix: 当多个相同消息平台实例部署时上下文可能混乱(共享) ( #2298 )
...
* perf: update astrbot event session format, using platfrom id to ensure uniqueness
fixes : #1000
* fix: 更新 MessageSession 类以使用 platform_id 作为唯一标识符,并调整相关方法以确保一致性
* fix: 更新 MessageSession 文档以明确 platform_id 的赋值规则,并调整 get_platform 和 get_platform_inst 方法的返回类型
2025-08-02 21:38:55 +08:00
Soulter
1b37530c96
Merge remote-tracking branch 'origin/master' into releases/4.0.0
2025-08-02 20:14:18 +08:00
Soulter
842c3c8ea9
Refactor: using sqlmodel(sqlchemy+pydantic) as ORM framework and switch to async-based sqlite operation ( #2294 )
...
* stage
* stage
* refactor: using sqlchemy as ORM framework, switch to async-based sqlite operation
- using sqlmodel as ORM(based on sqlchemy and pydantic)
- add Persona, Preference, PlatformMessageHistory table
* fix: conversation
* fix: remove redundant explicit session.commit, and fix some type error
* fix: conversation context issue
* chore: remove comments
* chore: remove exclude_content param
2025-08-02 15:44:00 +08:00
Gao Jinzhe
140ddc70e6
feat: 使用会话锁保证分段回复时的消息发送顺序 ( #2130 )
...
* 优化分段消息发送逻辑,为分段消息添加消息队列
* 删除了不必要的代码
* style: code quality
* 将消息队列机制重构为会话锁机制
* perf: narrow the lock scope
* refactor: replace get_lock with async context manager for session locks
* refactor: optimize session lock management with defaultdict
---------
Co-authored-by: Soulter <905617992@qq.com >
Co-authored-by: Raven95676 <Raven95676@gmail.com >
2025-07-23 00:37:29 +08:00
Soulter
d89fb863ed
fix: improve logging and error message details in LLMRequestSubStage
2025-07-18 16:13:27 +08:00
Soulter
c88fdaf353
Merge pull request #1949 from advent259141/Astrbot_session_manage
...
[Feature] 支持在 WebUI 上管理会话
2025-07-13 17:23:52 +08:00
Soulter
cfdc7e4452
fix: add debug logging for provider request handling in LLMRequestSubStage
...
fixes : #2104
2025-07-13 16:12:48 +08:00
advent259141
a15444ee8c
移除了mcp会话级的启停,增加了批量设置的选项,对相关问题进行了修复
2025-07-13 00:15:21 +08:00
Gao Jinzhe
25b75e05e4
Merge branch 'AstrBotDevs:master' into Astrbot_session_manage
2025-07-12 22:25:20 +08:00
Raven95676
4dace7c5d8
chore: format code
2025-07-11 11:23:53 +08:00
Soulter
5c60dbe2b1
fix: 修复 WebChat 下可能消息错位的问题
2025-07-10 16:52:16 +08:00
advent259141
7cfbc4ab8f
增加了针对整个会话启停的开关
2025-07-09 11:58:52 +08:00
Soulter
7a9d4f0abd
fix: 修复工具调用被错误地发出到了消息平台上
...
fixes : #2060
2025-07-09 11:43:25 +08:00
Gao Jinzhe
0f692b1608
Merge branch 'master' into Astrbot_session_manage
2025-07-09 10:13:51 +08:00
Soulter
cd722a0e39
fix: handle direct tool call results
2025-07-06 18:04:46 +08:00
Raven95676
69d3ae709c
fix: direct send tool_call_result
2025-07-06 17:45:07 +08:00
Soulter
441b148501
Merge pull request #1991 from AstrBotDevs/perf/webchat-title
...
perf: 优化WebChat对话标题生成
2025-07-03 10:53:35 +08:00
Soulter
bd0f30b81c
Merge pull request #2003 from AstrBotDevs/feat-webchat-select-provider
...
Feature: WebChat 增加可选择提供商和模型的功能
2025-07-03 10:52:42 +08:00
Soulter
6f71301aaf
fix: log error when selected provider is not found
2025-07-03 10:49:12 +08:00
Soulter
5f0d601baa
feat: add support for selecting provider and models in webchat
2025-07-03 10:42:20 +08:00
Soulter
f234a5bcc2
fix: enhance event hook handling to return status and prevent propagation
2025-07-03 00:23:56 +08:00
Raven95676
1f2de3d3d8
perf: 优化WebChat对话标题生成
2025-07-02 10:43:54 +08:00
Soulter
6a503b82c3
refactor: web chat queue management and streamline chat route handling
2025-07-01 22:34:17 +08:00
advent259141
dcd7dcbbdf
解决了conflict
2025-07-01 17:24:56 +08:00
Gao Jinzhe
1538759ba7
Merge branch 'master' into Astrbot_session_manage
2025-07-01 17:19:30 +08:00
Soulter
714d4af63d
Merge pull request #1963 from AstrBotDevs/refactor-llm-request
...
Refactor: 将 LLM Request 部分抽象为 AgentRunner 并优化多轮工具调用
2025-06-29 21:38:43 +08:00
Soulter
8203fdb4f0
fix: webchat show tool call
2025-06-29 21:35:39 +08:00
Soulter
2f941de65b
feat: 支持展示工具使用过程
2025-06-29 21:19:40 +08:00
Raven95676
777c503002
perf: change logging level to debug for agent state transitions and LLM responses
2025-06-29 17:32:53 +08:00
Raven95676
e9b23f68fd
perf: add AgentState Enum for improved state management
2025-06-29 17:19:53 +08:00
Soulter
efa45e6203
fix: validate and repair message contexts in LLMRequestSubStage
2025-06-29 16:36:08 +08:00
Raven95676
efef34c01e
style: format code
2025-06-29 16:06:44 +08:00
Soulter
5f1dfa7599
fix: handle LLM response and execute event hook in ToolLoopAgent
2025-06-29 15:58:22 +08:00
Soulter
8e9c7544cf
fix: update type check for async generator in PipelineContext
2025-06-29 15:54:32 +08:00
Soulter
4e3d5641c8
chore: code quality
2025-06-29 15:51:56 +08:00
Soulter
20b760529e
fix: anthropic api error when using tools
2025-06-29 15:33:08 +08:00
Soulter
94ee8ea297
feat: 支持多轮次工具调用并且存储到数据库
...
移除了 llm tuner 适配器
2025-06-29 14:27:00 +08:00
advent259141
ec5d71d0e1
修复了一下重复的代码问题,删除了不必要的会话级别 LLM 启停状态检查。
2025-06-29 10:02:04 +08:00
advent259141
d121d08d05
大致凭借自己理解修复了一下整个检查流程,防止钩子出现问题
2025-06-29 09:57:31 +08:00