ガイド一覧へ戻る
トラブルシューティング·2026年7月17日·読了6分

Claude API 529 overloaded_error — その意味と切り抜け方

529はコードが原因ではないClaudeのエラーです。Anthropic自体が過負荷になっています。修正はできず、優雅に吸収するしかありません。つまり、忍耐強い再試行、フォールバックモデル、そして即時再試行の嵐で障害を増幅しないことが必要です。

最終確認日:。

529はコードが原因ではないClaudeのエラーです。Anthropic自体が過負荷になっています。修正はできず、優雅に吸収するしかありません。つまり、忍耐強い再試行、フォールバックモデル、そして即時再試行の嵐で障害を増幅しないことが必要です。

エラー

response (HTTP 529)
{
  "type": "error",
  "error": { "type": "overloaded_error",
             "message": "Overloaded" }
}

原因と対処法の概要

原因対処法
プロバイダー側の飽和(ローンチ日、地域障害)ジッター付きバックオフを使い、アプリを再デプロイするのではなくプロバイダーのステータスページを確認します。
軽微な障害中にバーストが到達した場合バッチジョブを分散します。通常、10分の遅延で解消します。

適切な利用者として再試行する

529はretry-afterのない429として扱います。約2秒から始める指数バックオフ、ジッター、30–60秒の上限、約5回での打ち切り、そして処理のキュー投入を行います。429ガイドのバックオフ用スニペットは、同じ分岐で529にも対応します。

失敗し続けるのではなくフェイルオーバーする

レイテンシが重要な経路ではフォールバックを定義します。同じファミリー(Sonnet → Haiku)なら挙動を近く保て、プロバイダー間(Claude → GPT)ならプロバイダー全体の障害にも耐えられます。OpenAI互換エンドポイントでは、文字列1つを変更するだけです。

failover.py
PREFERRED = ["claude-sonnet-5", "claude-haiku-4-5", "gpt-5-6-terra"]

def complete(messages):
    last = None
    for model in PREFERRED:
        try:
            return client.chat.completions.create(
                model=model, messages=messages, max_tokens=800)
        except APIStatusError as e:
            if e.status_code not in (429, 500, 529):
                raise
            last = e          # saturated — try the next tier
    raise last

Kunavo経由で呼び出している場合

KunavoはClaudeを複数の上流経路に振り分け、マルチモデルカタログにより、同じキーとウォレットのままモデル文字列を変更してプロバイダー間フェイルオーバーを行えます。上記のフェイルオーバーパターンに2つ目のアカウントは不要です。到達した529に対しても請求は発生しません。 容量と価格は別の問題です。後者については、モデルごとの料金が Anthropic Claude API料金表.

よくある質問

529は私のミスですか?

いいえ。プロバイダー側の容量問題です。あなたの責任は、バックオフとジッターで障害を増幅しないこと、そして障害がレイテンシ予算を超えた場合にフェイルオーバー先を用意することだけです。

529と429の違いは?

429は自分の制限を超えたことを意味します(サーバーは正常)。529はサーバー自体が過負荷であることを意味します(クォータは正常)。どちらも再試行可能ですが、retry-afterのヒントが付くのは429だけです。

関連ガイド

エラーの詳しい意味はエラーリファレンスをご覧ください。キーは新規登録と認証ガイドから1分で取得できます。