一、注册与获取API Key

Claude 是由 Anthropic 公司开发的顶级AI大模型,在推理、编程、长文分析和创意写作方面表现卓越。它的最大特色是20万tokens超长上下文——一次性能处理《三体》三部曲那么大的文本量。API通过官方SDK调用,格式与OpenAI不同。

步骤1:注册账号

访问 https://console.anthropic.com/,点击右上角「Sign Up」。支持Google账号或邮箱注册。注册后系统会赠送$5美金赠金,无需绑定信用卡即可使用。

💡 提示:Anthropic 的赠金($5)够你测试几百次API调用。如果想继续使用,需要绑定信用卡转为付费账号。

步骤2:创建API Key

用AI写小程序代码正在成为开发者的标配。Claude和ChatGPT谁更适合小程序开发?本文实测Claude写了一个完整的小程序功能,并跟ChatGPT做了对比。

⚠️ 非常重要:API Key 以 sk-ant- 开头,只会在创建时显示一次。务必立即复制保存到安全的地方(比如密码管理器或.env文件)。如果不小心关闭了,只能删除重新创建。

步骤3:查看赠金余额

在控制台「Billing」页面可以查看赠金余额和使用记录。$5赠金大约可以调用数千次(取决于模型和tokens消耗)。注意:Claude API 没有免费的无限额度,赠金用完后需要自行充值。

⚠️ 注意:Claude 的 API 使用自己的 SDK(anthropic Python 包),不兼容 OpenAI 的 SDK 格式。不能像调用 DeepSeek 那样直接用 openai 库改 base_url 来调用。下面会详细介绍正确的调用方式。

二、用curl测试(最快验证方式)

不管你是用什么语言开发,先用curl跑通一遍,确认API Key有效、网络通畅。注意Claude的请求格式和OpenAI不同——使用的是 anthropic 风格的消息结构。

bash
curl https://api.anthropic.com/v1/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: *** \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-sonnet-4",
    "max_tokens": 1024,
    "messages": [
      {"role": "user", "content": "用一句话解释什么是API"}
    ]
  }'

如果返回类似下面的结果,说明调通了:

json
{
  "id": "msg_01ABCDEF123456",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "API(应用程序编程接口)就像餐厅里的菜单——它定义了你可以点什么(请求)以及会得到什么(响应),让不同的软件系统能够相互通信和协作。"
    }
  ],
  "model": "claude-sonnet-4",
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 19,
    "output_tokens": 63
  }
}
⚠️ 注意:Claude 的 curl 请求有三个关键点:(1) 认证用 x-api-key 头而不是 Bearer;(2) 必须加上 anthropic-version 头指定API版本;(3) 响应格式中 content 是一个数组,而不是OpenAI那样的字符串。如果报错,先检查这三点。

三、用Python调用(官方SDK)

Claude 使用 Anthropic 官方提供的 Python SDK,包名为 anthropic不是 OpenAI 的 openai 包。消息格式也完全不同。

安装依赖

bash
pip install anthropic

基础对话

python
from anthropic import Anthropic

# 初始化客户端
client = Anthropic(
    api_key="sk-ant-你的API_KEY"
)

# 发送对话请求
response = client.messages.create(
    model="claude-sonnet-4",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "用Python写一个快速排序算法"}
    ]
)

print(response.content[0].text)
💡 关键区别:Claude SDK 中 response.content 是一个列表(支持多模态返回),需要用 response.content[0].text 获取文本。而 OpenAI 返回的是 response.choices[0].message.content

流式输出(打字机效果)

流式输出可以让AI一边生成一边显示,用户体验更好。Claude 使用 stream=True 参数:

python
from anthropic import Anthropic

client = Anthropic(api_key="sk-ant-你的API_KEY")

with client.messages.stream(
    model="claude-sonnet-4",
    max_tokens=1024,
    messages=[{"role": "user", "content": "讲一个程序员笑话"}]
) as stream:
    for text in stream.text_stream:
        print(text, end="")

使用System Prompt(系统提示词)

Claude 的 System Prompt 是独立参数,不在 messages 数组中:

python
from anthropic import Anthropic

client = Anthropic(api_key="sk-ant-你的API_KEY")

response = client.messages.create(
    model="claude-sonnet-4",
    max_tokens=1024,
    system="你是一个专业的编程助手,回答简洁准确,必要时给出代码示例。",
    messages=[
        {"role": "user", "content": "如何用Python读取一个JSON文件?"}
    ]
)

print(response.content[0].text)

四、用Node.js调用(官方SDK)

安装依赖

bash
npm install @anthropic-ai/sdk

基础对话

javascript
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: 'sk-ant-你的API_KEY'
});

async function main() {
  const response = await client.messages.create({
    model: 'claude-sonnet-4',
    max_tokens: 1024,
    messages: [
      { role: 'user', content: 'Node.js如何读取文件?' }
    ]
  });
  console.log(response.content[0].text);
}
main();

流式输出(Node.js)

javascript
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: 'sk-ant-你的API_KEY'
});

async function main() {
  const stream = await client.messages.create({
    model: 'claude-sonnet-4',
    max_tokens: 1024,
    messages: [{ role: 'user', content: '写一首关于AI的诗' }],
    stream: true
  });

  for await (const event of stream) {
    if (event.type === 'content_block_delta' && event.delta.type === 'text') {
      process.stdout.write(event.delta.text);
    }
  }
}
main();

五、常用功能代码示例

1. 超长文档分析(20万字上下文)

Claude 最大的核心竞争力:一次处理超长文本。比如分析一整本书:

python
def analyze_long_document(file_path, question):
    """读取超长文档并用Claude分析"""
    with open(file_path, 'r', encoding='utf-8') as f:
        content = f.read()

    response = client.messages.create(
        model="claude-opus-4",    # opus 和 sonnet 都支持20万上下文
        max_tokens=4096,
        messages=[{
            "role": "user",
            "content": f"以下是一份文档内容:\n\n{content}\n\n"
                       f"请回答以下问题:\n{question}"
        }]
    )
    return response.content[0].text

2. 智能客服自动回复

python
def customer_service(user_message, history=[]):
    """智能客服,带上下文记忆"""
    messages = []
    # 添加上下文历史(Claude不需要system message,直接在对话中说明)
    for h in history[-10:]:  # 只保留最近10轮
        messages.append(h)
    messages.append({"role": "user", "content": user_message})

    response = client.messages.create(
        model="claude-sonnet-4",
        max_tokens=512,
        system="你是一个专业的电商客服,回答简洁有礼貌。如果不知道答案,引导用户联系人工客服。",
        messages=messages
    )
    return response.content[0].text

3. 批量翻译(利用20万上下文一次处理大量文本)

python
def batch_translate(texts, target_lang="英语"):
    """批量翻译文本(一次处理上百条)"""
    batch_text = "\n---\n".join(texts)
    response = client.messages.create(
        model="claude-sonnet-4",
        max_tokens=4096,
        messages=[{
            "role": "user",
            "content": f"将以下文本逐条翻译成{target_lang},保持原格式用---分隔:\n\n{batch_text}"
        }]
    )
    return response.content[0].text.split("\n---\n")

4. 代码审查

python
def code_review(code, language="Python"):
    """让Claude审查代码,找出Bug并优化"""
    response = client.messages.create(
        model="claude-sonnet-4",
        max_tokens=2048,
        messages=[{
            "role": "user",
            "content": f"请审查以下{language}代码,找出:\n"
                       f"1. Bug和潜在错误\n"
                       f"2. 性能问题\n"
                       f"3. 安全性问题\n"
                       f"4. 可读性改进建议\n\n"
                       f"```{language}\n{code}\n```"
        }]
    )
    return response.content[0].text

六、常见错误及解决

错误代码 原因 解决方案
401 Authentication Error API Key无效或未正确传递 检查Key是否正确(以 sk-ant- 开头),确认使用了 x-api-key 头而非 Bearer
400 Invalid Request 请求格式错误 检查 messages 结构、model 名称是否正确,是否缺少必要字段
400 max_tokens too large max_tokens 超出限制 Claude最大输出约4096-8192 tokens,请调小
429 Rate Limit 请求频率过高 降低请求频率,增加延迟,使用指数退避重试
529 Overloaded 服务端负载过高 等待几秒后重试,这是Anthropic特有的状态码
Request too large 输入超过20万tokens上限 虽然Claude支持20万上下文,但仍需控制输入总量不超过限制
anthropic-version missing 请求头缺少API版本号 添加 anthropic-version: 2023-06-01
💡 最佳实践:在生产环境中,建议:(1) 使用环境变量存储API Key(不要硬编码); (2) 添加重试机制,尤其处理 529 和 429 错误; (3) Claude的API版本头(anthropic-version)需要随着SDK更新而更新,建议使用最新版本。

七、价格与赠金

项目 价格
注册赠金 $5 美金(无需绑卡,注册即送)
claude-opus-4 输入 $15 / 百万 tokens
claude-opus-4 输出 $75 / 百万 tokens
claude-sonnet-4 输入 $3 / 百万 tokens
claude-sonnet-4 输出 $15 / 百万 tokens
估算:一篇2000字文章 (sonnet) 约 $0.01(约7分钱人民币)
估算:100万次短对话 (sonnet) 约 $150
最大上下文 200K tokens(20万字,所有模型均支持)

对比:Claude是市面上最贵的模型之一,但也是能力最强的之一。如果你追求最高质量和超长上下文,Claude是首选。对于日常简单任务,建议使用 claude-sonnet-4(性价比更高),复杂推理再用 claude-opus-4

💡 省钱技巧:Claude对中文支持非常好,输出质量稳定。如果要处理大量文本(比如整本书分析),可以用 claude-sonnet-4 搭配20万上下文,一次到位,反而比多次短对话更划算。

八、实际项目应用场景 & 代接服务

API调通了,然后呢?以下是我们用Claude API做过并验证过的落地场景:

场景一:AI长文分析助手

上传一本书、一份合同、一份论文PDF,让Claude自动总结、分析、抽取关键信息。利用20万上下文优势,不用分段处理。

  • 接入方式:前端上传文件 → 后端读取文本 → Claude API分析
  • 成本估算:分析一本10万字的书 ≈ $0.5-1
  • 我们能帮做:¥800 整套部署(PDF解析+Claude分析+前端展示)

场景二:AI编程助手

Claude在编程能力上顶尖水平,可以做代码审查、自动修复Bug、代码生成。对接GitHub Webhook后每次提交自动审查。

场景三:AI合同/法律文档生成

Claude对长文本和严谨格式把控极好,适合生成合同、法律文书、标书等正式文件。

场景四:智能客服(需高质量回复)

对回复质量要求高的场景(如金融、医疗、法律咨询),Claude的回答质量非常出色,虽然贵但值得。

场景五:跨平台内容创作

利用20万上下文,Claude可以一次阅读大量参考资料后,生成文章、社交媒体文案、营销内容等。质量远超其他模型。