
想要不使用Anthropic API也能使用ClaudeCode?Claude Code其实支持通过ANTHROPIC_BASE_URL这个环境变量切换后端服务。也就是说你完全可以不用Anthropic的官方API,所有请求都走本地跑的开源大模型,既省了API开销,代码数据也不会离开自己的机器,适合处理敏感项目。
原理很简单:用llama.cpp在本地8001端口起一个模型服务,然后把Claude Code的API地址指向这个本地服务,它会完全以为自己在跟Anthropic的官方服务器通信,不用改其他代码。
Unsloth团队已经把整个流程踩通了,下面是实测可用的步骤,以Qwen3.5为例:
先对照自己的显存选模型,不用贪大,够用就行:
系统支持Windows、Mac、Linux,NVIDIA显卡体验最好,Mac用Metal加速也能跑。
先装依赖,然后编译开启对应硬件加速,复制粘贴就行:
apt-get update
apt-get install pciutils build-essential cmake curl libcurl4-openssl-dev git-all -y
git clone https://github.com/ggml-org/llama.cpp根据你的硬件选编译命令:
cmake llama.cpp -B llama.cpp/build \
-DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON cmake llama.cpp -B llama.cpp/build \
-DBUILD_SHARED_LIBS=OFF -DGGML_METAL=ON cmake llama.cpp -B llama.cpp/build \
-DBUILD_SHARED_LIBS=OFF最后统一执行编译和安装:
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-cli llama-mtmd-cli llama-server llama-gguf-split
cp llama.cpp/build/bin/llama-* llama.cpp推荐用Unsloth提供的UD-Q4_K_XL量化版本,体积和精度平衡得最好,35B版本24G显存刚好放下:
hf download unsloth/Qwen3.5-35B-A3B-GGUF \
--local-dir unsloth/Qwen3.5-35B-A3B-GGUF \
--include "*UD-Q4_K_XL*"显存不够的话,把UD-Q4_K_XL改成Q2_K,或者直接下载27B/9B的更小变体就行。
Qwen3.5推荐的推理参数直接用下面的就行,不用瞎调:
./llama.cpp/llama-server \
--model unsloth/Qwen3.5-35B-A3B-GGUF/Qwen3.5-35B-A3B-UD-Q4_K_XL.gguf \
--alias "unsloth/Qwen3.5-35B-A3B" \
--temp 0.6 \
--top-p 0.95 \
--top-k 20 \
--min-p 0.00 \
--port 8001 \
--kv-unified \
--cache-type-k q8_0 --cache-type-v q8_0 \
--flash-attn on --fit on \
--ctx-size 131072如果不需要模型输出思考过程,加个参数--chat-template-kwargs "{\"enable_thinking\": false}",编码速度能提升不少。
启动成功后浏览器访问http://localhost:8001能看到llama.cpp的交互界面,说明服务没问题。
终端执行这两句就行:
export ANTHROPIC_BASE_URL="http://localhost:8001"
export ANTHROPIC_API_KEY="sk-no-key-required"要永久生效就把这两行加到~/.bashrc或者~/.zshrc里,下次开机不用再输。
$env:ANTHROPIC_BASE_URL="http://localhost:8001"
$env:ANTHROPIC_API_KEY="sk-no-key-required"永久生效执行setx ANTHROPIC_BASE_URL "http://localhost:8001",或者写到PowerShell的$PROFILE文件里。
跳过登录提示:
如果首次运行提示登录,在~/.claude.json里加两行配置就行:
"hasCompletedOnboarding": true,
"primaryApiKey": "sk-dummy-key"用VS Code插件的话,直接在设置里开「Disable Login Prompt」就可以。
Claude Code新版本默认加了个归属头,会导致KV缓存失效,推理速度直接砍半。必须在~/.claude/settings.json的env字段里加这个配置,直接设环境变量没用:
{
"promptSuggestionEnabled": false,
"env": {
"CLAUDE_CODE_ENABLE_TELEMETRY": "0",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1",
"CLAUDE_CODE_ATTRIBUTION_HEADER" : "0"
},
"plansDirectory" : "./plans",
"effortLevel" : "high"
}改完重启Claude Code,速度基本能恢复到正常水平。
--ctx-size参数,或者换更小的量化版本配置完进项目目录,执行claude --model unsloth/Qwen3.5-35B-A3B就能启动。要让它自动执行命令加--dangerously-skip-permissions参数,风险自己承担。也可以装VS Code或者Cursor的Claude Code插件,直接在编辑器里用。
这种方案最适合处理公司内部的敏感代码库,不用把代码发到第三方API,安全还省钱。当然也有局限:Claude Code的部分工具功能可能用不了,不同模型的编码能力差异也不小,用之前最好先拿自己常用的场景测一下。
官方教程:https://unsloth.ai/docs/basics/claude-code