工具与集成指南
将 Qwen Code 连接到 CheapTokens:环境变量和 settings.json
通过三个环境变量或一个 settings.json 条目,将 Qwen Code 指向 OpenAI 兼容 API:基础 URL、完整模型 ID 和保存在 git 之外的密钥。

Qwen Code 可以连接到自定义的 OpenAI 兼容端点,因此将它连接到 CheapTokens 需要三个值:基础 URL https:/、你的 API 密钥,以及完整的模型 ID,例如 deepseek-。将它们导出为 OPENAI_API_KEY、OPENAI_BASE_URL 和 OPENAI_MODEL,或者写入 ~/。这两种方式均来自 Qwen Code 认证文档(页面最后更新于 2026 年 10 月 22 日)。
设想一个长会话:智能体读取十几个文件、编辑三个文件、重新运行测试。每一步都会重新发送上下文,因此你会反复为输入付费。这就是为什么按 token 余额计费的便宜模型适合终端智能体,也是为什么下面的配置值得花十分钟。
安装 Qwen Code#
Qwen Code 需要 Node.js 22 或更高版本。项目 README(github.com/QwenLM/qwen-code)列出了几种安装方式;其中两种:
安装 Qwen Code
npm
npm install -g @qwen-code/qwen-code@latestHomebrew
brew install qwen-code使用 qwen 启动它。文档还介绍了 /auth → 自定义提供商,用于手动连接代理或不支持的提供商。下面的两种方式已逐行写出,因此从其中一种开始。
方式 1:三个环境变量#
最快的方法。在项目目录中打开终端并运行:
export OPENAI_API_KEY="sk-your-api-key"
export OPENAI_BASE_URL="https://api.cheaptokens.dev/v1"
export OPENAI_MODEL="deepseek-ai/DeepSeek-V4-Flash-0731"
qwen密钥是占位符;请从 CheapTokens 仪表板粘贴你自己的密钥。当你通过环境变量设置所有内容时,导出 OPENAI_API_KEY 也是告诉 Qwen Code 使用 OpenAI 兼容认证的方式。OPENAI_MODEL 有一个别名,QWEN_MODEL。
有一个细节容易让人出错:模型 ID。使用 CheapTokens 文档中的完整 ID。价格旁边显示的短名称 deepseek- 不被 API 接受,而且不同提供商的 ID 各不相同。
哪个变量起什么作用?将它们对应起来:
配对
将每个变量与其作用对应起来
点击左侧项目,然后点击其配对项
- OPENAI_API_KEY你的 CheapTokens 密钥;导出它会选择 OpenAI 兼容认证
- OPENAI_BASE_URLQwen Code 发送请求的端点
- OPENAI_MODEL发送给 API 的模型 ID
- QWEN_MODELOPENAI_MODEL 的别名
导出的变量在你关闭终端之前一直有效。要保留配置,请使用下一种方式。
方式 2:settings.json 和放在 git 之外的密钥#
假设你和团队共享仓库,而且没人希望密钥出现在配置文件中。那么就在 ~/ 中描述模型,并将密钥保存在单独的文件中。
{
"modelProviders": {
"openai": [
{
"id": "deepseek-ai/DeepSeek-V4-Flash-0731",
"name": "DeepSeek-V4-Flash (CheapTokens)",
"baseUrl": "https://api.cheaptokens.dev/v1",
"description": "DeepSeek-V4-Flash through CheapTokens",
"envKey": "CHEAPTOKENS_API_KEY"
}
]
},
"security": { "auth": { "selectedType": "openai" } },
"model": { "name": "deepseek-ai/DeepSeek-V4-Flash-0731" }
}有四个字段起关键作用:
id是发送给 API 的模型 ID,因此必须是完整 ID。model.name必须匹配某个id值,否则 Qwen Code 没有可选择的项。security.设置为auth. selectedType "openai"会选择 OpenAI 兼容方式。envKey指定保存密钥的变量名。它是可选的,默认为OPENAI_API_KEY。
密钥本身放入 .qwen/.env,文档推荐用它保存机密信息,并且该文件不纳入 git:
CHEAPTOKENS_API_KEY=sk-your-api-key有理由优先选择它而不是 settings.json 中的 env 块:来自 env 的值优先级最低,而且包含密钥的文件很容易被意外提交。关于如何安全保存密钥的更多内容,请参阅安全存储 API 密钥。

启动后,/model 会显示已配置的模型,并允许你切换。要以特定模型启动,请运行 qwen -。
一次编码会话的成本#
终端智能体的输入量很大:每一步都会携带它到目前为止收集的文件和历史记录。假设一个 40 步的任务,每步有 30,000 个输入 token 和 1,000 个输出 token。那就是 40 × 30,000 = 1,200,000 个输入 token 和 40 × 1,000 = 40,000 个输出 token。以下是按实时价格计算整个任务的费用:
| 模型 | 输入 $/1M | 输出 $/1M | 每次请求 | 40 次请求 | OpenRouter,40 次请求 |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.00064 | $0.0256 | $0.0526 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.00055 | $0.022 | $0.0633 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.0017 | $0.066 | $0.408 |
每次请求 30,000 个输入 token 和 1,000 个输出 token。每 100 万 token 的价格为当前价格,会随我们的资费一同变动;OpenRouter 列显示相同工作负载的参考价格。
将输入和输出合计,对于表中的每个模型,CheapTokens 都比 OpenRouter 便宜。对于这种循环,DeepSeek-V4-Flash 很合适:380K 上下文,单次回答最多 32,768 个输出 token,任何时段价格相同,所有模型共用一个余额。你自己的数字会有所不同,所以请拖动滑块:
成本计算器
你使用终端智能体的一天
每次请求的输入 token 数: 25,000 · 每次请求的输出 token 数: 800 · 每日请求数: 120
| 模型 | 每天 | 每月 |
|---|---|---|
| GLM-5.3-Flash$0.02$0.04 | $0.0638 | $1.92 |
| DeepSeek-V4-Flash$0.015$0.10 | $0.0546 | $1.64 |
| MiniMax-M2.7$0.05$0.15 | $0.164 | $4.93 |
价格见定价页面。如果你想在另一个智能体中查看用量,Cline 的费用是多少会讲解同样的计算。
其他可尝试的模型#
切换只是更改 ID,仅此而已。从模型页面或从 GET /v1/models 获取:
zai-:390K 上下文,每次回答最多 8,192 个输出 token,总价低于 OpenRouter。org/ GLM- 5. 3- Flash MiniMaxAI/:180K 上下文,每次回答最多 8,192 个输出 token,总价低于 OpenRouter。MiniMax- M2. 7
更改 OPENAI_MODEL,或者向 modelProviders. 添加第二个条目,并用 /model 在它们之间切换。
如果 Qwen Code 无法连接#
- 未选择认证类型。 仅使用环境变量时,必须导出
OPENAI_API_KEY。使用 settings.json 时,检查selectedType是否为"openai"。 - 找不到模型。
model.name必须与id逐字符一致,并且 ID 必须是完整的网关 ID。 - 401。 密钥缺失或错误。如果你使用
envKey,请确保该变量确实存在于.qwen/.env或你的 shell 中。 - 404。 检查基础 URL 是否以
/v1结尾,以及 ID 是否有拼写错误。完整说明见 API 401 或 404:密钥、基础 URL 或模型 ID 错误。 - 某个变量似乎被忽略。 settings.json 中
env里的值优先级最低,因此在其他地方设置的变量会胜出。
其他终端智能体的配置遵循同样的模式,例如 OpenCode 和 Aider。从密钥到首次请求的所有其他内容,都在 CheapTokens 文档中。



