Copilot CLI 接入 Models Hub:BYOK 环境变量配置
用 BYOK 环境变量把 GitHub Copilot CLI 指向 Models Hub,推荐 anthropic 协议类型避免推理模型报错,附验证步骤与常见报错排查。
GitHub Copilot CLI 是 GitHub 官方的终端 AI 编程助手,支持 BYOK(自带密钥) 模式接入自定义模型端点。把它的 Provider 环境变量指向 Models Hub 后,copilot 里的对话与代码修改都会用 Models Hub 的额度调用你指定的模型。本文只讲接入,不讲 Copilot CLI 本身的用法。
三样东西
接入只需要:Models Hub 的 API Key、接入地址、一个模型名,通过环境变量一次性设置。没有一键配置,Copilot CLI 不在 Models Hub CLI 的支持范围内。
准备
- 已安装 Copilot CLI。没装的话运行
npm install -g @github/copilot,需要 Node.js 22 及以上,装完copilot --version能出版本号即可,详见 官方入门指南。 - 一个 Models Hub API Key。在控制台的 令牌页 创建,令牌所在分组要能访问你打算用的模型。
推荐模型
| 用途 | 模型名 | 定价 | 实时状态 |
|---|---|---|---|
| 日常编码首选 | claude-sonnet-4-6 | 查看价格 | 可用率与延迟 |
| 更强推理与长任务 | gpt-5.6-luna | 查看价格 | 可用率与延迟 |
| 便宜快速的小改动 | gpt-5.4-mini | 查看价格 | 可用率与延迟 |
模型名以 模型定价页 为准。
配置步骤
Copilot CLI 通过环境变量读取自定义 Provider,支持 anthropic 与 openai 两种协议类型。
推荐用 anthropic 类型
部分推理模型要求把 reasoning_content 在下一轮请求中原样回传,Copilot CLI 的 OpenAI 集成不支持这个机制,可能触发 400 错误。改用 anthropic 类型可以规避,无论你选 Claude 还是 GPT 系列模型都建议用这个类型;只用非推理的轻量模型时才考虑 openai 类型。
Linux / macOS
export COPILOT_PROVIDER_TYPE="anthropic"
export COPILOT_PROVIDER_BASE_URL="https://modelsok.com"
export COPILOT_PROVIDER_API_KEY="你的 Models Hub API Key"
export COPILOT_MODEL="claude-sonnet-4-6"Windows(PowerShell)
$env:COPILOT_PROVIDER_TYPE="anthropic"
$env:COPILOT_PROVIDER_BASE_URL="https://modelsok.com"
$env:COPILOT_PROVIDER_API_KEY="你的 Models Hub API Key"
$env:COPILOT_MODEL="claude-sonnet-4-6"| 变量 | 作用 |
|---|---|
COPILOT_PROVIDER_TYPE | 协议类型,anthropic 或 openai |
COPILOT_PROVIDER_BASE_URL | 接入地址;anthropic 类型不加 /v1,openai 类型要加(https://modelsok.com/v1) |
COPILOT_PROVIDER_API_KEY | 你的 Models Hub API Key |
COPILOT_MODEL | 默认模型名,须与定价页上的名字完全一致 |
只想跑非推理模型,可以把 COPILOT_PROVIDER_TYPE 改成 openai,COPILOT_PROVIDER_BASE_URL 相应改成 https://modelsok.com/v1。建议把这几行写进 ~/.bashrc / ~/.zshrc 或 PowerShell Profile 持久化,否则只在当前终端有效。
验证
启动 copilot,输入任意编程问题,例如「帮我写一个读取 JSON 文件的 Python 函数」。模型正常响应即接通。运行 copilot help providers 能看到当前生效的 Provider 环境变量。再打开 Models Hub 控制台的 用量日志,几秒内会出现一条对应模型名的请求。
常见报错
| 现象 | 原因 | 处理 |
|---|---|---|
400 Bad Request | openai 类型下推理模型的 reasoning_content 无法回传 | 把 COPILOT_PROVIDER_TYPE 切换为 anthropic |
| 提示模型不存在 | COPILOT_MODEL 拼错,或与定价页名字不一致 | 对照 定价页 核对名字 |
401 / API Key 无效 | Key 写错、多了空格,或令牌已被禁用 | 到 令牌页 重新复制 |
| 环境变量不生效 | 新开了一个 shell,或没写进配置文件 | 确认写入 ~/.bashrc / ~/.zshrc / PowerShell Profile 并重开终端 |
| 输出被截断 | 默认输出 token 上限不够 | 设置 COPILOT_PROVIDER_MAX_OUTPUT_TOKENS 提高上限 |
更多排查见 故障排查。
常见问题
计费方式? 按请求实际消耗的输入与输出 token 计费,价格在各模型的定价页,用量日志里能看到每一条请求的明细。
和直接用 GitHub Copilot 订阅有什么区别? 配置 BYOK 后,模型调用改走 Models Hub,不再消耗 Copilot 订阅里的模型额度;Agent 模式、工具调用和 MCP 等功能不受影响,但 /delegate、GitHub MCP 服务器等强绑定 GitHub 托管能力的功能仍需要 GitHub 账号登录。
怎么切换模型? 修改 COPILOT_MODEL 环境变量后重新启动 copilot 即可,模型名必须与定价页上的名字完全一致。
相关
- CLI 一键配置:Claude Code、Codex、Gemini CLI 与 OpenClaw 支持一键写入配置
- 模型定价 与 模型状态页
- Claude Code 接入、Codex CLI 接入
Gemini CLI 接入 Models Hub:一键配置与手动设置
用 Models Hub CLI 一条命令配置 Gemini CLI,或手动编辑 settings.json 与 .env 接入 Google Gemini 系列模型,附验证步骤与常见报错排查。
Cursor 接入 Models Hub:自定义 Base URL 使用 Claude 与 GPT
在 Cursor 里通过 Override OpenAI Base URL 接入 Models Hub,用一个 API Key 调用 Claude、GPT 等模型,附模型名、验证步骤与「does not work with your current plan」等报错排查。