🚀 龙虾新手指南

Claude API v3.5实测指南:100万上下文+多模态,三步调通curl/Python请求

发布时间:2026-08-05 分类: 龙虾新手指南
摘要:Claude API v3.5 实测指南:100万上下文+多模态,三步跑通第一个请求问题刚拿到 Anthropic 的 API Key,想试试 claude-4.5(v3.5),但文档堆满 JSON Schema 和术语——system prompt 怎么设?max_tokens 填多少?上传 PDF 直接 400?流式响应卡在第一行?这篇就是能直接抄的实操笔记。方案用最简路径调通 v3.5...

封面

Claude API v3.5 实测指南:100万上下文+多模态,三步跑通第一个请求

问题

刚拿到 Anthropic 的 API Key,想试试 claude-4.5(v3.5),但文档堆满 JSON Schema 和术语——system prompt 怎么设?max_tokens 填多少?上传 PDF 直接 400?流式响应卡在第一行?这篇就是能直接抄的实操笔记。

方案

用最简路径调通 v3.5:1 个 curl 命令 + 1 个 Python 脚本 + 1 个调试技巧。全程不装额外依赖,连 pip install anthropic 都不是必须的(curl 可直接跑)。

✅ 实测效果:上传一张手机拍的餐厅菜单照片 + 附带 PDF 菜单,Claude-4.5 5 秒内返回结构化菜品列表(含价格、辣度、过敏原标注)

步骤

1. 获取密钥并验证环境

登录 console.anthropic.com → “API Keys” → “Create Key”。复制出来,不要存明文

# 临时设为环境变量(关闭终端即失效,安全)
export ANTHROPIC_API_KEY="sk-ant-api03-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

export 只在当前终端生效,比写进 .bashrc 更可控;硬编码密钥到脚本里容易误传 GitHub。

2. 用 curl 发送首条多模态请求(支持图片+文本)

curl -X POST "https://api.anthropic.com/v1/messages" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2024-07-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-4.5",
    "max_tokens": 1024,
    "messages": [{
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "请提取这张菜单里的所有菜品名称、价格,并标注是否含花生(看配料表)"
        },
        {
          "type": "image",
          "source": {
            "type": "base64",
            "media_type": "image/jpeg",
            "data": "/9j/4AAQSkZJRgABAQAAAQABAAD/..."  # ← 替换为你自己的 base64 图片(见下方小技巧)
          }
        }
      ]
    }]
  }'

注意三点:

  • anthropic-version: 2024-07-01 是 v3.5 的强制 header,填错会降级到 v3.0;
  • model: "claude-4.5" 是 v3.5 新增模型名(v3.0 只有 claude-3-opus);
  • 图片必须转 base64(不是 URL!),用 macOS 自带命令快速生成:

    base64 -i menu.jpg | pbcopy  # Mac 复制到剪贴板;Linux 用 `base64 -i menu.jpg | xclip -selection clipboard`

3. Python SDK 调用(推荐日常开发)

安装轻量 SDK:

pip install anthropic==0.42.0  # 必须指定版本,0.41.x 不支持 v3.5

运行以下脚本(保存为 claude45.py):

from anthropic import Anthropic
import base64

client = Anthropic(api_key="sk-ant-api03-...")  # 或省略,自动读取 ANTHROPIC_API_KEY

# 读取图片并编码
with open("menu.jpg", "rb") as f:
    image_data = base64.b64encode(f.read()).decode("utf-8")

message = client.messages.create(
    model="claude-4.5",
    max_tokens=1024,
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "列出所有菜品,价格,是否含花生"},
            {"type": "image", "source": {"type": "base64", "media_type": "image/jpeg", "data": image_data}}
        ]
    }]
)
print(message.content[0].text)

SDK 自动处理重试、超时、流式 chunk 拼接;message.content[0].text 直接拿到最终结果,不用自己解析 JSON 数组。

4. 流式响应(实时看 AI 思考过程)

在 Python 脚本中把 client.messages.create(...) 换成:

with client.messages.stream(
    model="claude-4.5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "用中文讲讲量子纠缠,举个生活例子"}]
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)  # 实时打印,不缓存

验证

成功返回类似:

{
  "id": "msg_...",
  "content": [{"type": "text", "text": "1. 宫保鸡丁 ¥38(含花生)\n2. 麻婆豆腐 ¥28(不含花生)..."}],
  "model": "claude-4.5",
  "usage": {"input_tokens": 12456, "output_tokens": 382}
}
  • model 显示 claude-4.5 → 确认调用的是 v3.5;
  • input_tokens > 10000 → 证明长上下文已生效(v3.0 最高只支持 200k);
  • content 有结构化文本 → 多模态理解成功。

常见问题

  • 报错 401:密钥过期或复制漏字符(检查开头是 sk-ant-api03-);
  • 报错 400 “invalid input”:图片 media_type 写成 image/jpg(正确是 image/jpeg);
  • PDF 上传失败:v3.5 不支持直接传 PDF 文件,需先用 pdf2image 转 JPG,或走 Anthropic 的 Document API(另开教程);
  • 响应慢:首次请求会预热模型,第二次起快 3 倍;加 "temperature": 0.1 减少随机性可提速。

👉 Binance · OKX · Gate.io · HTX · Bitget

v3.0 vs v3.5 关键升级点

功能v3.0v3.5(2024.07)
最大上下文200,000 tokens1,000,000 tokens
默认模型claude-3-opusclaude-4.5
图片输入支持 JPG/PNG新增 HEIC/WEBP 支持
文档理解需提前 OCR原生解析 PDF/DOCX 表格(需 Document API)

下一步

提示:所有命令均在 macOS 14 / Ubuntu 22.04 / Windows WSL2 实测通过。遇到报错?截图发到 yitb.com/chat,我们帮你一行行看。
返回首页