模型解析与运行时快照
区分 provider 模型与 runtime 模型,理解凭据来源、生成设置和保存范围。
Qwen Code 区分从目录选择的 Provider Model 与临时解析出的 Runtime Model。确定属于哪类后,再判断 CLI、环境和全局设置是否参与。
Provider Model
通过 /model 选择 modelProviders 中的模型时,条目提供模型 ID、envKey、baseUrl 和整套 generationConfig。生成配置层不允许较低层补齐缺失字段。
例如 provider 只给出 timeout 和 temperature,全局的 max_tokens、modalities 或自定义 header 不会再补入。需要的字段应全部放在该 provider 条目。
Runtime Model
使用目录外的原始模型 ID 时,解析器按 CLI、环境、settings 和默认值逐字段组装。此时顶层 model.generationConfig 才参与。
官方用以下命令展示临时模型:
qwen --auth-type openai --model my-custom-model --openai-api-key "$KEY" --openai-base-url https://api.example.com/v1其中 KEY、模型与域名都是需提供的值。--auth-type 和 --model 也可以定位一个已有 provider 条目,因此“使用了 --model”本身不等于一定创建 Runtime Model。
认证与连接字段
Model Providers 页的解析表按顺序列出程序覆盖、模型 provider 选择、CLI、环境、settings 与默认/计算值,且不同字段在各层可用性不同。
CLI 的 Key/baseUrl 参数只有 --openai-api-key、--openai-base-url,用于当前 OpenAI 兼容 provider;没有对应 --anthropic-* 或 --gemini-* 凭据参数。
Authentication 页概括 CLI Key 优先,而模型解析表把选中的 provider 放在 CLI 之前。不要把它们归纳成“任何 CLI 参数始终覆盖目录模型的全部字段”;需要精确行为时,显式配置目标条目并核对当前版本解析结果。
security.auth.apiKey 和 security.auth.baseUrl 已弃用,推荐迁移到 modelProviders 的 envKey/baseUrl。security.auth.selectedType 仍用于选择认证类型,不要将这三个键一并删除。
运行时快照
完整运行配置可捕获为 RuntimeModelSnapshot,包含模型、实际 Key、baseUrl 和生成配置,并在 /model 出现运行时选项。官方示例 ID 为 $runtime|openai|my-custom-model;这应作为会话命令选择值,不应未经引用直接粘贴到 shell。
官方同时写“跨会话保留”和“运行时保存在内存”,没有在此清楚说明进程重启后的持久化保证。本页不承诺可依靠快照代替长期配置,也不将可能捕获实际 Key 的快照当作适合团队共享的配置。
推荐的长期方式
使用用户级 modelProviders 保存可复用目录,凭据通过 envKey 引用。项目整个 modelProviders 的合并策略是 REPLACE,会替换用户对应部分,不能当作逐条追加。