1. 百度千帆环境下 Claude Code 接入的真实痛点
Claude Code 是 Anthropic 推出的终端内 AI 编程助手,它直接跑在你的命令行里,能读写项目文件、执行 shell 命令、跑测试、改 bug,适合习惯在终端里干活的开发者。但很多人第一次在百度千帆这类国产模型平台上配置它时,会卡在几个很具体的地方:Base URL 到底填哪个、API Key 放哪个字段、settings.json 里那一堆 ANTHROPIC_ 开头的环境变量分别管什么、改完之后怎么确认通道真的通了。
我自己第一次配的时候,把 Key 填进了ANTHROPIC_API_KEY,结果启动后一直提示认证失败;后来又发现 Base URL 少写了路径后缀,请求直接 404。这些坑不复杂,但没人告诉你的时候能耗掉一两个小时。这篇就按「百度千帆 + Claude Code 配置指南」这个场景,把每一步拆开,给出可以直接复制的 settings 片段,最后附一条 curl 验证请求,让你确认通道是通的。
需要先说明一点:Claude Code 默认走的是 Anthropic 官方通道,而百度千帆提供了兼容 Anthropic 协议的 Coding Plan 接口,所以我们要做的是把 Claude Code 的请求指向千帆的兼容端点,同时把模型 ID 换成千帆侧的模型名。整个过程不涉及任何网络工具,纯粹是改配置文件。
适合谁看:已经在用百度千帆、想把它接进 Claude Code 的开发者;或者手上有一份千帆的 API Key,但不知道怎么在终端助手场景里用起来的人。如果你还没装 Claude Code,下面第一步会带上安装命令。整篇的节奏是:先装工具,再改配置,再跳过官方引导,最后验证。每一步都有可复制的命令或 JSON。
2. TaoToken 前置准备与 Claude Code 安装
在动配置文件之前,先把两件事准备好:一个是 Claude Code 本体,一个是你要填进配置里的凭证。Claude Code 依赖 Node.js 环境,先确认版本:
node -v npm -vNode.js 建议 18 以上。确认没问题后全局安装:
npm install -g @anthropic-ai/claude-code装完验证一下:
claude --version能打印出版本号就说明装好了。如果提示command not found,多半是 npm 全局 bin 目录没进 PATH,可以用npm config get prefix看一下路径,再把它加到环境变量里。
接下来是凭证。这里有个容易混的点:Claude Code 读的是ANTHROPIC_AUTH_TOKEN这个字段,不是ANTHROPIC_API_KEY。你在千帆控制台拿到的 API Key,要填到ANTHROPIC_AUTH_TOKEN里。如果你手上还没有可用的 Key,或者想先用一个统一的入口把模型通道跑通再决定用哪家,可以到 TaoToken 的 API Keys 页面生成一个,地址是 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite 。生成之后先复制保存,后面配置里要用。
TaoToken 在这里的角色是一个统一的模型接入入口,它兼容 Anthropic 的请求格式,所以 Claude Code 的配置方式和你接千帆是同一套逻辑——改 Base URL、改 Key、改模型 ID。区别只是地址和模型名不同。如果你后面想在不同模型之间切换,只要换这三个值就行,配置文件结构不用动。
关于模型 ID,千帆侧的 Coding Plan 通常用qianfan-code-latest这类名字,具体以你控制台里看到的为准。TaoToken 侧则用它文档里列出的模型 ID。不管用哪个,ANTHROPIC_MODEL和几个ANTHROPIC_DEFAULT_*_MODEL字段要填成同一个可用模型,否则 Claude Code 在切换「快模型/慢模型」时会报模型不存在。
这一步做完,你手上应该有三样东西:装好的 Claude Code、一个 API Key、一个 Base URL 加模型 ID。下面进入配置环节。
3. 可复制的 settings.json 配置片段
Claude Code 的配置放在用户目录下的.claude/settings.json。先创建目录,再创建文件。
macOS / Linux:
mkdir -p ~/.claude vim ~/.claude/settings.jsonWindows(PowerShell):
mkdir $env:USERPROFILE\.claude notepad $env:USERPROFILE\.claude\settings.json然后把下面这段 JSON 完整复制进去。注意把ANTHROPIC_AUTH_TOKEN换成你自己的 Key,ANTHROPIC_BASE_URL换成你要用的通道地址:
{ "env": { "ANTHROPIC_AUTH_TOKEN": "你的 API Key", "ANTHROPIC_BASE_URL": "https://qianfan.baidubce.com/anthropic/coding", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1, "API_TIMEOUT_MS": 600000, "ANTHROPIC_MODEL": "qianfan-code-latest", "ANTHROPIC_SMALL_FAST_MODEL": "qianfan-code-latest", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "qianfan-code-latest", "ANTHROPIC_DEFAULT_SONNET_MODEL": "qianfan-code-latest", "ANTHROPIC_DEFAULT_OPUS_MODEL": "qianfan-code-latest" }, "permissions": { "allow": [], "deny": [] } }如果你走的是 TaoToken 通道,把ANTHROPIC_BASE_URL换成https://taotoken.net/api,模型 ID 换成 TaoToken 文档里对应的名字,Key 换成在 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite 生成的那个。其余字段保持不变。
逐个字段解释一下,方便你排错:
ANTHROPIC_AUTH_TOKEN是认证令牌,Claude Code 会把它放进请求头。填错这里最常见的表现是 401。
ANTHROPIC_BASE_URL是请求的根地址。千帆的兼容端点是https://qianfan.baidubce.com/anthropic/coding,注意末尾的/anthropic/coding不能省,省了会 404。
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC设为 1,作用是关掉一些非必要的遥测请求,避免它们走到官方通道去。
API_TIMEOUT_MS是超时时间,单位毫秒,600000 就是 10 分钟。代码任务经常要等模型想很久,这个值别设太小。
后面五个ANTHROPIC_*_MODEL字段,分别对应主模型、快模型、以及 Haiku/Sonnet/Opus 三档的默认模型。在千帆这种只提供一个 Coding 模型的场景下,全部填同一个值最省事,避免 Claude Code 内部按档位切换时找不到模型。
配置写完后,还要跳过官方账号引导,否则启动时会卡在登录流程。直接在终端执行:
macOS / Linux:
echo '{"hasCompletedOnboarding": true}' > ~/.claude.jsonWindows(PowerShell):
echo '{"hasCompletedOnboarding": true}' > $env:USERPROFILE\.claude.json这一步是往.claude.json里写一个「已完成初始化」的标记,让 Claude Code 认为你已经走过引导,直接进主界面。
4. 验证请求与成功结果确认
配置改完别急着进项目,先用一条 curl 确认通道是通的。这一步能帮你把「配置问题」和「代码问题」分开。
用千帆通道的话,请求大致长这样:
curl -X POST "https://qianfan.baidubce.com/anthropic/coding/v1/messages" \ -H "Content-Type: application/json" \ -H "x-api-key: 你的 API Key" \ -H "anthropic-version: 2023-06-01" \ -d '{ "model": "qianfan-code-latest", "max_tokens": 64, "messages": [ {"role": "user", "content": "只回复两个字:通了"} ] }'如果走 TaoToken 通道,把 URL 换成https://taotoken.net/api/v1/messages,Key 换成 TaoToken 的,模型换成对应 ID 即可。
返回结果里如果能看到类似这样的结构,说明通道通了:
{ "id": "msg_xxx", "type": "message", "role": "assistant", "content": [ {"type": "text", "text": "通了"} ], "stop_reason": "end_turn" }重点看content数组里有没有文本、stop_reason是不是正常结束。如果返回 401,是 Key 的问题;返回 404,是 Base URL 路径的问题;返回 400 且提示 model 相关,是模型 ID 的问题。
curl 通了之后,进你的项目目录启动 Claude Code:
cd 你的项目目录 claude第一次启动会问你是否信任当前文件夹,选「Trust This Folder」,允许它访问目录里的文件。之后就能在终端里直接让它读代码、改文件、跑命令了。你可以先让它做个小任务,比如「读一下 package.json,告诉我项目用了哪些依赖」,看它能不能正常返回,确认整条链路在真实交互里也 OK。
5. 本篇常见报错排查对照
配置过程中最容易撞上的几个报错,我按真实提示对照着列一下,方便你快速定位。
401 Unauthorized / authentication_error
这是认证没过。九成是 Key 填错了字段。Claude Code 读的是ANTHROPIC_AUTH_TOKEN,不是ANTHROPIC_API_KEY。检查 settings.json 里这个字段的值有没有多余空格、有没有把 Key 复制漏字符。另外确认 Key 没有过期,千帆控制台里重新生成一个再试。
404 Not Found / local proxy failed
local proxy failed这类提示通常意味着请求根本没到目标端点。先检查ANTHROPIC_BASE_URL是否完整,千帆的地址末尾/anthropic/coding不能少。如果你用的是 TaoToken,确认地址是https://taotoken.net/api,不要多加或漏掉路径。还有一种情况是本地有旧的代理环境变量残留,检查一下HTTP_PROXY/HTTPS_PROXY有没有被设成奇怪的值,有的话清掉再试。
reading choices / 返回结构解析失败
这个报错说明请求发出去了,但返回的 JSON 结构和 Claude Code 预期的不一致。常见原因是模型 ID 填错,或者 Base URL 指向了一个不兼容 Anthropic 格式的端点。确认你用的通道是兼容 Anthropic Messages API 的,模型 ID 和控制台里列出的完全一致。如果五个ANTHROPIC_*_MODEL字段填了不同的值,而其中某个值不存在,也会在切换档位时触发这类错误,建议先全部填同一个可用模型。
OAuth / 卡在登录引导
启动后一直让你登录、或者提示 OAuth 相关错误,说明.claude.json里的引导标记没写进去。重新执行第 3 步里那条echo命令,确认文件路径是~/.claude.json(注意是用户目录下的文件,不是.claude目录里的)。Windows 下确认$env:USERPROFILE展开正确。
模型无响应 / 超时
请求发出去了但很久没返回,先看API_TIMEOUT_MS是不是设得太小。代码类任务模型思考时间长,建议保持 600000。如果一直超时,用第 4 步的 curl 单独测一下,排除是 Claude Code 本身的问题还是通道的问题。
排查顺序建议固定成:先 curl 测通道 → 再查 Key 字段 → 再查 Base URL 路径 → 最后查模型 ID。按这个顺序走,基本不会绕弯路。
6. 长期编码场景的通道选择与接入入口
把 Claude Code 接上千帆之后,日常写代码、改 bug、跑测试都能在终端里完成。如果你只是偶尔用用,千帆的 Coding Plan 够用;但如果你打算长期把 Claude Code 当主力编码助手,或者要跑 Agent 类的多步任务,通道的稳定性和模型切换的灵活性就变得重要了。
我自己的做法是保留一份 settings.json 模板,把 Base URL、Key、模型 ID 三个值单独拎出来,需要换通道时只改这三处,其余字段不动。这样在千帆和 TaoToken 之间切换只要十几秒,不用每次重读文档。
如果你想让 Claude Code 长期跑在更灵活的通道上,可以了解一下 TaoToken 的 Coding Plan,地址是 https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite ,它面向的就是这种持续编码和 Agent 场景。想先验证模型对话效果的话,模型对话入口在 https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite ,可以拿同一个 Key 先在网页里试几个 prompt,确认模型行为符合预期再写进配置。接入文档在 https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite ,里面列了各通道的 Base URL 和模型 ID 对照,配置前扫一眼能省不少试错。
最后提醒一句:不管用哪个通道,Key 都不要提交到 Git 仓库里。settings.json 在用户目录下,本身不在项目里,但如果你把配置复制进项目做版本管理,记得把 Key 换成环境变量引用,或者加进.gitignore。这一步做了,后面换机器、换通道都不会因为 Key 泄露而返工。