Skip to content

v2.11.2 — 模型 id 不再含空格, 可直接填进客户端配置

Latest

Choose a tag to compare

@HengXin666 HengXin666 released this 08 Oct 14:31
· 19 commits to main since this release

升级方式

docker compose pull && docker compose up -d

修了什么

模型列表里的 id 现在可以直接填进客户端配置

从本版开始, GET /v1/models 返回的 id 一律是不含空格的模型标识, 可以直接复制到客户端配置里使用.

此前这个字段是模型的可读名称(例如 MIMO/MIMO-V2.5 对应的 MiMo 2.6 Flash), 名称里带空格. 大多数客户端不受影响, 但有一部分客户端(例如 picoclaw)的配置不接受含空格的模型 id, 于是控制台里显示"可用"的模型在那些客户端里根本加不进去. 手工把显示名改成带连字符的写法也不起作用.

现在对外 id 按以下顺序取值:

  1. 上游的模型标识(如 deepseek/deepseek-v4-flash)—— 生态通用的写法, 本身不含空格;
  2. 上游尚未提供该标识的新模型, 用可读名称归一后的形式(如 Ling-3.1-Flash);
  3. 两者都没有时回退到目录标识.

人类可读的名称没有被丢掉, 而是移到了并列的 display_name 字段, 控制台的「模型管理」页也会把它显示出来 —— 首列是可复制进配置的 id, 旁边一列是可读名称.

兼容性方面不需要迁移: 旧写法(带空格的显示名、目录标识 m-xxxxxxxx)继续能被解析, 所以已经配置好的客户端不会因为这次升级而失效. 含大写字母的写法同样可以解析.

其他改进

  • 控制台「模型管理」的模型 ID 列改为显示可直接使用的对外 id, 便于复制; 目录标识仍保留在悬停提示里, 方便和上游日志对账.
  • 模型列表与聊天接口的模型校验口径保持一致: 清单里出现的 id 一定能被聊天接口接受, 不会再出现"列表里能选、发请求却被拒"的情况.

验证

  • 用真实目录快照(13 行)端到端复核: 每个对外 id 都不含空格, 且能解析回对应的目录标识、通过白名单、解析到上游句柄.
  • 新增/加强回归套件: 模型名三层链路(含"id 不含空格""新 id 及其大写变体可解析回目录标识")、目录驱动模型表(含"id 不得含空格")、以及 /v1/models 清单构建的会话条目断言.
  • 代码质量红线 18/18 通过, Agent Notes 门禁通过, 全量 25 个套件通过(含真浏览器端到端).

升级注意

本次为修复版本, 数据与配置格式未变, 无需迁移. 如果你的客户端此前把带空格的显示名写死在配置里, 可以继续使用, 也可以换成清单里的新 id.