将Claude Code与本地模型配对使用
本文介绍了如何将Claude Code与本地推理后端(Ollama、LM Studio、llama.cpp)配对,以降低API成本并避免速率限制。详细说明了环境变量配置、模型选择建议以及常见问题的解决方法。
引言
代理式编码会话成本高昂。一次Claude Code会话——读取文件、编写代码、运行测试、迭代——消耗的令牌数可能是普通聊天对话的10到50倍。大规模使用时,成本会迅速累积。再加上可能中断长时间工作流的速率限制,以及对第三方API的依赖(价格变动、政策收紧、服务中断),本地推理的案例变得直截了当。
2026年的本地模型已经足够好。对于Claude Code日常处理的代码补全、重构、调试、代码库解释等任务,精心选择的量化本地模型可以覆盖绝大多数实际用例,且零令牌成本、无速率限制。本文将介绍三个推理后端(Ollama、LM Studio和llama.cpp),配置Claude Code连接到每个后端所需的环境变量和配置文件,一张值得运行的模型推荐表,以及实际会遇到的故障排除方案。
Claude Code如何连接任何本地模型
机制比大多数指南看起来更简单。Claude Code以Anthropic Messages API格式发送请求。默认情况下,这些请求发送到Anthropic的服务器。设置ANTHROPIC_BASE_URL可以将它们重定向到任何支持相同格式的服务器,现在Ollama、LM Studio和llama.cpp原生支持该格式。
根据官方Claude Code环境变量文档,与此设置相关的变量包括:
- ANTHROPIC_BASE_URL:将所有API调用从Anthropic的服务器重定向到您设置的URL。
- ANTHROPIC_API_KEY:请求头中发送的API密钥。本地服务器通常忽略身份验证,因此通常设置为占位符字符串,如"local"或"ollama"。
- ANTHROPIC_AUTH_TOKEN:替代的身份验证头。某些本地服务器会检查此字段而非API密钥。设置为相同的占位符。
- ANTHROPIC_DEFAULT_SONNET_MODEL、ANTHROPIC_DEFAULT_HAIKU_MODEL、ANTHROPIC_DEFAULT_OPUS_MODEL:Claude Code根据任务内部请求不同的模型层级。这三个变量将每个层级映射到您本地模型的名称。没有它们,Claude Code会向本地服务器发送请求(如claude-sonnet-4-20250514),而本地没有该模型,导致请求被拒绝。
2026年1月,Ollama增加了对Anthropic Messages API的原生支持,这是使此工作流无需翻译代理即可实用的技术变革。LM Studio在0.4.1版本中增加了原生/v1/messages端点。llama.cpp更早就有直接的Anthropic API支持。现在三者都支持Claude Code的原生协议。
后端1:Ollama
Ollama是正确的起点。它通过简单的命令行界面处理所有模型管理复杂性:下载权重、量化、GPU和CPU分配以及服务。一个命令安装,一个命令拉取模型,几个环境变量配置。安装后作为后台服务运行,无需手动启动服务器。
前提条件
- macOS、Linux或Windows(推荐WSL2)
- 至少16 GB RAM(推荐32 GB)
- GPU推理需要8+ GB VRAM,或仅CPU但足够RAM
- Ollama v0.14.0或更高版本(需要Anthropic Messages API支持)
安装Ollama
# macOS和Linux一键安装
curl -fsSL https://ollama.com/install.sh | sh
# 验证版本——必须0.14.0+才兼容Claude Code
ollama version
# 预期:ollama version is 0.14.x or higher
# Windows:从https://ollama.com下载安装程序安装后,Ollama自动在后台启动,监听端口11434。验证是否运行:
curl http://localhost:11434
# 预期响应:Ollama is running拉取编码模型
# GLM-4.7-Flash——推荐起点,强大的工具调用,128K上下文,适合8 GB VRAM,Apache 2.0许可证
ollama pull glm-4.7-flash:latest
# Qwen3-Coder——强大的代码生成和指令遵循,需要20+ GB VRAM
ollama pull qwen3-coder
# Devstral-Small——专为代理编码工作流设计,社区测试兼容Claude Code,24B,需要16+ GB VRAM
ollama pull devstral-small-2:24b
# 验证模型已下载
ollama list配置Claude Code使用Ollama
选项1:Shell导出(仅当前终端会话)
# 将Claude Code重定向到本地Ollama服务器
export ANTHROPIC_BASE_URL="http://localhost:11434"
export ANTHROPIC_API_KEY="ollama"
export ANTHROPIC_AUTH_TOKEN="ollama"
export ANTHROPIC_DEFAULT_SONNET_MODEL="glm-4.7-flash:latest"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="glm-4.7-flash:latest"
export ANTHROPIC_DEFAULT_OPUS_MODEL="glm-4.7-flash:latest"
# 启动Claude Code
claude选项2:~/.claude/settings.json(永久,适用于所有会话)
创建或编辑~/.claude/settings.json:
{
"env": {
"ANTHROPIC_BASE_URL": "http://localhost:11434",
"ANTHROPIC_API_KEY": "ollama",
"ANTHROPIC_AUTH_TOKEN": "ollama",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "glm-4.7-flash:latest",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "glm-4.7-flash:latest",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "glm-4.7-flash:latest"
}
}选项3:项目目录中的.env文件(按项目覆盖)
# .env在项目根目录
ANTHROPIC_BASE_URL=http://localhost:11434
ANTHROPIC_API_KEY=ollama
ANTHROPIC_AUTH_TOKEN=ollama
ANTHROPIC_DEFAULT_SONNET_MODEL=qwen3-coder
ANTHROPIC_DEFAULT_HAIKU_MODEL=qwen3-coder
ANTHROPIC_DEFAULT_OPUS_MODEL=qwen3-coder验证连接:
claude
# 在Claude Code中输入:> What model are you running?
# 应返回本地模型,且无Anthropic API调用
# 使用详细日志确认:
claude --verbose
# 查找指向localhost:11434的请求从头开始的完整工作序列:
curl -fsSL https://ollama.com/install.sh | sh
ollama pull glm-4.7-flash:latest
export ANTHROPIC_BASE_URL="http://localhost:11434"
export ANTHROPIC_API_KEY="ollama"
export ANTHROPIC_AUTH_TOKEN="ollama"
export ANTHROPIC_DEFAULT_SONNET_MODEL="glm-4.7-flash:latest"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="glm-4.7-flash:latest"
export ANTHROPIC_DEFAULT_OPUS_MODEL="glm-4.7-flash:latest"
claude后端2:LM Studio
如果您想要图形界面来浏览和管理模型,而不是完全在终端中操作,那么LM Studio是正确的选择。自0.4.1版本起,它包含原生Anthropic兼容的/v1/messages端点——正是Claude Code期望的路径——因此无需翻译层或代理。
前提条件
- macOS、Windows或Linux
- 推荐GPU至少6 GB VRAM(仅CPU也可以但较慢)
- 从lmstudio.ai下载或使用CLI安装程序
安装和配置LM Studio
# 在无GUI的服务器或VM上——CLI安装程序
curl -fsSL https://releases.lmstudio.ai/cli/install.sh | bash
# 或从https://lmstudio.ai下载桌面应用GUI设置步骤:
- 打开LM Studio,搜索编码模型(如"qwen coder"或"devstral")。
- 下载模型。LM Studio自动处理量化选择。
- 转到"本地服务器"选项卡(左侧边栏图标)。
- 设置上下文大小。建议从至少25,000个令牌开始,然后增加以获得更好结果。
- 单击"启动服务器"。
- 注意端口(默认1234)并精确复制模型名称。
配置Claude Code
export ANTHROPIC_BASE_URL="http://localhost:1234"
export ANTHROPIC_API_KEY="lm-studio"
export ANTHROPIC_AUTH_TOKEN="lm-studio"
export ANTHROPIC_DEFAULT_SONNET_MODEL="qwen2.5-coder-32b-instruct"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="qwen2.5-coder-32b-instruct"
export ANTHROPIC_DEFAULT_OPUS_MODEL="qwen2.5-coder-32b-instruct"或在~/.claude/settings.json中持久化:
{
"env": {
"ANTHROPIC_BASE_URL": "http://localhost:1234",
"ANTHROPIC_API_KEY": "lm-studio",
"ANTHROPIC_AUTH_TOKEN": "lm-studio",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "qwen2.5-coder-32b-instruct",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "qwen2.5-coder-32b-instruct",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "qwen2.5-coder-32b-instruct"
}
}运行步骤
- 从GUI启动LM Studio服务器(本地服务器选项卡 > 启动服务器)。
- 设置环境变量。
- 启动Claude Code。
后端3:llama.cpp
当您需要直接控制推理参数(量化类型、KV缓存配置、批大小、线程数)或在服务器上运行且需要最低开销时,llama.cpp是正确的选择。它原生支持Anthropic Messages API,无需代理或翻译层。
前提条件
- GGUF格式的模型文件(从Hugging Face下载,搜索任何模型的"GGUF"版本)
- 支持CUDA的GPU用于GPU推理,或仅CPU(较慢)
- CMake和C++编译器用于源码构建(在Linux/CUDA上,推荐源码)
安装llama.cpp
# macOS——Homebrew最简单
brew install llama.cpp
# Linux with CUDA——从源码构建以获得最佳GPU性能
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release
# 二进制文件在./build/bin/
# Linux CPU-only构建
cmake -B build
cmake --build build --config Release
# Windows——预构建二进制文件:
# https://github.com/ggml-org/llama.cpp/releases
# 下载匹配硬件的CUDA或CPU变体下载GGUF模型
# 安装Hugging Face CLI
pip install huggingface-hub
# 下载Q4_K_XL量化的GLM-4.7-Flash(约4.5 GB)
huggingface-cli download THUDM/glm-4-9b-gguf glm-4-9b-Q4_K_XL.gguf --local-dir ./models(后续配置步骤因文章截断未完整显示,但核心思想与其他后端类似。)
结论
将Claude Code与本地模型配对使用,可以显著降低成本并消除对第三方API的依赖。通过本文介绍的三个后端,开发者可以根据自己的硬件和偏好选择最合适的方案,并通过简单的环境变量配置实现无缝集成。
*(注:本文基于KDnuggets文章,内容有所删减和重组。)*