この記事の目次
Claude Codeを使い始めると、まず戸惑うのがOpus・Sonnet・Haikuという3つのモデル名だ。それぞれの特徴を漠然と知っていても、目の前のコーディング作業でどれを選べばいいかを即座に判断できる人は少ない。この記事では、公式ドキュメントで確認できる範囲に沿って各モデルの性質を整理したうえで、作業内容ごとの選び方と、Sonnetで詰まったときにOpusへ切り替えるべき具体的なサインを解説する。
Opus・Sonnet・Haikuは何がどう違うのか?
Opusは精度を重視する設計、Sonnetは精度と速度のバランスを取った設計、Haikuは速度とコストの低さを重視した設計になっている。これはAnthropicの公式な説明で示されている位置づけであり、3モデルの違いは単なる「賢さのランク」ではなく、想定する使いどころそのものが異なる点にある。
精度重視のOpus、バランスのSonnet、速度・低コストのHaiku
公式ドキュメントの記述をもとに整理すると、3モデルはおおむね次のような軸で使い分けが想定されている。
| 比較軸 | Opus | Sonnet | Haiku |
|---|---|---|---|
| 精度・思考の深さ | 最も高い | 高い | 標準的 |
| 応答速度 | やや遅い | バランス型 | 速い |
| コスト目安 | 高め | 中程度 | 低め |
| 想定される用途 | 複雑な設計判断・難しい実装 | 日常的なコーディング全般 | 軽作業・繰り返し処理 |
この表はあくまで公式の説明に書かれている位置づけを整理したものであり、実際の体感は作業内容やプロジェクトの複雑さによって変わる。数値ベンチマークを断定的に示すものではなく、あくまで選び方の出発点として使ってほしい。
なぜ性質が分かれるのか
Anthropicは各モデルについて、精度・速度・コストのトレードオフをどこに置くかという設計思想を公開ドキュメントで説明している。ただし内部のモデル構造や学習方法の詳細までは公開されていないため、この記事では「公式に確認できる位置づけの違い」までに留め、非公開の技術的な根拠については踏み込まない。Claude Code自体の基本を先に押さえておきたい場合はClaude Codeとは何かも参考になる。
どのモデルをどんな作業で使えばいいのか?
モデル選びで迷ったときは、「タスクの複雑度」「やり直しの許容度」「コスト意識」の3つの軸で考えると判断しやすい。複雑で後戻りのコストが高い作業ほどOpus寄り、日常的で試行錯誤がしやすい作業ほどSonnetかHaiku寄りになる。
設計判断や難しい実装はOpusが向く場面
アーキテクチャの設計や、影響範囲が広い変更、バグの原因が特定しづらい複雑な調査には、Opusが向いている。やり直しのコストが高い作業ほど、最初から精度を重視したモデルを使ったほうが結果的に手戻りが少なくなりやすい。
日常的なコーディングはSonnetが基本線になる理由
ふだんの機能追加や修正、テストコードの作成といった作業では、Sonnetを基本線にしておくと精度と速度のバランスが取りやすい。多くの場面ではSonnetで十分な結果が得られるため、まずSonnetで進めてみて、詰まったときにOpusへ切り替えるという運用が現実的だ。
軽い作業・繰り返し処理はHaikuが向く場面
単純なリネーム、フォーマット調整、定型的なコメント追加のような繰り返し作業には、Haikuが向いている。判断の難易度が低く、間違っても修正コストが小さい作業であれば、速度とコストを優先したモデルを選ぶ判断が合理的だ。
利用上限やプランごとの違いを確認したい場合はClaude Codeの料金プラン比較を、モデルによらないプロンプトの基本設計を知りたい場合はプロンプトの書き方ガイドを参照してほしい。
「迷ったらSonnet」で本当にいいのか?Opusに切り替えるべきサインとは
「迷ったらSonnet」という判断は多くの場面で妥当だが、作業が行き詰まったサインが出たときはOpusへの切り替えを検討したほうがいい。同じ指示を何度も出している、あるいは同じ種類のエラーが形を変えて再発しているときが、その典型的なサインになる。
同じ指示を繰り返している/同じ種類のエラーが再発しているときのサイン
Sonnetに対して何度指示を出しても意図した結果に届かない場合や、修正したはずのエラーが別の形で再発する場合は、モデルの精度が問題の複雑さに追いついていない可能性がある。こうした場面でOpusに切り替えると、同じ情報量から得られる解決策の質が変わることがある。逆に言えば、数回のやり取りで解決している間は、無理にOpusへ切り替える必要はない。
モデルを切り替えても会話の文脈は引き継がれるのか
Claude Codeでは、セッション内でモデルを切り替えた場合でもそれまでの会話の文脈は保持される。ただし、切り替え前後でモデルの得意分野が異なるため、同じ文脈を与えても出力の質や方向性が変わることはある。文脈が失われるかどうかという点と、出力の質が変わるかどうかという点は別の話であり、公式に確認できるのは「文脈は引き継がれる」という事実までで、それ以上の挙動を断定するものではない。
モデルはどうやって切り替えるのか?
Claude Code内では/modelコマンドを使うことで、現在使用中のセッションのモデルをその場で切り替えられる。操作自体はシンプルで、覚えることは多くない。
/model コマンドでの切り替えと、今どのモデルが動いているかの確認方法
Claude Codeのプロンプト画面で/modelと入力すると、選択可能なモデルの一覧が表示され、その中から使いたいモデルを選べる。現在どのモデルが動作しているかは、同じく/modelコマンドを実行したときの表示や、セッション情報の表示で確認できる。作業の途中でOpusとSonnetを行き来しても、セッション自体は継続する。
CLAUDE.mdや起動オプションで既定モデルを指定する
個人利用の範囲では、CLAUDE.mdや起動時のオプションであらかじめ既定モデルを指定しておくこともできる。たとえばCLAUDE.mdに次のように書いておくと、そのプロジェクトを開いたときの初期モデルを固定できる。
# CLAUDE.md
model: sonnet
ただし、これはあくまで個人利用での軽い設定に留めた説明であり、チームでの運用ルールとして統一する場合の設計や権限管理は範囲外とする。詳しくはClaude Codeの運用ルールとCLAUDE.md設計を参照してほしい。設定ファイルでの指定方法をさらに細かく知りたい場合はsettings.jsonの設定ガイドやClaude Codeの基本操作ガイドも合わせて確認できる。
モデルの使い分けを「知識」から「判断力」に変えるには
ここまでの内容を読めば、Opus・Sonnet・Haikuの違いと、切り替えの判断軸は言葉として説明できるようになっているはずだ。だが実際の作業中に「今この瞬間、切り替えるべきか」を数秒で判断できる力は、知識を読んだだけでは身につかない。
判断軸を知っていることと、目の前のエラーを見た瞬間に迷わず動けることの間には距離がある。この距離を縮めるには、実際の作業でモデルを切り替えながら試し、うまくいった場面といかなかった場面を振り返るという反復が必要になる。ひとりで黙々と試すよりも、同じようにClaude Codeを使いながら学んでいる人たちの判断や失敗を横で見られる環境のほうが、その反復のサイクルは速く回りやすい。
「AI駆動ラボ」は、月額1,980円から参加できる学習コミュニティで、Claude Codeを実際の作業で使いながら判断力を養っていく場として運営されている。自分の手でモデルを選び、切り替え、結果を確かめるという一連の動きを繰り返しながら身につけていく場という位置づけだ。知識としての違いを理解した先の「使い分けが体に入っている状態」を目指したい場合は、AI駆動ラボをのぞいてみてほしい。
まとめ
Opus・Sonnet・Haikuは、精度・速度・コストのどこに重心を置くかが異なるモデルであり、優劣ではなく用途の違いとして捉えるのが実用的だ。設計判断や難しい実装にはOpus、日常的なコーディングにはSonnet、軽作業にはHaikuを基本線としつつ、同じ指示の繰り返しやエラーの再発といったサインが出たときにOpusへ切り替える、という運用がひとつの目安になる。切り替え自体は/modelコマンドで完結するシンプルな操作だが、その判断を瞬時にできるようになるには、実際に手を動かして試す反復が欠かせない。