Claude 不是「換個 base_url 的 GPT」。Claude API 有自己的協定——Anthropic Messages API——和它自己的、一旦透過 OpenAI 相容層就會消失的優勢。
擴展思考——Claude 一步步展示內部推理的機制。提示詞快取——重複輸入享 90% 折扣。工具使用——深深整合進訊息結構,而不是事後硬湊上去的。
如果你透過 OpenAI 相容端點用 Claude,這些全部會消失。
這份指南教你 Claude API 本來設計的用法:原生協定、完整功能集、可上生產。如果你身處 Anthropic 封鎖直接存取的區域,程式範例透過支援 Anthropic 原生的聚合平台可以一模一樣地跑——把 ANTHROPIC_BASE_URL 設成平台端點、用平台的 API key。
2026 年的 Claude 模型
| 模型 | Input $/M | Output $/M | Context | SWE-bench | 最適合 |
|---|---|---|---|---|---|
| Claude Opus 4.8 | $5.00 | $25.00 | 1M | 88.6% | 複雜除錯、架構決策 |
| Claude Sonnet 4.6 | $3.00 | $15.00 | 1M | ~85% | 日常編寫程式、內容、分析 |
| Claude Haiku 4.5 | $1.00 | $5.00 | 200K | ~78% | 大量簡單任務、成本敏感 |
Fable 5 與 Mythos 5——SWE-bench 95% 的 Claude 次世代模型——於 2026 年 6 月因美國出口管制而暫停。截至 2026 年 7 月,所有 API 使用者都還用不到。萬一之後開放,這份指南的協定與寫法可以直接套用。
哪台 Claude 配哪種任務。 答錯代價高過 API 呼叫的任務——複雜除錯、資安稽核、法務分析——用 Opus。日常開發——程式生成、PR 審查、內容撰寫——用 Sonnet。大量且簡單的任務——分類、抽取、基本問答——成本比最大深度更重要,用 Haiku。
Anthropic 原生協定:超越 OpenAI 相容
Anthropic 的 Messages API 與 OpenAI 的 Chat Completions API 有根本上的不同。這些差異不是表面功夫——它們啟動了 OpenAI 相容世界裡不存在的功能。
關鍵結構差異。 系統提示詞是頂層參數,不是訊息角色。訊息在 user 和 assistant 角色之間交替。
工具使用與工具結果是訊息內的內容區塊型別,不是獨立的訊息角色。思考區塊是一種揭露模型內部推理的內容型別。
這些差異正是 Claude Code、Anthropic 原生的 Cursor 等 Claude 原生工具非用原生協定不可的原因——它們的 UX 完全依賴那些被 OpenAI 相容翻譯剝掉的東西。
Python——原生 Anthropic SDK:
import anthropic
client = anthropic.Anthropic(
base_url="https://api.tokspan.com/anthropic", # Native protocol endpoint
api_key="ts-your-key-here"
)
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=1000,
system="You are a senior software engineer. Answer with code when appropriate.",
messages=[
{"role": "user", "content": "Write a Python function to detect deadlocks in a concurrent system."}
]
)
print(response.content[0].text)
透過 OpenAI 相容翻譯你會失去什麼。 擴展思考(模型的內部推理鏈)被剝掉——你付了思考 Token 的錢卻永遠看不到它們。工具使用退化——結構化的 tool_use 內容區塊變成扁平 JSON,失去型別資訊與串流的部分結果。模型無法再把推理與行動交錯進行,因此依賴即時工具執行的 Agent 迴圈看到的是捏造的結果而非真實結果。Computer use 完全不能用——它依賴的是 OpenAI 沒有對應物的原生協定功能。
只要你不是拿 Claude 做簡單聊天,就用原生協定。90% 折扣的提示詞快取也要求原生協定——OpenAI 相容層通常不會傳遞 cache_control 標記。
擴展思考與思考區塊
擴展思考是 Claude 最具特色的功能。模型在生成回應前執行內部思維鏈推理。開啟思考後,你可以看到這套推理——Anthropic 的擴展思考指南涵蓋設定與最佳實務——這對除錯提示詞、理解模型決策、以及在複雜輸出上建立信任,都非常有價值。
思考怎麼運作。 你設定一個帶 budget_tokens 值(最低 1,024)的 thinking 參數。Claude 最多配置那麼多 Token 給內部推理。那些 Token 照輸出費率計費。
思考之後,Claude 生成可見回應。思考在與文字回應分開的 thinking 內容區塊裡回傳。
設定思考:
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=2000,
thinking={
"type": "enabled",
"budget_tokens": 2048 # Allow up to 2,048 tokens for reasoning
},
messages=[
{"role": "user", "content": "Analyze this distributed system design for failure modes."}
]
)
# Access the model's reasoning
for block in response.content:
if block.type == "thinking":
print(f"Claude's reasoning:\n{block.thinking}")
elif block.type == "text":
print(f"Claude's response:\n{block.text}")
什麼時候用擴展思考。 複雜除錯:永遠開。架構分析:永遠開。正確性比速度重要的程式任務:開,budget_tokens 設 2,048–4,096。
簡單問答、分類、摘要:關——對直白任務,思考 Token 只增加成本、不提升輸出品質。
成本權衡。 思考平均讓 Token 消耗增加 20–40%。一個通常消耗 1,500 Token(輸入+輸出)的請求,開啟思考後可能變成 2,100 Token。$0.05 的請求變成 $0.07——多了 40%。
但當 Claude 在一場除錯中抓到你要花四小時才找得到的並行 bug 時,那多花的 $0.02 是你這一週花得最值的錢。
提示詞快取:輸入成本省下 90%
Claude 提供業界最激進的提示詞快取——透過 Messages API 的 cache_control 區塊,快取輸入 Token 享 90% 折扣。快取的機制、寫入/讀取經濟性、TTL 行為與跨供應商策略,請見提示詞快取深度解析。
實作:
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=1000,
system=[
{
"type": "text",
"text": "You are a code reviewer. Here are our coding standards...",
"cache_control": {"type": "ephemeral"} # Cache this system prompt
}
],
messages=[
{
"role": "user",
"content": [
{
"type": "text",
"text": "Review this PR diff: ...",
"cache_control": {"type": "ephemeral"} # Can be cached if repeated
}
]
}
]
)
工具使用與 Computer use
Claude 的工具使用在結構上與 OpenAI 的 function calling 不同——而在生產環境,這個差異很重要。把 Claude 的工具呼叫當成 OpenAI function calling 的無痛替代來用的開發者,會在他們第一個串流 Agent 迴圈裡發現這個落差。
最常見的壞掉方式:OpenAI 把 tool_calls 回傳為你要跨串流區塊累加的 delta。Claude 把 tool_use 回傳為與 text 區塊平起平坐的內容區塊——你要把它當完整物件處理,而不是一串片段。為 OpenAI 寫法的程式,在工具使用以 content[1].type == "tool_use" 到來的結構裡找 delta.tool_calls,於是默默丟掉 Claude 的工具呼叫。一旦你知道差別,修法很簡單,但第一次診斷會讓團隊花好幾個小時,去查一個看起來像模型「不理會」工具的 bug。
附四平台可運作程式的完整跨供應商比較,請見function calling 與工具使用指南。
工具使用——Python 實作:
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=1000,
tools=[{
"name": "search_codebase",
"description": "Search the codebase for a given symbol or pattern.",
"input_schema": {
"type": "object",
"properties": {
"query": {"type": "string", "description": "Search query"},
"file_pattern": {"type": "string", "description": "Optional glob pattern, e.g. '*.py'"}
},
"required": ["query"]
}
}],
messages=[{"role": "user", "content": "Find where authentication logic is implemented."}]
)
# Handle tool_use content blocks
for block in response.content:
if block.type == "tool_use":
tool_name = block.name
tool_input = block.input
# Execute the tool, then continue the conversation with tool_result
與 OpenAI 的關鍵差異。 Claude 把 tool_use 回傳為訊息內與 text 區塊並排的內容區塊——它們在內容陣列裡是對等的。OpenAI 把 tool_calls 回傳為訊息上的獨立欄位。這個結構差異代表 Claude 能在單一回應裡交錯進行思考、文字與工具呼叫——模型可以一邊呼叫工具、一邊解釋自己在做什麼。
透過 OpenAI 相容翻譯會壞什麼。 把一個程式庫搜尋請求經由 OpenAI 相容端點送給 Claude,回應可能會是:「我來搜尋 auth 模組……[tool_use: search_codebase query=‘auth’] 找到了,在 src/auth/handlers.py。」原生協定下,你會依序拿到三個獨立內容區塊:解釋意圖的文字區塊、帶型別輸入的結構化 tool_use 區塊、以及帶發現結果的另一個文字區塊。你的 Agent 迴圈處理每個區塊、執行工具、注入 tool_result 繼續。OpenAI 相容翻譯下,這三個區塊合併成一個扁平文字字串。你的 Agent 迴圈看到一個沒有可執行 tool_use 區塊的單一訊息。工具呼叫永遠不會執行。模型的解釋——「在 src/auth/handlers.py」——是在搜尋真正執行之前寫下的,所以檔案路徑可能是幻覺。這種故障模式是無聲的:模型語氣很自信,但每個結果都是捏造的。
原生 vs 相容:用真實任務比較。 我們把同一個 PR 審查任務用 Claude Opus 4.8 跑了兩次——一次原生、一次透過 OpenAI 相容端點。任務:在 200 個檔案的 Python 程式庫裡找出所有 SQL 注入模式、說明每個發現、並建議修法。原生協定:Claude 串流了 14 個交錯的 text 與 tool_use 區塊。Agent 在每個檔案搜尋送達時立刻執行、當場處理部分結果。總時間:32 秒、8,400 Token。OpenAI 相容:工具呼叫以附在最後一則訊息的扁平 JSON 抵達。沒有串流工具使用、沒有部分結果。Agent 要等完整回應在 68 秒完成才開始處理。兩次搜尋逾時、需要重試。總時間:94 秒、含重試 11,500 Token。同一台模型、同一個任務——唯一變數是協定層。
Computer use(測試版)。 Claude 能操作電腦介面——移動游標、點擊、打字。這是實驗性的、也貴(相關的截圖與動作照標準輸出費率計費)。別拿它做工具呼叫就能完成的事。要用的話,用它自動化沒有 API 的舊應用程式,或測試需要視覺驗證的 GUI 應用程式。
Claude Code 整合。 Claude Code——Anthropic 的 CLI 寫程式 Agent——只用原生協定。要建構善用這套協定的 Agent 架構,請見AI Agent 架構指南。要在聚合平台上用 Claude Code,設定:
export ANTHROPIC_BASE_URL="https://api.tokspan.com/anthropic"
export ANTHROPIC_AUTH_TOKEN="ts-your-key-here"
Claude Code 會透明地使用平台的原生 Anthropic 端點。所有功能——擴展思考、工具使用、computer use——不需要任何修改。
存取與付款:解決 Claude 封鎖問題
Anthropic 的直連 API 只在支援的地區提供,卡片能否使用也因國家而異。Claude Code 和 Anthropic SDK 每次連線都會檢查你的地區。
2026 年 7 月可行的三種存取方式:
-
支援 Anthropic 原生的聚合平台。 把
ANTHROPIC_BASE_URL設成平台端點。用平台 API key。所有 Claude 功能都正常——擴展思考、快取、工具使用。 -
企業資料控管的自架閘道。 在你控制的基礎設施上部署 LiteLLM 或閘道。從自己的環境連到 Anthropic。需要維護基礎設施,也要有帶受支援付款方式的 Anthropic 帳號。
-
使用支援的付款方式直連 API。 如果你有 Anthropic 接受的付款方式、也位於支援地區,直連 API 就能用。如果可行的話,這是最簡單的選項。
關於透過單一 API 端點整合 Claude 及其他前沿模型、附延遲比較與程式碼的完整指南,請見2026 年如何存取 OpenAI 與 Claude API。
常見問題
我真的需要 Anthropic 原生 SDK 嗎?
基本聊天:不用,OpenAI 相容就能跑。擴展思考、工具使用、computer use、提示詞快取:要,Anthropic 原生是必須的。
那些功能就是 Claude 的競爭優勢。不用它們的 Claude,就像買了跑車卻從不離開一檔。
思考 Token 要多少錢?
思考 Token 照輸出費率計費——Opus 是 $25/M、Sonnet 是 $15/M。用擴展思考時,每個請求預算多 20–40% 的 Token。Opus 上一個 1,000 Token 回應加 500 個思考 Token,約 $0.0375,對比不加思考的 $0.025。
為什麼 Claude Code 非要原生協定?
Claude Code 用了思考區塊、串流工具使用和多輪對話寫法——這些都活不過 OpenAI 相容翻譯。這套工具的整個 UX——顯示模型的推理、在中途處理工具結果——都依賴原生協定功能。
我的地區無法直連時,要怎麼用 Claude?
用支援 Anthropic 原生協定的聚合平台。把 ANTHROPIC_BASE_URL 設成平台端點、ANTHROPIC_AUTH_TOKEN 設成你的平台 key。
Claude Code 和 Anthropic SDK 會一模一樣地運作。
Claude Opus vs Sonnet:價差值得嗎?
複雜除錯與生產 Agent:值得——Opus 更深的架構推理會抓到 Sonnet 漏掉的邊角案例。日常聊天、內容生成、簡單程式:Sonnet 便宜 40%,品質也夠近,使用者不會發現差別。
2026 年的 LLM API 市場正沿著一條多數開發者還沒注意到的斷層線分裂。一邊:OpenAI 相容標準——一個商品化的層,模型可以互換,價格是唯一差異點。
另一邊:原生協定——Claude API 的 Messages 協定、Google 的 Gemini API——擴展思考、自動 function calling、串流工具使用這些供應商特有功能,創造出任何相容層都補不上的真實能力缺口。
在原生協定上建構的開發者,賭的不是某家供應商。他們賭的是:商品化層永遠只會是「最好的模型實際做得到的事」的子集。到目前為止,這個賭注正在兌現。
原生協定之所以重要,是因為那些讓 Claude 值得一用的功能——擴展思考、工具使用、輸入成本省下 90% 的提示詞快取。如果你的地區無法直連 API,或你想把 Claude 和其他模型放在單一帳務關係後面,會講原生 Messages 協定的聚合平台,只要把 ANTHROPIC_BASE_URL 和 ANTHROPIC_AUTH_TOKEN 設成平台端點,就能一模一樣地用 Claude Code。