「ミッドレンジのモデルがフラッグシップを超えた」。
2026年4月1日、AnthropicはClaude Sonnet 5(モデルID:claude-sonnet-5-20260401、開発コードネーム:Fennec)を正式リリースした。料金は前モデルのSonnet 4.6と完全に同額の$3/$15(百万トークンあたり入力/出力)のままで、SWE-bench Verified 92.4%という数字を叩き出した。
直前世代のフラッグシップであったOpus 4.6のスコアは80.8%。Sonnet 5はミッドレンジの価格帯にいながら、上位モデルを12ポイント以上上回った。
コードネーム「Fennec(フェネック)」は、砂漠に生息する小型キツネの名に由来する。高速・敏捷・効率的なモデルというコンセプトを表しており、「レイテンシと知性のトレードオフ」を解消するために設計された「蒸留推論(distilled reasoning)」アーキテクチャを採用している。
公開されている主要ベンチマークにおいて、Claude Sonnet 5は競合モデルに対して全カテゴリでリードしている。
| ベンチマーク | Claude Sonnet 5 | Claude Opus 4.6 | Gemini 3.1 Pro | 人間専門家 |
|---|---|---|---|---|
| SWE-bench Verified(コーディング) | 92.4% | 80.8% | — | — |
| GPQA Diamond(PhD級科学問題) | 96.2% | — | 94.3% | — |
| ARC-AGI-2(抽象推論) | 84.7% | — | 77.1% | — |
| OSWorld-Verified(PC操作自動化) | 88.3% | — | — | 72.4% |
特筆すべきはOSWorld-Verifiedの88.3%だ。人間の専門家ベースラインが72.4%なのに対し、Sonnet 5はデスクトップ操作の自動化タスクで人間を約16ポイント上回った。
SWE-benchとは、実際のGitHubイシューに対してコードを修正するタスク集だ。「APIのバグを直す」「テストを通す」といった実務に近い問題を解かせることで、実用的なコーディング性能を測定する。92.4%は、実務エンジニアが直面するバグの約9割を自律解決できることを示す数値だ。
また、GPQA Diamond 96.2%は、大学院レベルの物理・化学・生物の問題を解くベンチマーク。Gemini 3.1 Proの前回記録94.3%を塗り替えた。ARC-AGI-2は汎用推論(AGI測定の指標とされる)で84.7%。GPT-4系や前世代Claude系は50%台に留まるなか、Sonnet 5は人間の平均(約85%)に並ぶ水準に達している。
注意: ベンチマーク数値は第三者分析(DEV Community等)からの集計値。Anthropicの公式発表ページで最新数値を確認することを推奨する。
Claude Sonnet 5の登場により、3つのモデルの役割分担が明確に変化した。
| ユースケース | 推奨モデル | 理由 |
|---|---|---|
| コード生成・バグ修正 | Sonnet 5 | SWE-bench 92.4%で最高性能 |
| AIエージェント・PC操作 | Sonnet 5 | OSWorld人間超えの88.3% |
| PhD級の科学・数学推論 | Sonnet 5 | GPQA 96.2%で首位 |
| 長文文書の要約・分析 | Opus 4.6 | より長いコンテキスト処理実績 |
| チャット応答・簡単なQ&A | Haiku 4.5 | コスト効率が最大 |
| Sonnet 4.6依存の既存システム | Sonnet 4.6 | 動作確認済みの互換性維持 |
Sonnet 4.6からSonnet 5への移行で追加コストは発生しない。既存のコードを使い続けながら、性能だけが向上する形だ。
Windows・Mac・Linux問わず、pip install anthropic でインストール後に以下のコードが動作する。
import anthropic
client = anthropic.Anthropic(
api_key="YOUR_ANTHROPIC_API_KEY" # 環境変数 ANTHROPIC_API_KEY でも可
)
message = client.messages.create(
model="claude-sonnet-5-20260401", # Sonnet 5のモデルID
max_tokens=1024,
messages=[
{
"role": "user",
"content": "このPythonコードのバグを修正してください:\n\ndef divide(a, b):\n return a / b\n\nprint(divide(10, 0))"
}
]
)
print(message.content[0].text)
# PowerShellでの環境変数設定(セッション内)
$env:ANTHROPIC_API_KEY = "sk-ant-..."
# 永続的に設定する場合(ユーザー環境変数)
[System.Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", "sk-ant-...", "User")
# Pythonスクリプトの実行
python your_script.py
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
apiKey: process.env.ANTHROPIC_API_KEY,
});
async function callSonnet5(userMessage: string): Promise<string> {
const message = await client.messages.create({
model: "claude-sonnet-5-20260401",
max_tokens: 2048,
messages: [{ role: "user", content: userMessage }],
});
return message.content[0].type === "text" ? message.content[0].text : "";
}
// 使用例
callSonnet5("Next.jsのAPIルートでエラーハンドリングの実装方法を教えてください").then(
console.log
);
コード生成などの長い応答には、ストリーミングAPIが実用的だ。Sonnet 5はSonnet 4.6と同じストリーミングインターフェースを持つため、既存コードのモデルID変更だけで移行できる。
import anthropic
client = anthropic.Anthropic()
# ストリーミングで逐次表示
with client.messages.stream(
model="claude-sonnet-5-20260401",
max_tokens=4096,
messages=[{
"role": "user",
"content": "FastAPIを使ったREST APIのサンプルコードをREADMEと一緒に作ってください"
}]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
Sonnet 5では2Mトークン(約150万単語)のコンテキストが正式版として使える。大規模なコードベースを一度に渡すことが可能だ。
import anthropic
import os
client = anthropic.Anthropic()
# リポジトリ全体を読み込んでレビューする例
def review_codebase(directory: str) -> str:
code_content = ""
for root, dirs, files in os.walk(directory):
# node_modules, .git などを除外
dirs[:] = [d for d in dirs if d not in ["node_modules", ".git", "__pycache__"]]
for file in files:
if file.endswith((".py", ".ts", ".tsx", ".js")):
filepath = os.path.join(root, file)
with open(filepath, "r", encoding="utf-8", errors="ignore") as f:
code_content += f"\n\n# {filepath}\n{f.read()}"
message = client.messages.create(
model="claude-sonnet-5-20260401",
max_tokens=4096,
messages=[{
"role": "user",
"content": f"以下のコードベース全体をレビューし、セキュリティ問題・パフォーマンス問題・設計上の改善点を列挙してください:\n\n{code_content}"
}]
)
return message.content[0].text
result = review_codebase("./src")
print(result)
Sonnet 5の料金はSonnet 4.6と同額に据え置かれている。
| モデル | 入力(per Mトークン) | 出力(per Mトークン) | コンテキスト |
|---|---|---|---|
| Claude Sonnet 5 | $3.00 | $15.00 | 2M tokens |
| Claude Sonnet 4.6 | $3.00 | $15.00 | 1M tokens |
| Claude Opus 4.6 | $15.00 | $75.00 | 1M tokens |
| Claude Haiku 4.5 | $0.25 | $1.25 | 200K tokens |
同じシステムプロンプトを繰り返し使うアプリケーションでは、プロンプトキャッシュ(90%割引)とバッチAPI(50%割引)を組み合わせることで最大95%のコスト削減が可能だ。
import anthropic
client = anthropic.Anthropic()
# プロンプトキャッシュを使った呼び出し例
# 長いシステムプロンプトをキャッシュして再利用
SYSTEM_PROMPT = """
あなたはPythonの上級エンジニアです。
コードレビューでは以下の観点でチェックしてください:
1. セキュリティ(SQLインジェクション、XSS、認証の抜け)
2. パフォーマンス(N+1クエリ、不要なループ、メモリリーク)
3. 可読性(変数名、関数の責務分離、コメント)
4. テスト容易性(依存性注入、モック可能な設計)
""" * 10 # 大量のコンテキストが必要な場合を想定
message = client.messages.create(
model="claude-sonnet-5-20260401",
max_tokens=1024,
system=[
{
"type": "text",
"text": SYSTEM_PROMPT,
"cache_control": {"type": "ephemeral"} # キャッシュ有効化
}
],
messages=[{
"role": "user",
"content": "以下のコードをレビューしてください:\n\ndef get_user(user_id):\n query = f'SELECT * FROM users WHERE id = {user_id}'\n return db.execute(query)"
}]
)
print(message.content[0].text)
# usage.cache_read_input_tokens でキャッシュヒット数を確認できる
print(f"キャッシュヒット: {message.usage.cache_read_input_tokens} tokens")
Sonnet 5の内部アーキテクチャには「蒸留推論(distilled reasoning)」という新しいアプローチが採用されていると報告されている。
この「蒸留推論」は、フラッグシップ規模のモデルが獲得した推論パターンを、より効率的なアーキテクチャに転写する手法だ。結果として、Sonnet 5はOpus 4.6と同等以上の推論精度を持ちながら、応答速度と価格ではOpusを大きく下回る。
また、コンテキストウィンドウがSonnet 4.6の1Mトークンから2Mトークンに倍増した。100万トークンが約75万単語に相当することを考えると、2Mは「中規模プロジェクトのソースコード全体」を一度に入力できる容量だ。
既存のClaude APIアプリケーションをSonnet 5に移行する場合、モデルIDの文字列を1箇所変更するだけで動作する。APIのレスポンス形式・ツール定義・function callingのスキーマはSonnet 4.6と互換性が維持されている。
# 移行前:Sonnet 4.6
model = "claude-sonnet-4-6"
# 移行後:Sonnet 5(これだけでOK)
model = "claude-sonnet-5-20260401"
# または、常に最新Sonnet 5を参照するエイリアス
model = "claude-sonnet-5-latest"
Claude Code Auto Modeのような自動化ワークフローでSonnetシリーズを使っている場合も、設定ファイルのモデルIDを書き換えるだけで移行できる。環境変数での管理を推奨する。
# .envファイルまたはCI/CDの環境変数
ANTHROPIC_MODEL=claude-sonnet-5-20260401
ANTHROPIC_API_KEY=sk-ant-...
# Pythonコードで読み込む場合
# import os
# model = os.environ.get("ANTHROPIC_MODEL", "claude-sonnet-5-20260401")
移行後に確認すべき主なポイントを以下にまとめた。
| 確認項目 | 内容 | Sonnet 5での変化 |
|---|---|---|
| レスポンス形式 | message.content[0].text の構造 |
変化なし |
| ツール定義(function calling) | toolsパラメータのスキーマ |
変化なし |
| ストリーミング | stream=Trueの動作 |
変化なし |
| コンテキスト長 | 入力可能なトークン上限 | 1M → 2Mに拡大 |
| レイテンシ | 初回トークンまでの時間 | 蒸留推論により改善 |
| 料金 | 入力$3/出力$15 per Mトークン | 変化なし |
OSWorld-Verified 88.3%という数値は、PCのGUIを直接操作するエージェントの実用化を大きく前進させる。ブラウザを開く・フォームを入力する・ファイルを操作するといったデスクトップ自動化タスクで、人間の専門家水準を超えた精度が確認された。
Claude CodeやOpenHandsのようなAIコーディングエージェントがSonnet 5をバックエンドとして採用すれば、バグ修正・PR作成・テスト実行の自動化精度が大幅に向上する。実際、Claude Code Auto Modeの次期バージョンでSonnet 5をデフォルトモデルとして採用することが期待されている。
# 用途別のモデル選択ガイド(2026年4月時点)
MODEL_GUIDE = {
# コーディング・バグ修正・コードレビュー
"coding": "claude-sonnet-5-20260401",
# AIエージェント・PC操作自動化・ツール呼び出し
"agent": "claude-sonnet-5-20260401",
# PhD級の科学・数学・論理推論
"science_reasoning": "claude-sonnet-5-20260401",
# 長文PDF・大規模ドキュメントの処理
"long_document": "claude-opus-4-6", # 実績ある長文処理
# 高速チャット・大量のシンプルな分類タスク
"fast_chat": "claude-haiku-4-5-20251001",
# Sonnet 4.6との互換性が必要な既存システム
"legacy_compat": "claude-sonnet-4-6",
}
# 推奨:新規開発はSonnet 5から始める
DEFAULT_MODEL = "claude-sonnet-5-20260401"
Sonnet 5のリリース直後であるため、以下の点は継続的に確認が必要だ。
この記事はAI業界の最新動向を速報でお届けする「AI Heartland ニュース」です。