Skip to main content

接入 Claude Code

更新日期: 2026-05-13 适用模型: intern-s2-preview API 端点: https://chat.intern-ai.org.cn/v1/messages

Intern 书生大模型 Claude-like API 已经兼容 Claude Code 客户端,搭配 intern-s2-preview 模型就可以在 Claude Code 里直接使用书生大模型。下面提供 3 种接入方式,由快到稳:

  • 方式一·环境变量:一行命令试试看,不改任何配置。
  • 方式二·settings.json:长期使用,写进 Claude Code 配置。
  • 方式三·Shell alias:和官方 Claude 共存,随时切换。

准备工作

首先请确认已经安装了 Claude Code(建议 >= 1.0.0):

npm install -g @anthropic-ai/claude-code

然后去书生官网生成一个 API Token:API Tokens,下面所有方案都需要它。

接入的本质是告诉 Claude Code 两件事:「请求发去哪」和「用谁的身份」。对应两个环境变量:ANTHROPIC_BASE_URLANTHROPIC_AUTH_TOKEN。下面 3 种方式只是写到不同地方而已。


方式一:环境变量(最快,先跑通再说)

在当前终端临时设置,不影响任何已有配置,关掉终端就还原。最适合「先试试看好不好用」。

Linux / macOS

打开终端,复制粘贴下面四行(记得把 token 换成自己的):

export ANTHROPIC_BASE_URL="https://chat.intern-ai.org.cn"
export ANTHROPIC_AUTH_TOKEN="your-api-token"
export ANTHROPIC_MODEL="intern-s2-preview"
export ANTHROPIC_SMALL_FAST_MODEL="intern-s2-preview"

然后直接:

claude

进入 Claude Code 后输入 /status,能看到 Base URL 是我们的地址、模型是 intern-s2-preview,就说明跑通了 🎉

Windows PowerShell

$env:ANTHROPIC_BASE_URL = "https://chat.intern-ai.org.cn"
$env:ANTHROPIC_AUTH_TOKEN = "your-api-token"
$env:ANTHROPIC_MODEL = "intern-s2-preview"
$env:ANTHROPIC_SMALL_FAST_MODEL = "intern-s2-preview"

claude

想让它重启后依然生效,需要临时变量改为用户级变量:

[Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://chat.intern-ai.org.cn", "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", "your-api-token", "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_MODEL", "intern-s2-preview", "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_SMALL_FAST_MODEL", "intern-s2-preview", "User")

Windows CMD

set ANTHROPIC_BASE_URL=https://chat.intern-ai.org.cn
set ANTHROPIC_AUTH_TOKEN=your-api-token
set ANTHROPIC_MODEL=intern-s2-preview
set ANTHROPIC_SMALL_FAST_MODEL=intern-s2-preview

claude

想要永久生效(Linux / macOS 版)

上面这种 export 只对当前终端有效,关掉就没了。如果你想以后每次开终端都自动生效,需要把它们写进 shell 配置文件。

第一步:判断你用的是哪种 shell

echo $SHELL
  • 输出含 zsh → 编辑 ~/.zshrc(macOS 默认就是 zsh)
  • 输出含 bash → 编辑 ~/.bashrc(多数 Linux 默认)

下面以 zsh 为例(bash 把 .zshrc 换成 .bashrc 即可)。

第二步:用编辑器打开配置文件

# 任选其一
nano ~/.zshrc # 新手推荐,操作提示在屏幕底部
vim ~/.zshrc # 熟悉 vim 的用
code ~/.zshrc # 装了 VS Code 的话最直观

如果提示文件不存在,需要先 touch ~/.zshrc 新建一个再打开。

第三步:把配置追加到文件末尾

# Intern Claude Code
export ANTHROPIC_BASE_URL="https://chat.intern-ai.org.cn"
export ANTHROPIC_AUTH_TOKEN="your-api-token"
export ANTHROPIC_MODEL="intern-s2-preview"
export ANTHROPIC_SMALL_FAST_MODEL="intern-s2-preview"

保存退出(nano:Ctrl + O 回车保存,Ctrl + X 退出;vim::wq 回车)。

第四步:让改动立即生效

source ~/.zshrc

这一步等价于重开一个终端,让 shell 重新读一次配置。之后任何新开的终端窗口都会自动带上这些变量。


方式二:写进 Claude Code 的 settings.json

⚠️ 请先看这里:此方式会直接覆盖 Claude Code 的全局配置,原来用的 Anthropic 官方 Key 会失效。如果你现在仍在正常使用官方 Claude,建议优先考虑方式一方式三

配置文件路径:

  • Linux / macOS:~/.claude/settings.json
  • Windows:%USERPROFILE%\.claude\settings.json

settings.json,把下面这段 env 合并进去(如果文件本身是空的,整段贴进去就行):

{
"env": {
"ANTHROPIC_BASE_URL": "https://chat.intern-ai.org.cn",
"ANTHROPIC_AUTH_TOKEN": "your-api-token",
"ANTHROPIC_MODEL": "intern-s2-preview",
"ANTHROPIC_SMALL_FAST_MODEL": "intern-s2-preview"
}
}

保存后重启 Claude Code 生效。

怎么切回官方 Claude? 删掉上面这几个键,或者把 settings.json 还原成你之前的样子。建议改之前先 cp settings.json settings.json.bak 备份一份。

只想在某个项目里生效?把同样的配置放到该项目的 .claude/settings.json 即可,不影响别的项目。


方式三:Shell alias(和官方 Claude 共存)

如果你既要用官方 Claude,又要随时切到书生模型,最推荐这个方式:定义一个新命令 claude-intern,原来的 claude 完全不受影响。

Linux / macOS

第一步:打开 shell 配置文件(同方式一第二步,zsh 用户改 ~/.zshrc,bash 用户改 ~/.bashrc):

nano ~/.zshrc

第二步:在文件末尾追加 alias

alias claude-intern='ANTHROPIC_BASE_URL="https://chat.intern-ai.org.cn" \
ANTHROPIC_AUTH_TOKEN="your-api-token" \
ANTHROPIC_MODEL="intern-s2-preview" \
ANTHROPIC_SMALL_FAST_MODEL="intern-s2-preview" \
claude'

第三步:让 alias 生效

source ~/.zshrc

之后就有两个命令可以用:

claude          # 走你原来的配置(比如官方 Claude)
claude-intern # 走书生 intern-s2-preview

claude-intern 后面可以跟参数,比如 claude-intern --help,效果和原生 claude --help 一致。

Windows PowerShell

PowerShell 没有 alias 传环境变量的能力,用函数代替,效果一样。

打开 PowerShell 配置文件:

notepad $PROFILE

如果提示文件不存在,先创建:

New-Item -ItemType File -Path $PROFILE -Force
notepad $PROFILE

在文件中追加:

function claude-intern {
$env:ANTHROPIC_BASE_URL = "https://chat.intern-ai.org.cn"
$env:ANTHROPIC_AUTH_TOKEN = "your-api-token"
$env:ANTHROPIC_MODEL = "intern-s2-preview"
$env:ANTHROPIC_SMALL_FAST_MODEL = "intern-s2-preview"
claude @args
}

保存后执行 . $PROFILE 重新加载,之后就能使用 claude-intern 了。


验证是否接入成功

启动 Claude Code 后随便问一句:

> 你是什么模型?请用一句话介绍自己。

或者直接用 curl 验证 API 和 Token 是否可用:

curl -X POST https://chat.intern-ai.org.cn/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: your-api-token" \
-d '{
"model": "intern-s2-preview",
"max_tokens": 128,
"messages": [{"role": "user", "content": "ping"}]
}'

返回内容里出现 "type": "message" 就说明通了。


两个模型变量是干嘛的?

这是配置里最容易让人疑惑的部分,单独解释下。

环境变量角色影响哪些功能
ANTHROPIC_MODEL主模型(默认对话用)跟 Claude Code 的所有正常对话、写代码、推理、工具调用,都走这个模型
ANTHROPIC_SMALL_FAST_MODEL小快模型(后台轻量任务)会话标题生成、/compact 摘要压缩、状态栏更新、轻量分类等不需要重型推理的场景

Claude Code 会自动根据任务类型在两者之间切换,无需手动指定。

为什么我们建议两个都设成 intern-s2-preview 因为目前只暴露这一个对外模型;如果只设了 ANTHROPIC_MODEL 没设 ANTHROPIC_SMALL_FAST_MODEL,Claude Code 在后台任务里会尝试调用默认的 claude-haiku-*,这个模型在我们的 API 里不存在,会直接报错。

关于 /model 命令的小坑:Claude Code 的 /model 命令在使用第三方 BASE_URL 时,不会真的去请求我们的模型列表,它只能在你环境变量配置的值之间显示/切换。想确认当前实际用的是什么,**/status 命令更可靠**——它会直接打印 Base URLModelSmall Fast Model 三个字段。


常见问题

Q1:claude 启动后报 401 Unauthorized / Invalid API Key 检查 ANTHROPIC_AUTH_TOKEN 有没有填完整。常见坑:前后多了空格/引号、误加了 Bearer 前缀、token 过期。

Q2:/status 显示的还是 api.anthropic.com 说明环境变量没传到 Claude Code 进程里。新开一个终端窗口再试;或确认 ~/.bashrc~/.zshrc$PROFILE 确实保存了改动并 source 过。

Q3:模型经常空回复,或工具调用很不稳? intern-s2-preview 在 Claude Code 这类强依赖工具调用的场景下,必须保持 thinking_mode 开启(API 默认就是开的)。请不要在 settings 里通过 extraBody 把它关掉。

Q4:上下文最长多少? intern-s2-preview 支持 256K 上下文。单次 max_tokens 建议 ≤ 8K。大型项目结合 Claude Code 的 /compact 压缩历史会更顺。

Q5:被限流了(-20053 / HTTP 429)? 默认 30 req/min。Claude Code 在多 Agent、密集工具调用时容易触发,可去限流策略申请更高配额。

Q6:想切回官方 Claude 怎么办?

  • 方式一:关闭终端,或执行 unset ANTHROPIC_BASE_URL ANTHROPIC_AUTH_TOKEN ANTHROPIC_MODEL ANTHROPIC_SMALL_FAST_MODEL
  • 方式二:编辑 ~/.claude/settings.json,删掉对应键。
  • 方式三:直接用 claude,alias 不会污染默认命令。

Q7:VS Code / JetBrains 插件能用吗? 能。IDE 插件读的是同一份 ~/.claude/settings.json,按方式二配好即可。环境变量方式只对「从同一个 shell 启动的 IDE 进程」生效。