description: "Web GUI 的模型选择:/model 弹窗与 composer 模型位共用一份按提供方分组的会话级目录;供模型路由的用户与维护者阅读。"
English | 中文
Web GUI 允许用户通过 /model 弹窗或 composer 模型控件切换既有会话使用的模型与推理(reasoning)强度。两个界面呈现同一组按提供方分组的选择;所选模型决定可用的推理强度名称与默认值。完整选择从下一次请求开始生效;运行中的步骤保留其启动时的模型与推理强度。如果没有适配器可以服务会话路由,composer 会保持停用,直至路由恢复可用。
与 ui-conversation 及命令包一起挂载本插件;composer 随即在待处理指示器旁显示模型位,/model 则以弹窗打开同一份目录。当确切提供方/模型对仍在已公布分组中时,两个界面都显示 Host 报告的当前选择;目录行缺席时,可路由的选择保持不变,触发器提示 Select model。
模型按提供方分组。composer 菜单只显示模型与推理强度名称。/model 弹窗显示提供方名称与目录说明;其中两个内置 DeepSeek 模型的说明使用当前语言,外部提供方说明保持原文。弹窗应用所选模型的默认推理强度;composer 随后可以选择任一已公布的推理强度。适配器没有推理元数据时不显示 Effort 行;不存在任意推理强度输入。
当 Host 报告没有适配器服务该会话的路由时,本插件注册一个 composer 阻塞块,输入框随之停用并显示本插件自己的文案;恢复后无需重新加载即清除。首次加载之前或加载失败之后的 null 绝不阻断;目录成员关系同样不阻断——一条仍在服务、只是不公布该模型的路由不在分组里,却可用。
当仅了解模型界面还不够时,请阅读以下页面。这些页面从浏览器界面逐步深入到命令弹窗外壳与选择约定。
/model 贡献项注册进的 popupSelect 外壳。conversation.input.model 位与 composer 阻塞块。两个入口提交的 session.selectModel 选择会间接影响模型:Host 会在下一次提示词组装边界为完整的 ModelSelection 创建快照,并负责使其对模型生效;运行中的步骤则保留已组装的选择。
切换路由可能减少提供方侧后续请求的缓存复用,或使其失效;提示词前缀本身不受影响。
这些限制界定了当前模型选择界面。它们是当前包约束,不是通用模型路由器对比或任务积压。
运行时不变式: 不发布伴生入口。插件只注册一个 command contribution,HMR(热模块替换)安全性测试证明该注册的 dispose 能正确完成;它不发出 Cordis 事件,也不持有跨插件可变状态。