跳转到主要内容
这里的 Copilot 需要区分两种接入方式,因为它们不是同一条配置链路:
  1. VS Code / Copilot Chat BYOK:在 VS Code 的语言模型管理界面里接入自定义模型
  2. Copilot CLI BYOK:在终端里通过环境变量指定外部模型提供方
两种方式都可以接 HaiToken,但配置入口和限制并不完全一样。

先准备好这些信息

  • HaiToken API Key
  • 至少一个可用模型 ID,例如 deepseek-v4-flash
  • HaiToken OpenAI 兼容地址:https://api.haitoken.ai/v1

方式一:通过 VS Code / Copilot Chat 接入

这一条路径适合你希望在 VS Code Chat 中使用 HaiToken 模型。
GitHub / VS Code 官方已经提供 BYOK 能力,但不同版本和套餐支持范围并不完全一致。对 OpenAI 兼容自定义端点来说,某些能力在部分版本中可能仍属于预览或仅在特定版本中可见。请以你当前版本实际看到的入口为准。

步骤 1:打开语言模型管理界面

在 VS Code 中打开聊天模型选择器,进入 Manage Language Models,或者通过命令面板运行 Chat: Manage Language Models

步骤 2:添加自定义模型或提供方

如果当前版本直接提供 OpenAI Compatible 入口,优先使用它。 如果当前版本没有这个入口,则需要按当前版本支持的方式添加模型提供方,例如:
  • 使用内置 BYOK 提供方
  • 安装语言模型 Provider 扩展后再接入

步骤 3:填写 HaiToken 配置

如果当前版本支持 OpenAI 兼容提供方,推荐按下面的值填写:
字段推荐填写值
API Typechat-completions 或当前版本对应的 OpenAI Chat Completions 选项
Endpoint / Base URLhttps://api.haitoken.ai/v1
API Key你的 HaiToken API Key
Model IDHaiToken 实际可用的模型 ID,例如 deepseek-v4-flash

步骤 4:在聊天模型选择器里切换模型

保存后回到 Chat 面板,在模型选择器里切换到刚刚添加的 HaiToken 模型。

补充说明

这条接入路径主要覆盖 VS Code Chat / Agent 相关体验,不应直接理解为“所有 Copilot 功能都已经改走 HaiToken”。尤其是代码补全这类能力,官方文档明确说明不在 BYOK 覆盖范围内。

方式二:通过 Copilot CLI 接入

这条路径适合终端中的 copilot CLI。GitHub 官方对这条 BYOK 链路的环境变量说明比较明确,接 HaiToken 也更稳。
Copilot CLI 官方同时支持 openaianthropic 两种 Provider 类型。对 HaiToken 来说,推荐优先使用 openai,但如果你明确要走 Claude / Anthropic 生态,也可以改用 anthropic

步骤 1:设置 Provider 环境变量

如果你使用的是 Windows Terminal,要特别注意:不同 tab / pane 不会共享你在某个 PowerShell 会话里临时设置的环境变量。也就是说,你必须先在同一个 shell里设置 COPILOT_* 变量,再从这个 shell 直接启动 copilot,否则 Copilot CLI 可能继续使用默认模型或旧配置。
Windows PowerShell:
$env:COPILOT_PROVIDER_BASE_URL = "https://api.haitoken.ai/v1"
$env:COPILOT_PROVIDER_TYPE = "openai"
$env:COPILOT_PROVIDER_API_KEY = "YOUR_API_KEY"
$env:COPILOT_MODEL = "deepseek-v4-flash"
macOS / Linux:
export COPILOT_PROVIDER_BASE_URL="https://api.haitoken.ai/v1"
export COPILOT_PROVIDER_TYPE="openai"
export COPILOT_PROVIDER_API_KEY="YOUR_API_KEY"
export COPILOT_MODEL="deepseek-v4-flash"
如果你明确要走 Claude / Anthropic 模式,可以改成下面这种写法: Windows PowerShell:
$env:COPILOT_PROVIDER_BASE_URL = "https://api.haitoken.ai"
$env:COPILOT_PROVIDER_TYPE = "anthropic"
$env:COPILOT_PROVIDER_API_KEY = "YOUR_API_KEY"
$env:COPILOT_MODEL = "deepseek-v4-flash"
macOS / Linux:
export COPILOT_PROVIDER_BASE_URL="https://api.haitoken.ai"
export COPILOT_PROVIDER_TYPE="anthropic"
export COPILOT_PROVIDER_API_KEY="YOUR_API_KEY"
export COPILOT_MODEL="deepseek-v4-flash"

步骤 2:启动 Copilot CLI

在同一个终端会话中启动:
copilot

步骤 3:发送一条简单测试请求

输入一条简单问题,例如 hello 或让它解释当前文件作用。如果能够正常返回,说明 CLI 已经通过 HaiToken 工作。

补充说明

项目说明
Provider Type推荐 openai;也可选 anthropic
Base URLopenai 模式用 https://api.haitoken.ai/v1anthropic 模式用 https://api.haitoken.ai
鉴权头Authorization: Bearer YOUR_API_KEY
模型要求官方说明模型应支持 streaming 和 tool calling
如果你是在离线或隔离环境中使用,还可以按官方说明额外设置 COPILOT_OFFLINE=true,但这不影响 HaiToken 的基础接入写法。

不同系统下如何持久化环境变量

  • Windows:通常写入 PowerShell Profile,或写入你自己的启动脚本
  • macOS:如果你使用 zsh,通常写入 ~/.zshrc
  • Linux:如果你使用 bash,通常写入 ~/.bashrc;如果使用 zsh,通常写入 ~/.zshrc

验证步骤

  1. 如果你走的是 VS Code Chat 路径,在模型选择器里切换到 HaiToken 模型后发送一条简单消息。
  2. 如果你走的是 Copilot CLI 路径,在同一终端里启动 copilot 并发送一条简单消息。
  3. 如果能够正常返回内容,说明接入成功。

如何切换模型

VS Code / Copilot Chat

如果你走的是 VS Code / Copilot Chat 这条路径,直接回到聊天面板,在模型选择器里切换到另一个模型即可。 如果当前版本已经把 HaiToken 模型添加到了语言模型列表中,你可以在这里直接改成另一个模型,不需要重新配环境变量。

Copilot CLI

如果你走的是 copilot CLI,这里要特别注意:Copilot CLI 不是在会话里手动点选模型,而是读取启动前的环境变量。 也就是说,切换模型的正确方法不是在已经打开的 copilot 会话里输入某个命令,而是:
  1. 先退出当前 copilot 会话
  2. 修改 COPILOT_MODEL
  3. 在同一个 shell 里重新启动 copilot
Windows PowerShell 示例:
# 先退出当前 copilot 会话,然后执行:
$env:COPILOT_MODEL = "deepseek-v4-pro"
copilot
macOS / Linux 示例:
# 先退出当前 copilot 会话,然后执行:
export COPILOT_MODEL="deepseek-v4-pro"
copilot
如果你同时还要改 Provider 地址或 API Key,也要一起在重新启动前修改。

Windows Terminal 用户特别注意

如果你使用的是 Windows Terminal,不同 tab / pane 不共享你在某个 PowerShell 会话里临时设置的环境变量。 所以正确顺序一定是:
  1. 在当前 PowerShell 会话里设置 COPILOT_MODEL
  2. 不要切到别的 tab / pane
  3. 直接在这个 shell 里启动 copilot

怎么确认模型已经切换成功

你可以用下面几种方式确认:
  • 先在启动前检查环境变量:Get-ChildItem Env:COPILOT*
  • 进入 copilot 后,查看右下角显示的模型名
  • 如果 CLI 提示 Model "xxx" is not in the built-in catalog,通常说明它已经读到了你设置的自定义模型名

常见问题

问题解决方案
VS Code 里看不到自定义 OpenAI 兼容入口先确认当前 VS Code / Copilot 版本是否提供对应的 BYOK 或 OpenAI Compatible 入口;不同版本和渠道可见的入口不完全一致,必要时以当前版本实际支持的 Provider 扩展方案为准。
切到 HaiToken 模型后,聊天能用但代码补全没有变化这是正常现象。官方文档明确说明 BYOK 主要覆盖 Chat 和相关 Agent 体验,不覆盖标准代码补全。
我已经改了 COPILOT_MODEL,但会话里还是旧模型copilot CLI 读取的是启动前的环境变量。请先退出当前会话,在同一个 shell 里修改 COPILOT_MODEL 后再重新启动 copilot
Copilot CLI 提示 400 Bad Request先确认 COPILOT_PROVIDER_TYPE 是否为 openai,并确认 COPILOT_PROVIDER_BASE_URL 是否填写为 https://api.haitoken.ai/v1
我想改走 Claude / Anthropic 模式COPILOT_PROVIDER_TYPE 改成 anthropic,并把 COPILOT_PROVIDER_BASE_URL 改成 https://api.haitoken.ai。不要继续使用 OpenAI 模式下的 /v1 地址。
Copilot CLI 提示模型不存在请确认 COPILOT_MODEL 与 HaiToken 实际暴露的模型 ID 完全一致。
环境变量修改后不生效请确认你是否在设置变量的同一个 shell里启动了 copilot。如果你使用的是 Windows Terminal,还要注意不同 tab / pane 不共享某个 PowerShell 会话里临时设置的环境变量;必要时把变量写入对应 shell 的配置文件中。

下一步