Skip to content
FunCoding

Search

Search docs, Skills and MCP

凭据、协议与配置优先级

配置 modelProviders、认证类型和默认模型,理解环境变量及 .env 加载规则。

This page has not been translated into English yet. The original Chinese version is shown below.

自定义模型需要把模型 ID、API 协议、端点与凭据来源配对。官方建议在用户级 ~/.qwen/settings.json 定义 modelProviders,减少项目与用户配置的合并冲突。

基础配置

以下示例使用标准 DashScope 的 OpenAI 兼容端点,通过环境读取 Key:

{
  "modelProviders": {
    "openai": [
      {
        "id": "qwen3-coder-plus",
        "baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1",
        "envKey": "DASHSCOPE_API_KEY"
      }
    ]
  },
  "security": {
    "auth": { "selectedType": "openai" }
  },
  "model": { "name": "qwen3-coder-plus" }
}

模型名是官方文档示例,使用前确认账号可用。运行环境提供 DASHSCOPE_API_KEY;与之不同,Coding Plan 和 Token Plan 必须使用自己的专用地址。

模型条目

字段要求与含义
id必填,发送给 API 的模型 ID
name选择器显示名称,默认与 id 相同
envKeyKey 所在环境变量名;省略时使用协议的默认 Key 变量
baseUrlAPI 地址覆盖,用于代理、自定义服务等
wireApiOpenAI 兼容请求格式,chat-completions 或 responses;省略时继承提供商协议
generationConfig超时、重试、采样等高级生成设置,具体字段见生成配置

security.auth.selectedType 决定启动认证协议,model.name 应匹配模型条目 id。只添加 modelProviders 而不配置启动选择或凭据,不能保证非交互任务直接可用。

凭据来源优先级

优先级来源
1CLI 显式参数,例如 --openai-api-key
2进程环境,例如 shell export 或启动时内联变量
3自动找到的 .env
4settings.json 的 env 对象

上表是 Authentication 页的凭据概括;选中 modelProviders 条目后的字段解析还受 provider 层影响,不能直接推断任意 CLI Key 都覆盖已选条目,见模型解析。环境变量加载中,启动时低优先级来源补充未设置或空字符串变量,不覆盖进程中已有非空值。官方支持在 settings 的 env 写 Key,但它以明文保存;避免提交包含凭据的文件。

.env 查找

当前实现从工作目录向上找到第一份允许的项目文件,每级优先 .qwen/.env,其次 .env,随后仍追加用户文件。顺序是全局 Qwen 目录的 .env、QWEN_HOME 重定向时的旧 ~/.qwen/.env、最后 ~/.env;重复路径去重。

Authentication 页“只读首个文件”的旧描述不再完整。当前源码会按上述顺序补齐未设置或空字符串值,不累积多个祖先项目文件。普通项目 .env 默认排除 DEBUG、DEBUG_MODE,而所有层还受强制变量限制,见环境加载。

官方推荐 .qwen/.env 隔离 Qwen Code 的变量,并将其排除在 Git 之外。若改文件后仍读取旧 Key,先检查更高优先级的 shell 环境及实际找到的文件,不要盲目复制更多配置。

切换与诊断

/model 按协议展示配置模型,选择会保存到后续会话;启动参数 qwen --model "模型ID" 可用于不同终端选择模型。/doctor 检查当前配置,输出含敏感信息时不应直接公开。

旧 qwen auth 子命令已经移除,配置迁移见认证入口。