Claude Code是由Anthropic公司推出的一款智能编程工具,基于Claude Sonnet模型开发。这款工具最大的亮点是能够通过自然语言指令直接在终端操作,无需复杂配置,就能完成代码编辑、Bug修复、代码搜索等任务。它支持包括Java、Python、Golang等在内的多种编程语言,并且可以直接继承到VSCode、Cursor等开发环境中,让开发者体验更流畅。本文以PAI-Model Gallery部署的Qwen3-Coder模型为例,为您介绍如何将PAI部署的模型集成到您的Claude Code中使用。
安装Claude Code
安装Node.js,确保 Node.js 版本 ≥ 18.0(如已安装可略过)
Ubuntu / Debian
# Ubuntu / Debian curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo bash - sudo apt-get install -y nodejsMacOS
# MacOS sudo xcode-select --install /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" brew install node安装Claude Code
npm install -g @anthropic-ai/claude-code在Model Gallery中部署模型并获取调用信息
部署Qwen3-Coder模型
本教程以部署Qwen3-Coder-30B-A3B-Instruct-FP8模型为例。在Model Gallery的模型广场中搜索模型,点击部署按钮。

在部署表单中,推理引擎选择vLLM。

将运行命令中的vllm serve改为python3 -m vllm.entrypoints.anthropic.api_server --model

再将运行命令中的--served-model-name Qwen3-Coder-30B-A3B-Instruct-FP8中的模型改为小写,如--served-model-name qwen3-coder
最终修改好的运行命令为:
gpu_count=$(nvidia-smi --query-gpu=count --format=csv,noheader | wc -l); python3 -m vllm.entrypoints.anthropic.api_server --model /model/Qwen3-Coder-30B-A3B-Instruct-FP8 --host 0.0.0.0 --port 8000 --root-path '/' --trust-remote-code --gpu-memory-utilization 0.95 --tensor-parallel-size $gpu_count --served-model-name qwen3-coder --enable-auto-tool-choice --tool-call-parser hermes在表单最下部的服务配置中,点击JSON编辑按钮,修改JSON中的镜像为pai-quickstart:vllm-v0.10.1-anthropic


之后提交部署任务,约几分钟后,模型部署完成。
获取模型调用信息
在Model Gallery的任务管理-部署任务详情页中,点击“查看调用信息”,可获取模型服务的公网调用地址和Token。


配置并使用Claude Code
配置环境变量
在您的电脑上,将获取的调用信息导入到环境变量:
<EAS_URL> 替换为您的服务公网调用地址;
<EAS_TOKEN> 替换为您的服务调用Token;
<MODEL_NAME> 替换为您部署时填入的model name(本例中为qwen3-coder)
export ANTHROPIC_BASE_URL=<EAS_URL>
export ANTHROPIC_AUTH_TOKEN=<EAS_TOKEN>
export ANTHROPIC_MODEL=<MODEL_NAME>启动Claude Code
在导入环境变量后,启动Claude Code:
claude此时,您就可以使用集成了您部署的Qwen3-Coder模型服务的Claude Code了。

附:使用Anthropic API推理
您也可以直接使用Anthropic API进行推理,代码如下:
from anthropic import Anthropic
import httpx
# 设置EAS Headers
headers = {
"Authorization": "<EAS_TOKEN>",
"Content-Type": "application/json"
}
# 创建 Anthropic 客户端实例,使用EAS自定义 base_url
client = Anthropic(
api_key="<EAS_TOKEN>",
base_url="<EAS_URL>"
)
# 发送请求
message = client.messages.create(
model="qwen3-coder", # 添加模型名称
max_tokens=2048,
temperature=0.7,
system="You are a helpful assistant.",
stream=True, # 启用流式处理
messages=[
{"role": "user", "content": "hello"}
],
extra_headers=headers # 传递自定义 headers
)
# 处理流式响应
for chunk in message:
if chunk.type == "content_block_delta":
print(chunk.delta.text, end="", flush=True)
elif chunk.type == "message_stop":
print() # 换行
break