摘要
第一次调用 Claude API,最容易卡住的不是代码,而是"服务连不上"和"base_url 该填什么"。本文用最短路径带你跑通第一个请求:从拿 Key、装 SDK,到 Python 与 Node.js 双语言示例,再到流式输出和常见报错排查。全程基于国内可达的 jiekou.vip 稳定接入,按量计费,复制粘贴即可运行。读完你就能把 Claude 接口接进自己的项目里。
一、准备工作:拿 Key 与选协议
调用 Claude API 前你需要两样东西:一个 API Key,一个可达的 base_url。国内直连 Anthropic 官方接口并不稳定,这里用 jiekou.vip 作为接入入口,在其控制台注册后即可拿到 Key。
接下来选协议。Claude 有两种接入方式:
- Anthropic 原生协议:base_url 按平台文档填写对应的原生协议地址,配合官方
anthropicSDK 使用,功能最全。 - OpenAI 兼容协议:base_url 按平台文档填写对应的兼容协议地址,如果你的老项目本来用 OpenAI SDK,改个地址就能切过来。
本文以 Anthropic 原生协议为主。注意 base_url 的接口域名和控制台域名不是同一个,按文档给出的地址填。
二、Python 示例:跑通第一个请求
先装官方 SDK:
bash
pip install anthropic
然后写第一个调用。把 base_url 指向文档给出的接口地址,Key 换成你自己的:
python
from anthropic import Anthropic
client = Anthropic(
api_key="你的_API_KEY",
base_url="按平台文档填写的接口地址",
)
resp = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
system="你是一个简洁专业的中文助手。",
messages=[
{"role": "user", "content": "用三句话解释什么是 API。"}
],
)
print(resp.content[0].text)
运行成功后,你会看到 Claude 返回的三句话。这里 system 用来设定人设,messages 装对话内容,max_tokens 限制输出长度。
三、Node.js 示例:等价实现
Node 端同样有官方 SDK:
bash
npm install @anthropic-ai/sdk
对应代码如下:
javascript
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
apiKey: "你的_API_KEY",
baseURL: "按平台文档填写的接口地址",
});
const resp = await client.messages.create({
model: "claude-sonnet-4-6",
max_tokens: 1024,
system: "你是一个简洁专业的中文助手。",
messages: [
{ role: "user", content: "用三句话解释什么是 API。" },
],
});
console.log(resp.content[0].text);
注意 Node SDK 里参数是 baseURL(大写 URL),Python 里是 base_url,别写混了。两端逻辑完全一致,选你熟悉的语言即可。
四、进阶一步:流式输出
想让回复像打字机一样逐字冒出来,开启流式即可。Python 版:
python
with client.messages.stream(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[{"role": "user", "content": "写一首关于秋天的短诗。"}],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
Node 版:
javascript
const stream = await client.messages.stream({
model: "claude-sonnet-4-6",
max_tokens: 1024,
messages: [{ role: "user", content: "写一首关于秋天的短诗。" }],
});
for await (const event of stream) {
if (event.type === "content_block_delta") {
process.stdout.write(event.delta.text);
}
}
流式适合聊天界面和长文本生成,能显著改善用户等待体验。
五、多轮对话怎么写
Claude API 本身无状态,多轮对话靠你把历史一起传回去。每轮把上一次的用户消息和模型回复都追加进 messages 数组:
python
messages = [
{"role": "user", "content": "我叫小明。"},
{"role": "assistant", "content": "你好小明!"},
{"role": "user", "content": "我叫什么名字?"},
]
只要历史带着,模型就能记住上下文。要控制长度和成本时,可以截断早期消息或做摘要。
六、常见报错排查
第一次接该 API 最常见的几个坑:
- 404 Not Found:先检查 base_url 尾部是否多写或少写了
/v1。不同 SDK 的路径拼接逻辑不同------有的会自动补/v1,有的不会。用官方 anthropic SDK 配原生协议地址通常无需手动加/v1,但换成裸 HTTP 请求时就要留意。 - 401 Unauthorized:Key 填错或没生效,回 jiekou.vip 控制台核对。
- 模型名报错:确认模型名拼写正确,如 claude-sonnet-4-6、claude-opus-4-8、claude-haiku-4-5。
小结
调用 Claude API 的门槛其实很低:装 SDK、填 base_url 和 Key、发一条消息,三步就能跑通。国内接入的关键在于用 jiekou.vip 这样的平台解决稳定性与结算问题,把 base_url 按文档指向对应接口地址即可零障碍上手。把本文的 Python 与 Node.js 模板存好,下次起新项目直接复用,几分钟就能让 Claude 接口跑起来。