Claude Sonnet 5.5 導入ガイド:選び方、料金、Sonnet 5 からの移行

Anthropic 公式ガイドを読み解きます。Sonnet 5.5 と Opus 5.5 の使い分け、単価は同じなのに請求額が変わる理由、そして移行時に必要な破壊的変更を整理しました。

著者:Addy Osmani09-29 · 约 12 分钟
🎧 ポッドキャスト版0:00 / --:--
0:00 / --:--

Anthropic が Claude Sonnet 5.5 を公開しました。Opus 5.5 に続く 5.5 ファミリー2つ目のモデルです。Anthropic によると、Sonnet 5 より賢く、トークン効率が良く、30% 高速です。トークン単価は据え置きですが、同じ仕事に必要なトークンが通常は少なくなるため、多くの用途で請求額は最大 30% 下がり得ます。

この記事は、Anthropic のエンジニア Addy Osmani が公式ブログ claude.dev に書いた導入ガイドです。発表会のようなベンチマークの話はせず、開発者が知りたい3点に答えています。Sonnet 5.5 と Opus 5.5 のどちらを選ぶか、料金はどう計算されるか、Sonnet 5 から移行するときにコードのどこを直す必要があるかです。この解説もその順に進め、パラメータとコードはできるだけ原文のまま残しているので、そのまま参考に書き換えられます。

まず直感的な比較:コードで写真を描き直させる

記事の冒頭には Lance Martin のデモがあります。夕暮れの都市の空撮写真を3つのモデルに渡し、それぞれに Python コードで写真を「描き直させる」ものです。画像生成モデルは使っておらず、画面の一筆一筆はモデルが書いたコードが描いています。

Lance Martin の code-to-painting デモ:各モデルがコードを書いて同じ写真を描き直します。最後の4枚は左から順に、写真、Claude Sonnet 5、Claude Sonnet 5.5、Claude Opus 5.5。発想は @jkeatn、参照画像は @IceSolst に謝意を表します。

動画の過程と結果を見ると、違いははっきりしています。

  • Sonnet 5 は空のグラデーションはきれいですが、街は縦長の色ブロックが並んだだけで、中央に不自然に明るい黄色の細長い帯が立っています。橋と川も平面に単純化されています。
  • Sonnet 5.5 は街区がびっしり詰まった質感を描き、中央の建物群には明暗と反射があります。手前には橋、白い高層ビル、青い屋根の小さな建物もあり、全体の色調と奥行きが写真に近くなっています。
  • Opus 5.5 は動画の結果を見る限り、Sonnet 5.5 と同程度の細かさで、建物の輪郭がよりすっきりし、橋も細かく描かれています。Anthropic はこの3枚に点数を付けておらず、以上は絵を見た印象です。

各キャンバスの下には「engine calls」というカウンターも出ます。モデルはまず自前の「ブラシエンジン」を書き、それを何度も呼び出して色を塗っていきます。最終的に Sonnet 5 は 12,249 回、Sonnet 5.5 は 44,561 回で、約 3.6 倍です。5.5 のほうが細かく描いたことは分かりますが、これはこのデモでのブラシエンジンの呼び出し回数であり、トークン使用量でも価格でもないので、コストの推定には使えません。また、これは1回のデモ・1枚の写真であり、Anthropic は評価点も Opus 5.5 の呼び出し回数も示していません。

まず動かす:必ず押さえたい書き方

記事には、そのまま実行できる最小のリクエストが載っています。

import anthropic

client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=4096,
    messages=[
        {
            "role": "user",
            "content": "Analyze the trade-offs between microservices and monolithic architectures",
        }
    ],
    output_config={"effort": "medium"},
)

for block in response.content:
    if block.type == "text":
        print(block.text)

最後のループに注目してください。content[0].text を直接読むのではなく、各コンテンツブロックの種類(block.type)でテキストを取り出しています。理由は、Sonnet 5.5 はデフォルトで思考するため、レスポンスの最初のブロックが thinking ブロックになることがあり、最初のブロックのテキストを読むとエラーになるからです。既存コードが content[0].text を読んでいるなら、移行時に最初にここを直してください。

Sonnet 5.5 と Opus 5.5 のどちらを選ぶか

Anthropic の線引きは明快です。Opus 5.5 は慎重な判断が必要な複雑な仕事向け、Sonnet 5.5 はバグ修正や機能の素早い反復など、範囲が明確な日常タスク向けです。文書、スライド、表計算もそれなりに仕上げられ、Anthropic は「デザインへの目が確か」と述べています。速いので、繰り返しの修正にも向きます。Haiku 5.5 は数週間以内にファミリーに加わり、大量処理・低遅延の用途向けになります。

ワークロード 最初に選ぶもの
範囲が明確な日常のコーディング:バグ修正、機能の素早い反復、要件に照らした検証 Sonnet 5.5
大量の日常的な開発 Sonnet 5.5
デザインのセンスが効く文書・スライド・表計算:1枚資料、図解、まとめスライド、文書の修正、表の整理 Sonnet 5.5
繰り返し実行する、定義の明確な Agent タスク:調査、レビュー、下書き Sonnet 5.5
慎重な判断が必要な複雑な仕事。長時間の Agent 型コーディング(モデルが自分で何段階も進める)やナレッジワークを含む Opus 5.5
最も難しい問題で、最高の知能が必要なもの Opus 5.5

より実用的な基準は、タスクに明確な仕様があり、結果を確認する手段もあるなら、Sonnet 5.5 が向いているということです。公式のプロンプトガイドにも、最も難しい長時間の仕事には Opus のほうが適しているとあります。

Epic Games の COO、Daniel Vogel は早期テストの後、次のように評価しています。Sonnet 5.5 は、システム設計の監査とデータフローのレビューで、上位モデルに期待する品質水準に達し、ゲームのシステムアーキテクチャの数万行のコードを扱い、応答は素早く、数時間に及ぶ作業をこなし、細かい指示も必要としませんでした。

料金:単価は同じでも、請求額は変わる

Sonnet 5.5 の料金(100万トークンあたり、米ドル)を Opus 5.5 と並べると次のとおりです。

100万トークンあたり Sonnet 5.5 Opus 5.5
入力 $2 $4
出力 $10 $20
キャッシュ書き込み(5分) $2.50 $5
キャッシュ書き込み(1時間) $4 $8
キャッシュ読み取り $0.20 $0.20

Sonnet 5.5 のバッチ処理やプロンプトキャッシュを含むすべての価格は Sonnet 5 とまったく同じなので、モデル ID を差し替えてもトークン単価は変わりません。米国内限定の推論(inference_geo: "us")は標準価格の 1.1 倍です。

変わるのは総額です。Anthropic によると、Sonnet 5.5 は同じタスクで Sonnet 5 より使うトークンが通常は少なくなります。つまり「単価が同じ」は「支出が同じ」ではありません。切り替えた後は、自分の実際の使用量を確認してください。

見落としやすい点がもう2つあります。

  • デフォルトの effort が違います。 effort はモデルがどれだけ考えるかを制御する設定です。製品ごとに Sonnet のデフォルトが異なり、Claude Platform では high、Claude Code では medium です。同じモデルでも、この2か所で挙動とコストが違う可能性があるので、片方での体験をもう片方にそのまま当てはめないでください。
  • 画像は高くなります。 Sonnet 5.5 は高解像度の画像ティアを使い、長辺は最大 2576 ピクセルです。2000×1500 の画像は、Sonnet 4.6、Sonnet 4.5、Haiku 4.5 の約 2.5 倍のトークンを消費します。細部が不要なら、送る前に縮小してください。

スペック早見表

項目 Sonnet 5.5
モデル ID Claude API、Claude Platform on AWS、Google Cloud、Microsoft Foundry では claude-sonnet-5-5。Amazon Bedrock では anthropic.claude-sonnet-5-5
コンテキストウィンドウ 1M トークン。ネイティブ対応で beta ヘッダー不要
最大出力 128k トークン。Message Batches API では output-300k-2026-03-24 beta ヘッダーで 300k まで
知識のカットオフ 2026年6月
思考 デフォルトでオン(適応的思考)。between_tools で冒頭の思考をオフにできる
effort レベル low、medium、high、xhigh、max
デフォルトの effort Claude API では high、Claude Code では medium
トークナイザー Sonnet 5 と同じ
キャッシュ可能な最小プロンプト 512 トークン(Sonnet 5 は 1,024)
レート制限 Sonnet 5 とは別枠で、デフォルトのティア値は同じ
Priority Tier Claude API で利用可能
データ保持 対象のお客様はゼロデータ保持を利用可能

Claude API のデフォルトが high なのは、最初から良い結果を得られるようにするためです。Anthropic は、まず high で評価し、そのうえで自分のワークロードに必要な effort を選ぶことを勧めています。xhigh や max を使いたくなったときは、モデルがより長く考えてコストも増えること、そして一部のタスクでは Sonnet の持ち味である品質・速度・コストのバランスを失いかねないことを念頭に置いてください。その場合は Opus 5.5 を検討します。

Sonnet 5 からの移行:モデル ID を変え、6つの項目を確認する

まずモデル ID を claude-sonnet-5-5 に変えます。次に、破壊的な変更5つ(多くは 400 エラーを返します)と、エラーにはならないが UI の表示が減りかねない変更1つに対応します。それぞれの詳細は公式の Sonnet 5.5 移行ガイドにあります。

Anthropic は手軽な方法も用意しています。Claude Code で /claude-api migrate this project to claude-sonnet-5-5 を実行すると、組み込みの Claude API スキルが呼び出され、モデル ID の差し替えと、コードベース全体の破壊的なパラメータ変更への対応を行います。

1. 冒頭の思考をオフにするには between_tools を使う

Sonnet 5.5 では、thinking フィールドのないリクエストは適応的思考で動き、thinking: {"type": "disabled"} は 400 エラーを返します。冒頭の思考をオフにするには、新しい between_tools を使います。モデルはツール呼び出しの間だけ考え、総応答時間は同じか、より速くなります。

# Before: Claude Sonnet 5
client.messages.create(
    model="claude-sonnet-5",
    max_tokens=16000,
    thinking={"type": "disabled"},
    output_config={"effort": "xhigh"},
    messages=[{"role": "user", "content": "..."}],
)

# After: Claude Sonnet 5.5
client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=16000,
    thinking={"type": "between_tools"},
    output_config={"effort": "high"},
    messages=[{"role": "user", "content": "..."}],
)

この例では effort も xhigh から high に下げています。between_tools には次の制限があるためです。

  • low、medium、high の3段階のみ対応です。xhigh や max では 400 エラーになり、その段階で動かすには適応的思考が必要です。
  • ほかのフィールドは受け付けません。display、budget_tokens、block_binding を一緒に送ると、これも 400 です。
  • 使用中は、会話の途中で effort を変えられません。ターンごとに変えたいなら適応的思考を使います。
  • モデルがツール呼び出しの間に書く短い進捗メモは、要約テキスト付きの thinking ブロックとして返ってきます。そのため、コンテンツブロックは種類で読み、これらのブロックは、そのアシスタントターンの残りとともにそのまま送り返してください。ツールがなければ、レスポンスはテキストのみです。
  • Sonnet 5.5 を提供するすべてのプラットフォームで beta ヘッダーなしで動きます。SDK に between_tools の定義がなければ、更新してください。

また、between_tools で冒頭の思考をオフにした場合、ツールを使わず、いくつかの推論ステップが必要なリクエストには、適応的思考のほうが向いています。

2. tool_choice の強制指定は使えなくなった。auto と strict ツールを使う

tool_choice の type が any または tool だと、トークンカウントのエンドポイントを含め、400 エラーを返します。代わりに auto を送り、ツールに strict: true(入力をスキーマに厳密に合わせる指定)を付け、いつそのツールを使うかをプロンプトに書きます。

weather_tool = {
    "name": "get_weather",
    "description": "Get the current weather in a given location",
    "input_schema": {
        "type": "object",
        "properties": {"location": {"type": "string"}},
        "required": ["location"],
        "additionalProperties": False,
    },
    "strict": True,
}

client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=1024,
    tools=[weather_tool],
    tool_choice={"type": "auto"},  # was {"type": "tool", "name": "get_weather"}
    messages=[
        {"role": "user", "content": "What's the weather in Paris? Use the get_weather tool."}
    ],
)

strict なツール使用では、すべてのオブジェクトに additionalProperties: false が必要です。

3. 会話は追記のみにする

Sonnet 5.5 の thinking ブロックは、モデルとその会話に結び付いています。Sonnet 5.5 は Sonnet 5 の thinking ブロックを読めるので、Sonnet 5 から Sonnet 5.5 に切り替えた会話でも、それまでの推論は残ります。ただし、ほかのどのモデルも Sonnet 5.5 のブロックを読めません。つまり、5.5 の会話履歴を別のモデルに渡して続けさせてはいけません。

4. コンピューター操作は toolset に移す

Claude API と Google Cloud では、Sonnet 5.5 はコンピューター操作(モデルが画面を操作すること)を {"type": "computer_toolset_20260801"} 経由でのみサポートします。旧来の computer_20251124 を宣言すると 400 エラーです。直すべき点はかなり多くあります。

  • リクエストから anthropic-beta: computer-use-2025-11-24 ヘッダーを外します。SDK では betas パラメータを削除し、beta 名前空間ではなく標準クライアントで Messages API を呼び出します。
  • tools のエントリを置き換え、Agent ループを更新して、メンバーの tool_use ブロック、バッチアクション、結果の toolset_name を扱えるようにします。
  • fine-grained-tool-streaming-2025-05-14 の beta ヘッダーを送っている場合も外します。toolset のエントリと一緒だと 400 エラーになるためで、代わりにストリーミングが必要な各ツールに eager_input_streaming: true を設定します。
  • Amazon Bedrock は、今のところ computer_20251124 を受け付けます。

5. advisor の組み合わせを確認する

advisor ツールは、1つのモデル(実行役)がより強いモデル(アドバイザー)に相談する仕組みです。実行役が Sonnet 5.5 の場合、Opus 4.8、Opus 4.7、Sonnet 5 はアドバイザーとして拒否されます。受け付けられるのは、Opus 5.5、Opus 5、そして Sonnet 5.5 自身などです。受け付けられたアドバイザーの助言はすべて暗号化され、advisor_redacted_result ブロックに入って返るため、コードから助言のテキストは読めません。

6. ツール呼び出しの間のテキストは thinking ブロックから読む

この変更ではエラーは出ませんが、ツール呼び出しの間にモデルが書くメモが UI に表示されなくなる可能性があります。1〜2文を超えるメモは、進捗更新の thinking ブロックとして返るようになり、そのブロックはデフォルトの display では空です。

適応的思考では、thinking.display を "updates"(beta、thinking-display-updates-2026-08-18 ヘッダーが必要)または "summarized" に設定し、空でない thinking ブロックを、直後の tool_use ブロックより前に描画します。between_tools では、display なしでテキストが返ります。

Sonnet 5.5 には、メッセージ単位の effort(beta)、会話途中のシステムメッセージ、会話途中のツール変更(beta)も加わりました。Sonnet 4.6 以前や Haiku 4.5 から移行する場合は、移行ガイドに移行元モデルごとのチェックリストがあります。

チューニング:パラメータをいじる前にやるべきこと

effort のスイープをやり直す。 effort の段階は再調整されており、同じ段階でも Sonnet 5 と同じ量だけ考えるわけではないので、以前の設定は引き継げません。Anthropic が示す出発点は次のとおりです。

  • Agent 型やレイテンシに敏感な用途でなければ、まず high から始める。
  • Agent 型コーディングやマルチステップのツール利用では、仕様が明確なタスクは medium から始め、難しいもの・長いものは high に上げる。
  • チャットやその他のレイテンシに敏感な用途は、medium か low から始める。
  • xhigh や max は、評価で品質向上が確認できる場合だけ使う。

思考は max_tokens にも含まれるので、余裕を持たせてください。Agent 型コーディングでは、max_tokens をモデルの上限である 128,000 に設定し、ストリーミングで受け取ります。思考を減らしたいときは effort を下げてください。システムプロンプトで「あまり考えないで」と頼んでも、確実には減りません。

Sonnet 5 向けの回避策を外す。 既存の Sonnet 5 のプロンプトは、変更なしでも良く動くはずです。拒否を避けるための誘導、ツール呼び出しのリトライ用の継ぎ足し、「怠けるな」といった一文などがあれば、外して評価をやり直してから、ほかの調整に進んでください。

低 effort では、実際の確認を求める。 Sonnet 5.5 は通常、変更を完了と報告する前に自分の作業を確認しますが、低 effort では、その変更を実際に検証する確認を省くことがあります。テストやビルドの出力なしに「完了」と報告される場合、Anthropic のプロンプトガイドは、次の段落をシステムプロンプトに加えることを勧めています(原文のまま、そのままコピーできます)。

When you change code that can be run, built, or type-checked, run a real
check that exercises the change before reporting it done: the project's
tests, type-checker, or build, or the changed command itself. A syntax-only
check, or a check command that failed to start, does not count; if all
that is missing is the project's declared dependencies, install them with
its own package manager and lockfile (e.g. npm install, pip
install -r requirements.txt), never via sudo or the system package manager,
unless told not to. Only if no real check can run here, say which one you
did not run and why instead of reporting the change as done.

要点は、実行・ビルド・型チェックができるコードを変更したら、完了を報告する前に、その変更を実際に検証する確認を1回実行すること。構文チェックだけの確認や、起動に失敗した確認コマンドは数えない。足りないのがプロジェクトの宣言済みの依存関係だけなら、プロジェクト自身のパッケージマネージャーとロックファイルでインストールし、禁止されていない限り sudo やシステムのパッケージマネージャーは使わない。本当に実行できる確認がなければ、変更を完了と報告するのではなく、どの確認を実行しなかったか、その理由とともに伝える、というものです。

進捗を見たいなら thinking.display を読み、応答に推論を書かせない。 モデルに推論を書き出させると、reasoning_extraction の拒否を招きます。思考の進捗を表示したいときは、要約された thinking を読みます。

thinking={"type": "adaptive", "display": "summarized"}

ユーザー向けの進捗メモだけが欲しい場合は、display: "updates"(beta)を使えます。最初のツール呼び出しの前に1行、最後に短いまとめ、というように更新を予測できる位置に出したいときは、システムプロンプトでそう指示します。

プロンプトをより多くキャッシュする。 キャッシュ可能な最小プロンプトが 512 トークンに下がったので、短いシステムプロンプトやツール定義もキャッシュ対象になります。Sonnet 5.5 では、キャッシュ読み取りの料金は入力価格の10分の1です。注意点として、リクエスト間でトップレベルの effort を変えるとキャッシュが無効になります。1ターンだけ別の段階で動かしたいときは、キャッシュを保てるメッセージ単位の effort(beta)を使います。

リクエストが拒否されたとき

Anthropic の自動化された行動監査では、Sonnet 5.5 は、アラインメントと誠実さのほとんどの指標で Sonnet 5 を上回るか同等です。また、Anthropic の最も高性能なモデルに近いサイバーセキュリティのセーフガードを備えた最初の Sonnet モデルでもあります。Anthropic は、通常のソフトウェア開発の大半には影響しないとしています。

リクエストが拒否された場合、API は HTTP 200 を返しますが、stop_reason は "refusal" になり、stop_details に5つのカテゴリのいずれかが入ります。cyber、bio、frontier_llm、reasoning_extraction、general_harms です。

サーバー側フォールバック(fallbacks: "default"、beta、Claude API)は、cyber と frontier_llm の拒否を Sonnet 5 で再試行します。ほかの3つは再試行しません。SDK のミドルウェアや自前のリトライも使えます。正当なセキュリティ業務向けには、Cyber Verification Program がまもなく Sonnet 5.5 にも拡大される、と Anthropic は述べています。

どこで使えるか

Sonnet 5.5 は本日、以下のプラットフォームで利用でき、モデル ID は次のとおりです。

  • Claude API:claude-sonnet-5-5
  • Amazon Bedrock:anthropic.claude-sonnet-5-5
  • Claude Platform on AWS:claude-sonnet-5-5
  • Google Cloud:claude-sonnet-5-5
  • Microsoft Foundry:claude-sonnet-5-5(Global Standard デプロイのみ)

Claude Code では、v2.1.284 から(TypeScript 版 Agent SDK は v0.3.284 以降)、sonnet エイリアスは Claude API 上で Sonnet 5.5 を指します。デフォルトは medium の effort で、1M コンテキストはネイティブ対応です。Claude Code では Sonnet 5.5 の思考をオフにできず、effort がモデルの思考量を決めます。また fast mode はありません。 デフォルトのモデルは引き続き Opus 5.5 です。範囲が明確なタスクで Sonnet を使うには、/model sonnet で切り替えます。

出典
Building with Claude Sonnet 5.5Addy Osmani(claude.dev 官方博客)·2026-09-28·原文を見る
↑ 本文ここまで
✓ この記事は全文無料です

メンバーは全文 Markdown のコピー・保存に加え、自分の AI に購読・質問させることができます。

原文を読む ↗
📮 新着解説をメールでいち早く

役に立ちましたか?メールを登録すると、新着解説を公開と同時にお届けします。解除はいつでも。