# Qwen

来源: https://docs.aicentos.com/clients/qwen

Language: zh-CN

> 在 Qwen Code 中使用 aicentos —— 通过 settings.json 配置 OpenAI 兼容 provider

Qwen Code 支持通过 `settings.json` 里的 `modelProviders` 注册任意 OpenAI 兼容端点。把 `baseUrl` 指向 aicentos，就能在 Qwen Code 里使用 aicentos 接入的模型。

## 准备工作

先在控制台「API Key」页面为 Qwen Code 创建一个专用 Key（建议命名 `qwen-code`，方便追踪用量）。

* 控制台：[https://aicentos.com](https://aicentos.com)
* 创建 Key：[https://aicentos.com/keys](https://aicentos.com/keys)
* 钱包充值：[https://aicentos.com/wallet](https://aicentos.com/wallet)
* 文档站：[https://docs.aicentos.com](https://docs.aicentos.com)

Qwen Code 需要 Node.js 20+，用 npm 全局安装：

```bash
npm install -g @qwen-code/qwen-code
qwen --version
```

## 需要填写的配置

| 字段      | 值                         |
| ------- | ------------------------- |
| auth 类型 | `openai`（OpenAI 兼容协议）     |
| baseUrl | `https://aicentos.com/v1` |
| envKey  | 存放 Key 的环境变量名（可自定义）       |
| 模型 id   | 控制台「模型广场」中的模型名            |

## 配置步骤

编辑 `~/.qwen/settings.json`：

```json
{
  "env": {
    "AICENTOS_API_KEY": "sk-你的Key"
  },
  "modelProviders": {
    "openai": [
      {
        "id": "gpt-4o",
        "name": "GPT-4o",
        "baseUrl": "https://aicentos.com/v1",
        "envKey": "AICENTOS_API_KEY"
      }
    ]
  },
  "security": {
    "auth": {
      "selectedType": "openai"
    }
  },
  "model": {
    "name": "gpt-4o"
  }
}
```

* `id` 是实际发给服务端的模型 ID，必须和控制台里的模型名一致。
* `modelProviders` 里不写明文 Key，`envKey` 只是"去哪个环境变量取密钥"的引用。
* 密钥优先级：系统环境变量 > `.env` 文件（`~/.qwen/.env`）> `settings.json` 的 `env` 块。
* 如果 aicentos 侧走 Responses 协议，给该模型加 `"wireApi": "responses"`；不写默认走 Chat Completions。

也可以完全不改配置文件，直接用环境变量：

```bash
export OPENAI_BASE_URL="https://aicentos.com/v1"
export OPENAI_API_KEY="sk-你的Key"
export OPENAI_MODEL="gpt-4o"
```

## 测试

启动 `qwen`，用 `/about` 确认当前 endpoint 和模型是否正确，再发一句简单提示词。配置了多个 provider 条目时，可以用 `/model` 切换。

## 注意事项

* 全局配置放 `~/.qwen/settings.json`，项目级配置放项目根目录的 `.qwen/settings.json`，后者优先级更高。
* `security.auth.selectedType` 必须是 `openai`，否则不会走自定义端点。
* 不要把明文 Key 提交进版本库，优先用 `~/.qwen/.env` 或系统环境变量。
* `wireApi` 只是本地路由元数据，不会随请求体发出去；改成 `responses` 前先确认 aicentos 侧支持 `/v1/responses`。
* Base URL 只填到 `/v1`，不要补成完整接口路径。