📌 新手提示:本文结尾提供了一键部署脚本(Windows / macOS / Linux 通用),会自动完成 Python 环境、SDK 安装与 API Key 配置,不想手动逐条敲命令的同学可以直接拉到文末运行。
前言
你大概已经听说过 Claude 这个名字——它是在编程、写作、长文本分析上口碑最好的大模型之一,来自 Anthropic 公司。
但你可能不知道的是:Claude 不只可以在网页上聊天,它还开放了 API(Application Programming Interface,应用程序编程接口)——简单说,就是一个"程序调用通道":你可以写几行代码,让 Claude 变成你自己软件里的"大脑",自动完成总结文档、写代码、翻译、客服问答这些事。
这篇文章面向完全没有编程经验的零基础读者:只要求你有一台电脑、能复制粘贴命令。我会带你完成以下四件事:
- 拿到一把 API Key(钥匙)
- 装好 Python 和 Anthropic 官方 SDK(软件开发工具包,可以理解为"官方写好的调用插件")
- 写出并运行你人生中第一段 AI 调用代码
- 学会按需调整参数、看懂报错
官方文档地址:海外用户可直连 https://platform.claude.com/docs;国内用户访问需要科学上网,也可以参照本文第八节用国内可直连的中转方式接入。
好,我们现在开始。
一、准备工作(三样东西)
1. 一台装了 Python 的电脑
文章用 Python 3(版本 ≥ 3.8 即可)写调用代码。怎么确认装没装?打开终端(macOS 叫"终端",Linux 由发行版决定,Windows 建议用 WSL,即"Windows 自带的 Linux 子系统"),输入:
python3 --version
看到 Python 3.x.x 就说明有了。如果没有,去 https://www.python.org/downloads/ 下载安装,Windows 用户安装时记得勾选"Add Python to PATH"。
2. 一个项目目录
我们建一个干净的目录来放本教程的代码:
mkdir claude-quickstart && cd claude-quickstart
3. 一把 API Key(钥匙)
去 Claude Console 注册账号:https://platform.claude.com,然后打开 API keys 页面:https://platform.claude.com/settings/keys,点 “Create Key”,复制出来(形如 sk-ant-... 的一长串)。
⚠️ 注意:官方渠道需要海外信用卡才能充值,而且 api.anthropic.com 国内网络不可直连。没有海外信用卡的同学,跳到第八节,用国内可直连的 API 中转站即可,流程和本文完全一致,只是换个地址和钥匙。
二、安装 Anthropic 官方 SDK
打开终端,先创建好 demo 目录,然后安装 SDK:
mkdir claude-quickstart && cd claude-quickstart
python3 -m venv .venv && source .venv/bin/activate
pip install anthropic
三行命令各有作用:
python3 -m venv .venv:创建一个独立的 Python 环境(叫"虚拟环境")。为什么需要?因为不同项目可能要用不同版本的包,隔离起来互不打架。.venv就是装在这个目录里的虚拟环境,不会污染系统。source .venv/bin/activate:进入这个虚拟环境。此后你安装的一切包都只在这个环境里。pip install anthropic:安装 Anthropic 写的官方 Python 包(pip 是 Python 的包管理器,负责下载安装第三方库)。
国内网络 pip 可能很慢或失败,可以临时加镜像安装:
pip install anthropic -i https://pypi.tuna.tsinghua.edu.cn/simple(清华镜像,速度快)。脚本里已经内置了自动回退。
三、跑通第一个调用
在同目录建一个文件 quickstart.py,把下面的内容整段复制进去(专业做法是粘贴,新手不要手敲——容易敲错):
import anthropic
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-opus-5",
max_tokens=1000,
messages=[
{
"role": "user",
"content": "用一句话介绍你自己",
}
],
)
for block in message.content:
if block.type == "text":
print(block.text)
然后在终端运行:
python quickstart.py
几秒钟后,你会看到 Claude 的回答打印在屏幕上。🎉 这就是你调用 AI 的"第一声啼哭"。
四、代码逐行拆解(看懂你在干什么)
对照上面代码,逐行看:
| 代码 | 作用 |
|---|---|
import anthropic | 引入 SDK |
client = anthropic.Anthropic() | 创建客户端。它会自动读取环境变量 ANTHROPIC_API_KEY(环境变量 = 存在操作系统里、程序能读取的配置值,简单理解就是"存钥匙的口袋") |
client.messages.create(...) | 发送一次对话请求(messages 接口是 Claude API 的核心端点:给它一段对话记录,它回一段回复) |
model="claude-opus-5" | 选模型。opus 是 Claude 家族的"最强旗舰",还有性价比更高的 claude-sonnet-5(均衡)和更快的 claude-haiku-4-5(轻量快车) |
max_tokens=1000 | 允许模型输出的最大长度,单位是 token(token 是模型处理文本的最小单位,1 个汉字的 token 大约 1~2 个。这个参数必填,用来防止模型失控写个没完) |
messages=[...] | 对话历史。每条有 role(角色)和 content(内容)。只有 user(用户)时就是单轮提问;要连续对话就把历史记录按顺序全放进来,AI 才知道上下文 |
message.content | 响应里的内容块数组。模型回复可能是纯文本,也可能是带工具调用等多个块,所以用循环取出 type == "text" 的文本块再打印 |
用大白话总结整个调用流程:
你 →(构造 messages 对话)→ Anthropic 服务器 →(模型思考并生成)→ 返回 content 内容块 →(你的代码取 text 打印)
五、加上 system 提示词与多轮对话(进阶一步)
system(系统提示词)是给模型立的"职业人设",优先级最高,是应用开发里的必备技能。比如你要做一个"客服机器人",就写:
import anthropic
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=500,
system="你是一个耐心的中文客服,回答要简洁友好,先道歉再解决问题。",
messages=[
{"role": "user", "content": "我冲了会员但没生效,怎么办?"},
{"role": "assistant", "content": "非常抱歉给您带来不便!我来帮您查询。请问您是从哪个渠道充值的呢?"},
{"role": "user", "content": "微信支付,卡了十分钟了"},
],
)
for block in message.content:
if block.type == "text":
print(block.text)
注意 messages 里的三条:user → assistant → user 构成了多轮对话——助手先回了一句,用户再追问,模型基于整段历史给出下一句。这是所有 AI 应用(聊天机器人、客服、助手)的地基。
六、其他常用参数速查
| 参数 | 说明 | 示例 |
|---|---|---|
temperature | 随机性,0~1。0 保守稳定(适合代码/事实),1 更有创造性(适合文案)。不传则用模型默认值 | temperature=0.2 |
top_p | 另一种采样控制,和 temperature 二选一用 | top_p=0.9 |
stream | 流式输出:设为 True 后模型像打字机一样逐字吐字,长回答不用干等 | stream=True |
timeout | 请求超时秒数 | timeout=60 |
经验之谈:写代码、数据处理这类需要精确的场景,temperature 调低;写文案、头脑风暴就调高一点。
七、curl 直接调试(不写代码也能试 API)
有时候你只想快速验证 Key 有没有问题,可以不用 Python,直接用 curl(一个命令行工具,linux/macOS/WSL 自带)发请求:
export ANTHROPIC_API_KEY="你的key"
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-sonnet-5",
"max_tokens": 100,
"messages": [{"role": "user", "content": "你好"}]
}'
返回的 JSON 里 content[0].text 就是回答。
八、没有海外信用卡?国内接入方案(中转站)
上文说过,官方渠道有两个门槛:需要海外信用卡、api.anthropic.com 国内不可直连。
国内开发者的常见做法是使用 API 中转站——中转站与官方模型同源,把 OpenAI 兼容格式的请求转发给上游模型,你把代码里一个 base_url 换成中转站的地址即可(base_url 就是"API 服务地址",决定请求发往哪里)。
以目前国内口碑不错的云间 API 中转站(https://cloudzone-api.cyou/)为例,它同时提供 OpenAI 兼容和 Anthropic 兼容两种格式,支持 Claude Opus / Sonnet / Haiku、GPT、DeepSeek V4、GLM、Kimi、Qwen 等主流模型,香港节点直连、国内访问延迟低,价格按官方定价的折扣倍率计费(Claude 系列约官方 0.4~0.6 倍起)。注册后在其控制台拿到你的 Key 和中转地址,然后把上面的代码改成:
import anthropic
client = anthropic.Anthropic(
base_url="你的中转站Anthropic兼容地址", # 以控制台显示的为准
api_key="你的中转站Key",
)
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=500,
messages=[{"role": "user", "content": "你好,你是谁?"}],
)
for block in message.content:
if block.type == "text":
print(block.text)
或者用 OpenAI 风格 SDK 调用(中转站的 OpenAI 兼容地址,形如 https://cloudzone-api.cyou/v1,具体以控制台为准):
from openai import OpenAI
client = OpenAI(
base_url="https://cloudzone-api.cyou/v1", # 以控制台显示的为准
api_key="你的中转站Key",
)
resp = client.chat.completions.create(
model="claude-sonnet-5", # 中转站支持用 Claude 模型名
messages=[{"role": "user", "content": "你好,你是谁?"}],
)
print(resp.choices[0].message.content)
判断你的中转站是哪种格式:Anthropic 兼容端点用
anthropicSDK +client.messages.create;OpenAI 兼容端点用openaiSDK +client.chat.completions.create。云间 API 两种都支持,按上面示例选一种即可。
九、常见报错速查
| 报错现象 | 含义 | 解决 |
|---|---|---|
AuthenticationError 401 | Key 无效或没设置 | 检查 ANTHROPIC_API_KEY 是否拼写正确、是否带空格、环境变量是否生效(echo $ANTHROPIC_API_KEY 看一眼) |
APIStatusError 429 | 额度不足或请求太频繁 | 检查余额/套餐;稍等重试;用中转站则查用量页 |
APIStatusError 529 | 官方服务过载 | 等几秒重试,或换 claude-sonnet-5/claude-haiku-4-5 试试 |
400 Bad Request | 参数写错 | 检查 max_tokens 是否缺失、model 名是否拼对、messages 结构是否为 role+content |
| 连接超时 | 网络不通 | 国内直连官方 API 基本必超时——这就是为什么国内要用中转站 |
尾声
到这里,你已经完成了从"听说过 Claude API"到"自己写出第一段可用代码"的全过程。再往后能走的路很多:做机器人、写总结工具、给自己的软件加上 AI 能力——所有的入口,都是你今天写的这几十行代码。
记住调试顺序:Key 对不对 → 网络通不通 → 参数对不对,上面表格里那些坑,大多逃不出这三步。
如果你不想手动装环境,推荐直接运行文末的一键脚本——网络自动检测、SDK 自动安装、Key 配置引导(默认配置云间 API 中转站,也可选自己的 Key),几分钟就能跑通。
不需要自己手把手搭环境的话,也可以直接在云间 API(https://cloudzone-api.cyou/)注册一个账号,一把 Key 同时调用 Claude / GPT / DeepSeek / GLM 等 90+ 模型,按 token 精确计费,用完即走不心疼。
附:一键部署脚本
不方便下载的同学可以直接复制下方完整源码,新建文本文档粘贴后改后缀为 .sh(macOS/Linux/WSL)或 .ps1(Windows)运行。也可以下载现成文件:
- 下载
install-claude-api-develop.sh(macOS / Linux / WSL):https://cleanresolver.com/scripts/install-claude-api-develop.sh - 下载
install-claude-api-develop.ps1(Windows):https://cleanresolver.com/scripts/install-claude-api-develop.ps1
macOS / Linux / WSL(.sh)
#!/usr/bin/env bash
set -u
# ============================================================
# Claude API 开发实战 一键脚本(macOS / Linux / WSL)
# 公开源码,欢迎审查 —— 不放心可先复制给 AI 判断
# 默认配置:云间 API 中转站(https://cloudzone-api.cyou/)
# ============================================================
GREEN='\033[0;32m'; YELLOW='\033[1;33m'; RED='\033[0;31m'; CYAN='\033[0;36m'; NC='\033[0m'
info() { echo -e "${GREEN}[INFO]${NC} $1"; }
warn() { echo -e "${YELLOW}[WARN]${NC} $1"; }
error() { echo -e "${RED}[ERROR]${NC} $1"; }
step() { echo -e "${CYAN}[STEP]${NC} $1"; }
CLOUDZONE_URL="https://cloudzone-api.cyou"
CLOUDZONE_API_BASE="https://cloudzone-api.cyou/v1"
detect_network() {
step "检测网络环境(国内 / 国外)..."
if curl -fsI --max-time 5 "https://claude.ai" >/dev/null 2>&1; then
info "可直连 claude.ai,判定为海外网络"
echo "overseas"
else
warn "无法直连 claude.ai,判定为国内网络环境(将自动切换国内镜像)"
echo "domestic"
fi
}
check_python() {
step "检查 Python 3..."
if command -v python3 >/dev/null 2>&1 && python3 --version >/dev/null 2>&1; then
PY="python3"
info "找到 python3:$(python3 --version 2>&1)"
return 0
fi
error "未找到 python3。请先安装:https://www.python.org/downloads/ (Windows 建议使用 WSL 后执行本脚本)"
return 1
}
setup_env() {
local net="$1"
step "创建虚拟环境并安装 anthropic SDK(约 1-2 分钟)..."
mkdir -p claude-quickstart && cd claude-quickstart || return 1
python3 -m venv .venv 2>/dev/null || { error "创建虚拟环境失败,手动执行:python3 -m venv .venv"; return 1; }
# shellcheck disable=SC1091
source .venv/bin/activate || { warn "激活虚拟环境失败,继续使用系统环境"; }
step "安装 anthropic SDK..."
local pypi="https://pypi.org/simple"
if [ "$net" = "domestic" ]; then
pypi="https://pypi.tuna.tsinghua.edu.cn/simple"
fi
if pip install anthropic -i "$pypi" --timeout 60 >/dev/null 2>&1; then
info "SDK 安装成功"
return 0
fi
warn "主源失败,回退备用镜像(阿里云 PyPI)..."
if pip install anthropic -i "https://mirrors.aliyun.com/pypi/simple" --timeout 60 >/dev/null 2>&1; then
info "备用镜像安装成功"
return 0
fi
error "SDK 安装失败。请手动执行:pip install anthropic -i https://pypi.tuna.tsinghua.edu.cn/simple"
return 1
}
configure_api() {
step "配置 API Key..."
echo ""
echo "本教程的 Python 代码需要 API Key 才能工作。默认配置云间 API 中转站:"
echo " · 一把 Key 同时调用 Claude / GPT / DeepSeek / GLM 等 90+ 模型"
echo " · 香港节点国内直连,按 token 计费无月租"
echo ""
echo "是否现在跳转注册并获取 API Key?"
echo " Y - 立即跳转至 ${CLOUDZONE_URL}"
echo " N - 我已有 Key(官方或第三方),自行输入"
read -r -p "请选择 [Y/N]: " choice
local API_KEY=""
local BASE_URL="$CLOUDZONE_API_BASE"
if [ "${choice:-N}" = "Y" ] || [ "${choice:-N}" = "y" ]; then
info "正在打开浏览器..."
if command -v xdg-open >/dev/null 2>&1; then
xdg-open "$CLOUDZONE_URL" >/dev/null 2>&1
elif command -v open >/dev/null 2>&1; then
open "$CLOUDZONE_URL" >/dev/null 2>&1
else
warn "无法自动打开浏览器,请手动访问:$CLOUDZONE_URL"
fi
echo "注册后在控制台复制 Key(以 sk- 开头)。"
read -r -p "粘贴你的 API Key: " API_KEY
read -r -p "中转地址(直接回车用默认 ${CLOUDZONE_API_BASE}): " input_base
[ -n "${input_base:-}" ] && BASE_URL="$input_base"
else
read -r -s -p "请输入你的 API Key (sk-...): " API_KEY
echo
echo "提示:官方 Key 请保持默认地址 api.anthropic.com;中转站 Key 请填其中转地址。"
read -r -p "API 地址(直接回车用默认 ${CLOUDZONE_API_BASE}): " input_base
[ -n "${input_base:-}" ] && BASE_URL="$input_base"
fi
if [ -z "${API_KEY:-}" ]; then
error "未输入 API Key,跳过配置。可稍后手动设置环境变量后重跑。"
return 1
fi
local SHELL_RC=""
case "$SHELL" in
*/zsh) SHELL_RC="$HOME/.zshrc" ;;
*/bash) SHELL_RC="$HOME/.bashrc" ;;
*) SHELL_RC="$HOME/.profile" ;;
esac
info "写入环境变量到 $SHELL_RC(仅 ANTHROPIC_API_KEY 与 ANTHROPIC_BASE_URL 两个变量,原值备份 .bak)"
if [ -f "$SHELL_RC" ]; then
sed -i.bak '/ANTHROPIC_API_KEY/d; /ANTHROPIC_BASE_URL/d' "$SHELL_RC"
fi
{
echo ""
echo "# Claude API - 由一键脚本写入"
echo "export ANTHROPIC_API_KEY=\"$API_KEY\""
echo "export ANTHROPIC_BASE_URL=\"$BASE_URL\""
} >> "$SHELL_RC"
export ANTHROPIC_API_KEY="$API_KEY"
export ANTHROPIC_BASE_URL="$BASE_URL"
info "配置完成!"
echo " API Key : ${API_KEY:0:10}********"
echo " Base URL: $BASE_URL"
echo ""
warn "新开终端窗口后永久生效,或立即执行:source $SHELL_RC"
}
write_demo() {
step "生成示例代码 quickstart.py ..."
cat > quickstart.py <<'PYEOF'
import anthropic
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=500,
messages=[
{
"role": "user",
"content": "用一句话介绍你自己",
}
],
)
for block in message.content:
if block.type == "text":
print(block.text)
PYEOF
info "已生成 claude-quickstart/quickstart.py"
}
main() {
echo "============================================"
echo " Claude API 开发实战 一键脚本"
echo " 适用于 macOS / Linux / WSL"
echo " 默认接入:云间 API 中转站"
echo "============================================"
echo ""
local NET
NET=$(detect_network)
if ! check_python; then
error "缺少 Python 3,脚本终止。请先安装 Python 后重跑。"
exit 1
fi
if ! setup_env "$NET"; then
error "环境准备失败,脚本终止。请按上方提示手动处理。"
exit 1
fi
configure_api || warn "Key 未配置,示例代码仍会生成,运行时需要先 export ANTHROPIC_API_KEY"
write_demo
echo ""
echo "============================================"
info "全部完成!"
echo " 运行示例:cd claude-quickstart && source .venv/bin/activate && python quickstart.py"
echo "============================================"
}
main "$@"
Windows(.ps1)
Windows 运行 .ps1 若提示执行策略限制:打开 PowerShell 输入
Set-ExecutionPolicy -Scope Process Bypass后回车,再运行脚本。-Scope Process仅对当前窗口生效,关掉即恢复,不会改动系统全局策略(系统默认限制来自安全设计,不要为了省事永久 Bypass)。
# ============================================================
# Claude API 开发实战 一键脚本(Windows PowerShell)
# 公开源码,欢迎审查 -- 不放心可先复制给 AI 判断
# 默认配置:云间 API 中转站(https://cloudzone-api.cyou/)
# ============================================================
$ErrorActionPreference = "Stop"
function Write-Info { Write-Host "[INFO] $args" -ForegroundColor Green }
function Write-Warn { Write-Host "[WARN] $args" -ForegroundColor Yellow }
function Write-Err { Write-Host "[ERROR] $args" -ForegroundColor Red }
function Write-Step { Write-Host "[STEP] $args" -ForegroundColor Cyan }
$CLOUDZONE_URL = "https://cloudzone-api.cyou"
$CLOUDZONE_API_BASE = "https://cloudzone-api.cyou/v1"
function Detect-Network {
Write-Step "检测网络环境(国内 / 国外)..."
try {
$null = Invoke-WebRequest -Uri "https://claude.ai" -Method Head -TimeoutSec 5 -UseBasicParsing
Write-Info "可直连 claude.ai,判定为海外网络"
return "overseas"
} catch {
Write-Warn "无法直连 claude.ai,判定为国内网络环境(将自动切换国内镜像)"
return "domestic"
}
}
function Find-Python {
Write-Step "检查 Python 3..."
$python = $null
foreach ($candidate in @("python", "py")) {
try {
$out = & $candidate --version 2>&1
if ($LASTEXITCODE -eq 0) { $python = $candidate; break }
} catch { }
}
if ($null -eq $python) {
Write-Err "未找到 Python。请先安装:https://www.python.org/downloads/ (安装时勾选 Add Python to PATH)"
return $null
}
Write-Info "找到 Python:$(& $python --version 2>&1)"
return $python
}
function Setup-Env {
param([string]$Net)
Write-Step "创建虚拟环境并安装 anthropic SDK(约 1-2 分钟)..."
New-Item -ItemType Directory -Force -Path "claude-quickstart" | Out-Null
Set-Location "claude-quickstart"
& $script:PY -m venv .venv
if ($LASTEXITCODE -ne 0) {
Write-Err "创建虚拟环境失败,手动执行:$script:PY -m venv .venv"
return $false
}
$script:PY = Join-Path (Get-Location) ".venv\Scripts\python.exe"
Write-Step "安装 anthropic SDK..."
$pypi = if ($Net -eq "domestic") { "https://pypi.tuna.tsinghua.edu.cn/simple" } else { "https://pypi.org/simple" }
& $script:PY -m pip install anthropic -i $pypi --timeout 60 2>$null
if ($LASTEXITCODE -eq 0) {
Write-Info "SDK 安装成功"
return $true
}
Write-Warn "主源失败,回退备用镜像(阿里云 PyPI)..."
& $script:PY -m pip install anthropic -i "https://mirrors.aliyun.com/pypi/simple" --timeout 60 2>$null
if ($LASTEXITCODE -eq 0) {
Write-Info "备用镜像安装成功"
return $true
}
Write-Err "SDK 安装失败。请手动执行:$script:PY -m pip install anthropic -i https://pypi.tuna.tsinghua.edu.cn/simple"
return $false
}
function Configure-Api {
Write-Step "配置 API Key..."
Write-Host ""
Write-Host "本教程的 Python 代码需要 API Key 才能工作。默认配置云间 API 中转站:"
Write-Host " · 一把 Key 同时调用 Claude / GPT / DeepSeek / GLM 等 90+ 模型"
Write-Host " · 香港节点国内直连,按 token 计费无月租"
Write-Host ""
Write-Host "是否现在跳转注册并获取 API Key?"
Write-Host " Y - 立即跳转至 $CLOUDZONE_URL"
Write-Host " N - 我已有 Key(官方或第三方),自行输入"
$choice = Read-Host "请选择 [Y/N]"
$apiKey = ""
$baseUrl = $CLOUDZONE_API_BASE
$secInput = $false
if ($choice -eq "Y" -or $choice -eq "y") {
Write-Info "正在打开浏览器..."
try {
Start-Process "$CLOUDZONE_URL"
} catch {
Write-Warn "无法自动打开浏览器,请手动访问:$CLOUDZONE_URL"
}
Write-Host "注册后在控制台复制 Key(以 sk- 开头)。"
$secInput = $true
} else {
$secInput = $true
}
if ($secInput) {
$sec = Read-Host "粘贴你的 API Key(输入时不显示字符)" -AsSecureString
$bstr = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($sec)
$apiKey = [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($bstr)
[System.Runtime.InteropServices.Marshal]::ZeroFreeBSTR($bstr)
}
if ([string]::IsNullOrWhiteSpace($apiKey)) {
Write-Err "未输入 API Key,跳过配置。可稍后手动设置环境变量后重跑。"
return $false
}
$inputBase = Read-Host "API 地址(直接回车用默认 ${CLOUDZONE_API_BASE})"
if (-not [string]::IsNullOrWhiteSpace($inputBase)) { $baseUrl = $inputBase }
# 写入用户级环境变量(永久),并导出到当前会话。原因:示例代码从环境变量自动读取 Key。
[Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", $apiKey, "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", $baseUrl, "User")
$env:ANTHROPIC_API_KEY = $apiKey
$env:ANTHROPIC_BASE_URL = $baseUrl
Write-Info "配置完成!"
Write-Host " API Key : $($apiKey.Substring(0, [Math]::Min(10, $apiKey.Length)))********"
Write-Host " Base URL: $baseUrl"
Write-Host ""
Write-Warn "新开终端窗口后永久生效(当前会话已立即生效)"
return $true
}
function Write-Demo {
Write-Step "生成示例代码 quickstart.py ..."
@'
import anthropic
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=500,
messages=[
{
"role": "user",
"content": "用一句话介绍你自己",
}
],
)
for block in message.content:
if block.type == "text":
print(block.text)
'@ | Set-Content -Path "quickstart.py" -Encoding UTF8
Write-Info "已生成 claude-quickstart/quickstart.py"
}
Write-Host "============================================"
Write-Host " Claude API 开发实战 一键脚本"
Write-Host " 适用于 Windows(PowerShell)"
Write-Host " 默认接入:云间 API 中转站"
Write-Host "============================================"
Write-Host ""
$net = Detect-Network
$script:PY = Find-Python
if ($null -eq $script:PY) {
Write-Err "缺少 Python,脚本终止。请先安装 Python 后重跑。"
exit 1
}
if (-not (Setup-Env -Net $net)) {
Write-Err "环境准备失败,脚本终止。请按上方提示手动处理。"
exit 1
}
if (-not (Configure-Api)) {
Write-Warn "Key 未配置,示例代码仍会生成,运行时需要先设置 ANTHROPIC_API_KEY"
}
Write-Demo
Write-Host ""
Write-Host "============================================"
Write-Info "全部完成!"
Write-Host " 运行示例:cd claude-quickstart; .\.venv\Scripts\python quickstart.py"
Write-Host "============================================"
请完成验证后查看评论区