Skip to content

fix: 适配 SDK 2.8 任务名参数,修复 LLM 调用模型解析失败 - #17

Open
QR-0W wants to merge 1 commit into
xuqian13:mainfrom
QR-0W:fix/sdk-2.8-task-name
Open

QR-0W wants to merge 1 commit into
xuqian13:mainfrom
QR-0W:fix/sdk-2.8-task-name

Conversation

@QR-0W

@QR-0W QR-0W commented Sep 16, 2026

Copy link
Copy Markdown
Contributor

背景

升级到 MaiBot 1.2.5(plugin SDK 2.8.1)后,插件所有 LLM 调用失败:

第1轮生成失败: 生成内容时出错: 未找到名为 'memory' 的模型

受影响链路:每日日程生成(00:30 定时)、启动补生成、次日推断、角色裁判。本地日志中定时生成连续多日全部失败(fail_schedule_generation_*),插件核心功能不可用。

根因

plugin SDK 2.8.1 起,LLMCapability.generate() 新增 task_name 参数(默认 "utils")并始终随请求发送(maibot_sdk/capabilities/llm.py)。而宿主 MaiBot 1.2.5 的 src/plugin_runtime/capabilities/core.py::_resolve_llm_capability_route() 逻辑是:请求带 task_name 键时,model / model_name 一律视为具体模型名

插件将任务名(memory 等)传给 model 参数,于是被当作具体模型名查找,模型列表中不存在,故全部失败。

修复

任务名改由 task_name 传递(4 处):

  • planner/schedule_generator.py
  • planner/auto_scheduler.py
  • planner/role_judge.py
  • planner/generator/base_generator.py(文档字符串同步)

兼容性

  • 本修复要求 MaiBot ≥ 1.2.5 / plugin SDK ≥ 2.8.1
  • 已核实:SDK 2.8.0 无 task_name 参数;MaiBot 1.2.4 宿主不读取该字段

验证

修复后本地实测:日程生成成功(12 个活动,质量分 0.88);环境 MaiBot 1.2.5 + SDK 2.8.1。

SDK 2.8.1 起 model 仅表示具体模型名,任务名须通过 task_name 传递;
旧写法 model=<任务名> 会被宿主当作具体模型名查找并报错。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant