CLAUDE LABEN
FABLE5 — Claude Fable 5が公開(6/9)。Opusを上回るMythosクラス初の一般提供モデルで、100万トークンコンテキスト・128k出力・常時適応思考を搭載FREE-WINDOW — Fable 5は6/22までPro/Max/Team/Enterpriseに無料同梱。6/23以降はusage creditsが必要。APIは入力$10/出力$50 per MTokSAFEGUARDS — Fable 5は高リスク領域の質問をOpus 4.8へ自動フォールバック(発動はセッションの5%未満)。制限解除版のMythos 5は審査済み組織限定IPO — AnthropicがIPOを機密申請(6/1)。直近調達$65B・評価額$965B・年換算売上$47Bと報道BILLING — 6/15の課金変更まで残り3日。Agent SDK・headless Claude Code・GitHub Actions・他社エージェントがAPIレート準拠の月次クレジットへ移行しますPLATFORM — Claude Developer PlatformにManaged Agentsのスケジュールデプロイ・vault環境変数クレデンシャル・セッションスレッドWebhookが追加FABLE5 — Claude Fable 5が公開(6/9)。Opusを上回るMythosクラス初の一般提供モデルで、100万トークンコンテキスト・128k出力・常時適応思考を搭載FREE-WINDOW — Fable 5は6/22までPro/Max/Team/Enterpriseに無料同梱。6/23以降はusage creditsが必要。APIは入力$10/出力$50 per MTokSAFEGUARDS — Fable 5は高リスク領域の質問をOpus 4.8へ自動フォールバック(発動はセッションの5%未満)。制限解除版のMythos 5は審査済み組織限定IPO — AnthropicがIPOを機密申請(6/1)。直近調達$65B・評価額$965B・年換算売上$47Bと報道BILLING — 6/15の課金変更まで残り3日。Agent SDK・headless Claude Code・GitHub Actions・他社エージェントがAPIレート準拠の月次クレジットへ移行しますPLATFORM — Claude Developer PlatformにManaged Agentsのスケジュールデプロイ・vault環境変数クレデンシャル・セッションスレッドWebhookが追加
記事一覧/Claude Code
Claude Code/2026-06-12中級

Claude Code の fallbackModel を三段構成にする — 過負荷の朝でも止まらない無人実行の設計記録

Claude Code の fallbackModel を三段構成で運用し、過負荷時も夜間バッチを止めない設計を実測つきでまとめます。実行モデルの記録方法、下位モデルに落ちた日の品質差への備え、deny ルール併用まで。

claude-code116fallbackmodelautomation34scheduled-jobsreliability3

プレミアム記事

6月のある朝、Crashlytics のトリアージレポートが空のまま届いていました。私は個人開発のアプリ運用で、毎朝6時に headless の Claude Code(claude -p)にクラッシュログの分類を任せているのですが、その日のログには overloaded_error(HTTP 529)が3回並び、リトライ上限に達して終了していました。再試行だけに頼った設計の弱さを突きつけられた出来事です。クラッシュの放置は AdMob の収益低下やストアレビューの悪化に直結するため、このトリアージは私の運用の中で最も止めたくないバッチでした。

直近30日のログを集計すると、529 で朝のバッチが空振りした日は4日ありました。月にして約13%の欠損です。人間が画面の前にいれば「少し待ってもう一度」で済みますが、無人実行ではその「少し待つ」をどれだけ重ねても、過負荷が続く朝には勝てません。そこで Claude Code に追加された fallbackModel 設定を使い、モデル自体を順次切り替える三段構成へ移行しました。この記事はその設計と、実際に運用して分かった注意点の記録です。

再試行ループだけでは越えられなかった壁

移行前の私のスクリプトは、よくある指数バックオフでした。

#!/bin/bash
# Before: 同一モデルへの再試行のみ。過負荷が続く朝は全滅する
PROMPT_FILE="$HOME/ops/crashlytics_triage_prompt.md"
for i in 1 2 3; do
  if claude -p "$(cat "$PROMPT_FILE")" > /tmp/triage_result.md 2>/tmp/triage_err.log; then
    exit 0
  fi
  sleep $(( i * 60 ))  # 1分 → 2分 → 3分
done
echo "triage failed after 3 attempts" >&2
exit 1

このコードの問題は、再試行しても同じモデルの同じ混雑にぶつかり続けることです。529 はサーバー側の過負荷なので、数分のバックオフで解消する日もあれば、30分以上続く日もあります。空振りした4日のログを見返すと、3回の再試行はいずれも最初の失敗から6分以内に使い切られていました。混雑のピークはそれより長く続いていたわけです。

fallbackModel の配列指定で何が変わるのか

Claude Code の fallbackModel は、settings.json に配列で最大3モデルまで指定でき、プライマリモデルが過負荷などで応答できないときに別のモデルへ順次切り替えて実行を続けます。再試行が「同じ窓口に並び直す」行為だとすれば、フォールバックは「空いている隣の窓口へ移る」行為です。混雑の質が違う窓口に移れることが、無人実行では決定的に効きます。

// After: .claude/settings.json — 過負荷時は別モデルへ順次切り替え
{
  "model": "claude-fable-5",
  "fallbackModel": ["claude-opus-4-8", "claude-sonnet-4-6"]
}

設定はこれだけで、スクリプト側の変更は不要です。移行後の30日間で、プライマリが応答できずフォールバックが発動した朝は3回ありましたが、バッチが空振りした日はゼロになりました。529 の発生そのものは止められなくても、結果の欠損は止められます。

一点、運用して分かった注意があります。fallbackModel が効くのは過負荷やモデル利用不可のエラーに対してであり、タイムアウトには効きません。常時適応思考を持つモデルをプライマリに置くと、簡単に見えるタスクでも思考量が増えて所要時間が読みにくくなることがあります。私自身はバッチ全体のタイムアウトを従来の1.5倍に広げました。フォールバックだけでは対処できない失敗モードが残る前提で、タイムアウトは別の保険として設計することを推奨します。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
Fable 5 → Opus 4.8 → Sonnet 4.6 と並べる三段 fallbackModel 構成の設定例と選定基準
stream-json の init メッセージから実行モデルを取り出して CSV に記録する bash 実装
Sonnet 4.6 へ落ちた日の分類一致率90%という実測と、そこから決めた2つの運用ルール
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

Claude Code2026-06-10
git add -A が .bak バックアップまで巻き込む — in-place 修正スクリプトと自動コミットの落とし穴
sed -i や自作の --fix スクリプトが残す .bak バックアップを git add -A が無言で取り込み、本番リポジトリに混入させてしまう問題。なぜ気づきにくいのか、scoped add と .gitignore でどう塞ぐかを実例で整理します。
Claude Code2026-06-09
前回の記事本文が別の記事に紛れ込む — 固定名の一時ファイルに残る残骸の罠
Claude Code の自動化で、固定名の一時ファイルに前回の中身が残り、まったく別の記事に古い本文が混入する。書き込みが無音で失敗する仕組みと、ユニーク名+挿入後の grep 照合で防ぐ方法を記録します。
Claude Code2026-06-03
Claude Code で git push が「成功」したのに反映されない — commit が無音で失敗する罠
git push がエラーを出さず Everything up-to-date と表示されるのに、変更がリモートに反映されない。clone 直後の identity 未設定で commit が無音失敗する原因と、SHA 照合で確実に検証する方法を解説します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →