DeepSeek APIが動作しない場合の対処方法:認証、支払い、レート制限エラーの修正
執筆:Nicho
DeepSeek APIのリクエストが失敗したときは、まずそのリクエストを受け取ったサービスを確認します。公式のDeepSeekキー、ゲートウェイのキー、コーディング用サブスクリプションは互換性がありません。同じHTTPステータスでも、サービスによって意味が異なることがあります。
有用な診断を最速で行うには、4つの情報を組み合わせます。接続先のホスト名、モデル識別子、HTTPステータス、レスポンスのエラーメッセージです。設定を変更する前に、これらを記録してください。このガイドは、2026年10月26日に確認したドキュメントに基づき、設定とリクエストの失敗を扱います。リアルタイムの障害情報ではなく、特定のサービスが現在利用できないという主張でもありません。
402エラーやチャージの失敗が原因の場合は、DeepSeek APIの支払いで、チャージ、返金、残高の仕組みを確認できます。
1. どのAPIを呼び出しているかを確認する
プロバイダー、キーの発行元、endpointの形式、モデルIDを1つの設定として扱います。異なる例の一部を混在させると、モデルの問題に見える失敗が発生します。
| 経路 | OpenAI形式のBase URL | Flashモデルの識別子 |
|---|---|---|
| DeepSeek直接 | https://api.deepseek.com | deepseek-flash |
| cheapaimodel | https://api.cheapaimodel.ai/v1 | deepseek-v4-1-flash |
これらの識別子は、DeepSeekクイックスタートとcheapaimodelのDeepSeek V4.1 Flashモデルページに基づきます。これらは異なるアクセス経路を示すもので、バックエンドの動作が同一であることの証明ではありません。DeepSeekはAnthropic形式のendpointもドキュメント化しています。OpenAIのリクエスト形式を想定したクライアントに、そのアドレスを貼り付けないでください。
編集したファイルだけでなく、アプリケーションが実際に使用している設定を確認します。デプロイの環境変数、別のプロジェクトのプロフィール、古いプロセスが、意図した値を上書きすることがあります。アプリケーションに応じて必要な場合にのみ再起動または再デプロイし、秘密キーを出力せずに、有効なプロバイダーとモデルの設定を確認します。
2. ステータスとメッセージを合わせて読む
DeepSeek API直接利用の場合、公式のエラーリファレンスは次のカテゴリをドキュメント化しています。
| ステータス | 直接APIでの意味 | 最初に確認する項目 |
|---|---|---|
| 400 | 不正なリクエスト | ボディの構造とJSON形式 |
| 401 | 認証の失敗 | キーと接続先 |
| 402 | 残高不足 | 直接アカウントの残高 |
| 422 | 無効なパラメーター | 名前、型、対応する値 |
| 429 | レート制限または同時実行数の制限 | リクエストの間隔と実行中の処理 |
| 500 | サーバーエラー | 上限付きの再試行後、継続する場合は調査 |
| 503 | サーバーの過負荷 | 待機してから上限付きの再試行 |
この表は、すべてのゲートウェイに共通するエラー辞書ではありません。たとえば、cheapaimodelの支払いFAQでは、前払い残高がなくなると403が返されると説明されています。すべての403をパスワードの誤りと解釈したり、すべての残高の問題をDeepSeekの402と解釈したりせず、そのゲートウェイのレスポンスを読んでください。
3. 認証とアカウントアクセスを切り分ける
認証の失敗については、キーがendpointのプロバイダーから発行されたもので、まだ有効であることを確認します。意図しない前後の空白、環境変数の欠落、ローカル環境とデプロイ環境で名前が異なる変数がないか確認します。
キーが存在することを証明するために、スクリーンショットやログにキーを表示しないでください。代わりに、シークレットではないキーのラベルまたは構成変数の名前を記録します。認証情報が漏えいした場合は、作業を続ける前にプロバイダーの失効・再発行の手順に従ってください。
残高またはアクセスのエラーが発生した場合は、呼び出しているルートに属するアカウントを開きます。あるプロバイダーにチャージしても、別のプロバイダーには反映されません。アカウントの残高だけでなく、該当するキーレベルの制限も確認してください。cheapaimodelはキーごとの利用上限、有効期限、モデルの許可リスト、IP許可リストに対応しています。制限がある場合は、自動でチャージするのではなく、個別に調査してください。
レスポンスが無効なキー、リクエストパラメーター、接続先を示している場合は、最初のデバッグ作業としてクレジットを追加購入しないでください。
4. リクエストを最小構成に減らす
認証は成功するもののリクエストが拒否される場合は、一時的にアプリケーションの複雑さを取り除きます。選択したプロバイダーの現在のドキュメントにあるサンプルを出発点にし、短く機密情報を含まないテキストのpromptと、対応しているmodelを使用します。基本的な経路が動作するまで、ツール、画像、カスタムのレスポンス形式、任意の推論設定、長い会話履歴は省きます。
その後、機能を1つずつ追加します。通常のリクエストは成功し、ツールを有効にしたリクエストが失敗する場合、その違いは本番用のペイロード全体を何度も再送するよりも有益です。
よくある不一致の原因を確認してください。
- modelの値がAPI識別子ではなく、マーケティング用の表示名になっている。
- SDKが、構成したURLにすでに含まれているパスを追加している。
- コピーしたパラメーターが、別のプロバイダーまたはendpoint形式のものになっている。
- 数値やオブジェクトを想定している箇所に文字列が入るなど、フィールドの型が誤っている。
- リクエストするコンテキストまたは出力が、該当するmodelまたはルートの上限を超えている。
どのケースに当てはまるかは、エラーレスポンスと現在のプロバイダーのドキュメントから判断します。すべてのオプションを恒久的に削除することは、どの必須機能が互換性を持たなかったかを理解することの代わりにはなりません。
5. リトライを追加する前に429エラーを診断する
DeepSeekのレート制限のドキュメントでは、同時実行数がアカウント単位で定義されています。リクエストはレスポンスが完了するまで有効なままであり、同じアカウントで別のキーを使用しても、独立した許容量は生まれません。
つまり、1秒あたりに開始するリクエスト数が変わらなくても、リクエストに時間がかかるとワークロードが制限されることがあります。実行中のリクエスト、キューのサイズ、完了時間、および複数のアプリケーションワーカーが同じアカウントを共有していないかを確認してください。
並列処理を減らし、ジッターを付けた上限付きの遅延を適用し、サービスがリトライ遅延を提供している場合はそれに従います。試行回数と合計待機時間の両方を制限します。リトライを担当する層を1つだけにしてください。SDKのリトライループとアプリケーションのリトライループが重なると、過負荷が悪化することがあります。
無効な認証情報や不正なリクエストを繰り返しリトライしないでください。これらにはトラフィックの増加ではなく、構成の変更が必要です。
6. タイムアウトは結果が不確定なものとして扱う
クライアントのタイムアウトは、サーバーがリクエストを処理しなかったことを証明するものではありません。高コストな処理を繰り返す前に、利用可能なリクエスト記録や使用量ログを確認してください。クライアントが待機をやめた後にレスポンスが生成されている可能性があります。
ストリーミングの失敗にも同様の注意が必要です。接続が確立したか、イベントが届いたか、クライアントが期待する完了シグナルを受信したかを記録してください。部分的に表示された回答は、自動的に成功した完全なレスポンスではありません。
モデルが外部アクションを実行する場合、そのアクションを生成の再試行から分離してください。アプリケーションは、最終レスポンスを失ったという理由だけで、支払いや通知などの副作用を繰り返してはなりません。
7. 安全な再現手順でエスカレーションする
問題が解決しない場合は、プロバイダー向けに簡潔なレポートを用意してください。UTCタイムスタンプ、endpointのホスト名、model ID、ステータス、機密情報を除いたエラーメッセージ、可能であればリクエスト識別子、SDKのバージョン、そしてプライベートデータを含まない最小の再現ペイロードです。
一貫して失敗するのか、同時実行時のみ失敗するのか、特定の機能でのみ失敗するのかを記載してください。失敗の前に加えた変更も含めてください。レポートをより完全にするためだけに、生の認証ヘッダーや顧客のpromptを添付しないでください。
リクエストが成功したら、実際のワークロードに徐々に戻し、課金された使用量を確認してください。当社のDeepSeek料金ガイドではコストのカテゴリを説明しています。開発者向けドキュメントは、ゲートウェイ固有の設定の出発点です。別のモデルやプロバイダーが必要かどうかを判断する前に、診断された原因を修正してください。