返回首頁AI API

Claude API 串接教學|2026 年 Anthropic API 從零開始完整教學

11 min 分鐘閱讀
#Claude API#Anthropic API#API 串接#Python SDK#Streaming#Tool Use#開發教學#程式範例#API 整合#Claude

Claude API 串接教學|2026 年 Anthropic API 從零開始完整教學

從零到第一個 API 回應,只需要 5 分鐘

你決定要用 Claude API 了。

也許是因為 Sonnet 的性價比讓你心動,也許是 200K Context Window 正好解決你的長文處理需求,又或者你只是想試試看 GPT 以外的選擇。

不管原因是什麼,這篇教學會帶你走完整個串接流程——從環境設定、SDK 安裝、到送出第一個請求,再到 Streaming、Tool Use 等進階功能。

每一步都有可以直接複製的程式碼。

想快速取得 Claude API?透過 CloudInsight 企業代購更省心,享折扣優惠與統一發票。

開發者串接 Claude API 的工作場景

TL;DR

Claude API 串接四步驟:安裝 SDK(pip install anthropic)→ 設定環境變數(ANTHROPIC_API_KEY)→ 建立 client → 呼叫 messages.create()。支援 Streaming、Tool Use、Vision 等進階功能。Python 和 TypeScript 有官方 SDK。


Claude API 準備工作與環境設定|開始之前你需要什麼

Answer-First: 串接 Claude API 需要:一個 Anthropic Console 帳號、有效的 API Key、Python 3.8+ 或 Node.js 18+ 環境。10 分鐘內可完成所有準備。

取得 API Key

如果你還沒有 API Key:

  1. console.anthropic.com 註冊
  2. 設定付款方式(信用卡綁定)
  3. 到 API Keys 建立新 Key
  4. 複製並保存 Key

Key 格式: sk-ant-api03-xxxxxxxxxxxx

購買流程的完整說明請參考 Claude API 購買教學

環境準備

Python 環境:

# 確認 Python 版本 >= 3.8
python --version

# 建議使用虛擬環境
python -m venv claude-env
source claude-env/bin/activate  # macOS/Linux
# claude-env\Scripts\activate  # Windows

# 安裝 Anthropic SDK
pip install anthropic

TypeScript/Node.js 環境:

# 確認 Node.js 版本 >= 18
node --version

# 安裝 SDK
npm install @anthropic-ai/sdk

設定 API Key(環境變數)

永遠不要把 API Key 直接寫在程式碼裡。

# macOS/Linux - 加到 ~/.bashrc 或 ~/.zshrc
export ANTHROPIC_API_KEY="sk-ant-api03-你的key"

# Windows PowerShell
$env:ANTHROPIC_API_KEY="sk-ant-api03-你的key"

或使用 .env 檔案搭配 python-dotenv

# .env 檔案
ANTHROPIC_API_KEY=sk-ant-api03-你的key
from dotenv import load_dotenv
load_dotenv()

使用 Python SDK 發送第一個請求|最小可執行範例

Answer-First: 只需 5 行核心程式碼就能完成第一個 Claude API 呼叫。SDK 會自動從環境變數讀取 API Key。

基本呼叫

import anthropic

client = anthropic.Anthropic()

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "什麼是 API?請用一句話解釋。"}
    ]
)

print(message.content[0].text)

輸出範例:

API(Application Programming Interface)是一組規則和協議,讓不同的軟體系統可以互相溝通和交換資料。

帶有 System Prompt 的呼叫

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    system="你是一個專業的台灣繁體中文技術寫手。回答簡潔、專業、使用台灣用語。",
    messages=[
        {"role": "user", "content": "解釋什麼是 RESTful API"}
    ]
)

print(message.content[0].text)

多輪對話

messages = [
    {"role": "user", "content": "什麼是 Docker?"},
    {"role": "assistant", "content": "Docker 是一個容器化平台..."},
    {"role": "user", "content": "那 Kubernetes 呢?和 Docker 有什麼關係?"}
]

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=messages
)

print(message.content[0].text)

TypeScript 範例

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

const client = new Anthropic();

const message = await client.messages.create({
    model: "claude-sonnet-4-20250514",
    max_tokens: 1024,
    messages: [
        { role: "user", content: "什麼是 API?" }
    ],
});

console.log(message.content[0].text);

進階功能:Streaming、Tool Use、Vision|讓 Claude 做更多事

Answer-First: Claude API 支援三大進階功能——Streaming(即時串流回應)、Tool Use(呼叫外部函數)、Vision(圖片理解)。這些功能讓你可以打造更複雜的 AI 應用。

Streaming — 即時串流回應

不想等 Claude 想完才看到回應?用 Streaming。

with client.messages.stream(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[{"role": "user", "content": "寫一篇 300 字的 AI 趨勢分析"}]
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

適用場景:

  • 聊天機器人(逐字顯示回應)
  • 長篇內容生成
  • 提升使用者體驗

Tool Use — 讓 Claude 呼叫你的函數

這是最強大的功能之一。你可以定義工具(函數),讓 Claude 決定何時以及如何呼叫。

import json

# 定義工具
tools = [
    {
        "name": "get_weather",
        "description": "取得指定城市的天氣資訊",
        "input_schema": {
            "type": "object",
            "properties": {
                "city": {
                    "type": "string",
                    "description": "城市名稱,例如:台北"
                }
            },
            "required": ["city"]
        }
    }
]

# 發送請求
message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    tools=tools,
    messages=[{"role": "user", "content": "台北今天天氣怎麼樣?"}]
)

# Claude 會回傳 tool_use 類型的回應
for block in message.content:
    if block.type == "tool_use":
        print(f"Claude 要呼叫: {block.name}")
        print(f"參數: {json.dumps(block.input, ensure_ascii=False)}")

Vision — 圖片理解

Claude 可以分析圖片內容。

import base64

# 讀取本地圖片
with open("screenshot.png", "rb") as f:
    image_data = base64.standard_b64encode(f.read()).decode("utf-8")

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": "image/png",
                        "data": image_data
                    }
                },
                {
                    "type": "text",
                    "text": "這張圖片裡有什麼?"
                }
            ]
        }
    ]
)

print(message.content[0].text)

Claude API 進階功能展示畫面


Claude API 最佳實踐與錯誤處理|寫出穩定的生產程式碼

Answer-First: 生產環境中使用 Claude API,必須做好錯誤處理、速率限制管理、和成本控制。以下是實戰建議。

錯誤處理

import anthropic

client = anthropic.Anthropic()

try:
    message = client.messages.create(
        model="claude-sonnet-4-20250514",
        max_tokens=1024,
        messages=[{"role": "user", "content": "Hello"}]
    )
except anthropic.AuthenticationError:
    print("API Key 無效或過期")
except anthropic.RateLimitError:
    print("超出速率限制,請稍後重試")
except anthropic.APIError as e:
    print(f"API 錯誤: {e.status_code} - {e.message}")

常見錯誤碼

錯誤碼原因解決方式
401API Key 無效檢查 Key 是否正確
429速率限制加入重試機制或等待
500伺服器錯誤稍後重試
529API 過載加入退避重試

速率限制管理

Claude API 有使用速率限制(Rate Limit),會根據你的帳戶等級而不同。

建議實作指數退避重試:

import time
import anthropic

client = anthropic.Anthropic()

def call_with_retry(messages, max_retries=3):
    for attempt in range(max_retries):
        try:
            return client.messages.create(
                model="claude-sonnet-4-20250514",
                max_tokens=1024,
                messages=messages
            )
        except anthropic.RateLimitError:
            wait_time = 2 ** attempt
            print(f"速率限制,等待 {wait_time} 秒...")
            time.sleep(wait_time)
    raise Exception("重試次數已達上限")

成本控制

  • max_tokens 限制回應長度
  • 先用 Haiku 開發測試,上線再換 Sonnet
  • 監控 message.usage 中的 Token 消耗
  • 設定 Anthropic Console 的月度預算上限
message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello"}]
)

# 查看 Token 使用量
print(f"Input tokens: {message.usage.input_tokens}")
print(f"Output tokens: {message.usage.output_tokens}")

Claude API 錯誤處理與成本控制儀表板


透過 CloudInsight 採購 Claude API,享企業專屬折扣與統一發票。立即諮詢


FAQ:Claude API 串接常見問題

Claude API 和 OpenAI API 的介面差異大嗎?

格式類似但不相同。主要差異:

項目Claude APIOpenAI API
端點messages.create()chat.completions.create()
System Prompt獨立參數在 messages 中
回應格式message.content[0].textresponse.choices[0].message.content
Streamingmessages.stream()stream=True

如果你從 OpenAI 遷移過來,主要需要調整的是 API 格式和模型名稱。

串接遇到 401 錯誤怎麼辦?

通常是 API Key 問題:

  1. 確認 Key 沒有過期或被撤銷
  2. 確認環境變數名稱是 ANTHROPIC_API_KEY
  3. 確認 Key 格式正確(sk-ant-api03- 開頭)
  4. 確認帳戶有餘額

Claude API 支援哪些程式語言?

官方 SDK:

  • Python
  • TypeScript / JavaScript

社群 SDK:

  • Go、Java、Ruby、PHP、Rust 等

直接 HTTP: 任何能發 HTTP 請求的語言都能用。

怎麼選擇模型?

需求建議模型
最高品質輸出Opus 4.6
日常開發(推薦)Sonnet 4.6
高速低成本Haiku 4.5
開發測試Haiku 4.5

想了解更多 Claude 的功能和使用方式?請參考 Claude AI 完整指南

如果你對 Claude 的使用技巧有興趣,可以看看 Claude 怎麼用?功能教學與使用技巧大全

想了解 Anthropic 這家公司的背景?請參考 Anthropic 是什麼?完整介紹

更多 AI API 的購買管道和付款教學,請參考 AI API 台灣怎麼買?購買付款完整教學


結論:Claude API 串接比你想像的簡單

回顧完整流程:

  1. 安裝 SDK:pip install anthropic
  2. 設定環境變數:ANTHROPIC_API_KEY
  3. 建立 client:anthropic.Anthropic()
  4. 送出請求:client.messages.create()
  5. 進階功能:Streaming、Tool Use、Vision

5 分鐘就能跑起第一個範例。剩下的就是根據你的需求,探索進階功能和最佳實踐。

立即諮詢 CloudInsight 企業方案,一站搞定 Claude API 採購與技術支援。前往聯絡表單

或加入 CloudInsight LINE 官方帳號,即時取得開發支援。


參考資料

  1. Anthropic API Reference: https://docs.anthropic.com/en/api
  2. Anthropic Python SDK: https://github.com/anthropics/anthropic-sdk-python
  3. Anthropic Tool Use Guide: https://docs.anthropic.com/en/docs/build-with-claude/tool-use

需要專業的雲端建議?

無論您正在評估雲平台、優化現有架構,或尋找節費方案,我們都能提供協助

預約免費諮詢

相關文章