このガイドは、Google Compute Engine で発生し、 Gemini API を呼び出します大まかに言うと、問題が発生する可能性があるのが クライアント SDK を介してやり取りします。クライアント SDK は 次のリポジトリでオープンソース化されています。
- generative-ai-python
- generative-ai-js
- generative-ai-android
- generative-ai-swift
- generative-ai-dart
- generative-ai-go
API キーに関する問題が発生した場合は、 API キー設定ガイドに沿って API キーを正しく設定します。
Gemini API バックエンド サービスのエラーコード
次の表に、発生する可能性のある一般的なバックエンド エラーコードと、 その原因とトラブルシューティングの手順をお伝えします。
HTTP コード | ステータス | 説明 | 例 | ソリューション |
400 | INVALID_ARGUMENT | リクエスト本文の形式が正しくありません。 | リクエストにタイプミスがあるか、必須フィールドが不足しています。 | リクエストの形式、例、サポートされているバージョンについては、API リファレンスをご覧ください。新しい API バージョンの機能を古いエンドポイントで使用すると、エラーが発生する可能性があります。 |
400 | FAILED_PRECONDITION | お住まいの国では Gemini API の無料枠を利用できません。Google AI Studio でプロジェクトの課金を有効にしてください。 | 無料枠がサポートされていないリージョンでリクエストを行っていますが、Google AI Studio でプロジェクトの課金を有効にしていません。 | Gemini API を使用するには、Google AI Studio を使用して有料プランを設定する必要があります。 |
403 | PERMISSION_DENIED | API キーに必要な権限がありません。 | 間違った API キーを使用している 適切な認証を行わずにチューニング済みモデルを使用しようとしている | API キーが設定され、適切なアクセス権があることを確認してください。また、チューニング済みのモデルを使用するには、適切な認証を必ず行ってください。 |
404 | NOT_FOUND | リクエストされたリソースが見つかりませんでした。 | リクエストで参照されている画像、音声ファイル、または動画ファイルが見つかりませんでした。 | お使いの API バージョンに対して、リクエスト内のすべてのパラメータが有効かどうかを確認します。 |
429 | RESOURCE_EXHAUSTED | レート制限を超えました。 | 無料枠の Gemini API で 1 分あたりに送信するリクエストが多すぎます。 | モデルのレート制限内であることを確認します。必要に応じて、割り当ての増加をリクエストします。 |
500 | INTERNAL | Google 側で予期しないエラーが発生しました。 | 入力コンテキストが長すぎます。 | 入力コンテキストを減らすか、一時的に別のモデルに切り替えて(例: Gemini 1.5 Pro から Gemini 1.5 Flash に切り替えて)、動作するかどうかを確認します。または、しばらくしてからもう一度お試しください。再試行しても問題が解決しない場合は、Google AI Studio の [フィードバックを送信] ボタンを使用して報告してください。 |
503 | UNAVAILABLE | サービスが一時的に過負荷になっているか、ダウンしている可能性があります。 | サービスの容量が一時的に不足しています。 | 一時的に別のモデル(例: Gemini 1.5 Pro から Gemini 1.5 Flash)に切り替えて、動作するかどうかを確認します。または、しばらくしてからもう一度お試しください。再試行しても問題が解決しない場合は、Google AI Studio の [フィードバックを送信] ボタンを使用して報告してください。 |
504 | DEADLINE_EXCEEDED | サービスが期限内に処理を完了できない。 | プロンプト(またはコンテキスト)が大きすぎて、時間内に処理できません。 | 「タイムアウト」を大きく設定する必ず指定してください。 |
Python クライアント SDK のエラーコード
次の表に、一般的な Python クライアント SDK のエラー 表示されるコードとその原因の説明:
例外/エラーの種類 | クラス | 説明 |
---|---|---|
BlockedPromptException | google.generativeai.types.BlockedPromptException | 安全上の理由により、プロンプトがブロックされています。 |
BrokenResponseError | google.generativeai.types.BrokenResponseError | ストリーミング レスポンスが破損している。チャット履歴など、完全なレスポンスを必要とするものにアクセスしたときに発生します。スタック トレースで示されるエラーの詳細を確認します。 |
IncompleteIterationError | google.generativeai.types.IncompleteIterationError | 完全な API レスポンスを必要とするものにアクセスしているが、ストリーミング レスポンスが完全には反復処理されていない場合に発生します。レスポンス オブジェクトで resolve() を呼び出して、イテレータを消費します。 |
StopCandidateException | google.generativeai.types.StopCandidateException | API から例外の finish_reason が返されました。対応方法については、アドバイスが必要な理由を確認してください。 |
PermissionDenied | google.api_core.exceptions.PermissionDenied | リクエストされたリソース(モデルなど)に対する権限がありません。 |
ResourceExhausted | google.api_core.exceptions.ResourceExhausted | 割り当てを使い切っています。しばらくしてからもう一度お試しください。これらのエラーを処理するために、自動再試行を設定することを検討してください。 |
AlreadyExists | google.api_core.exceptions.AlreadyExists | 同じ ID のチューニング済みモデルがすでに存在します。新しいモデルをチューニングするときに、一意のモデル ID を指定してください。 |
InvalidArgument | google.api_core.exceptions.InvalidArgument | 引数が無効です。たとえば、ファイルが大きすぎてペイロード サイズの上限を超えている場合などです。もう 1 つは無効な API キーを提供するという問題です。 |
DefaultCredentialsError | google.auth.exceptions.DefaultCredentialsError | 認証に失敗しました。API キーを再度確認して、もう一度お試しください。 |
RetryError | google.api_core.exceptions.RetryError | gRPC をサポートしていないプロキシを使用している場合に発生します。genai.configure(..., transport="rest") で REST トランスポートを使用してみます。 |
API 呼び出しでモデル パラメータのエラーを確認する
モデル パラメータが次の値の範囲内であることを確認します。
モデル パラメータ | 値(範囲) |
受験者数 | 1 ~ 8(整数) |
体温 | 0.0 ~ 1.0 |
最大出力トークン |
使用
get_model (Python)
を使用して、使用するモデルのトークンの最大数を決定します。
|
TopP | 0.0 ~ 1.0 |
パラメータ値を確認するだけでなく、
API バージョン(例:/v1
または /v1beta
)と
必要な機能をサポートするモデルです。たとえば、ある機能がベータ版
/v1beta
API バージョンでのみ使用できます。
正しいモデルを使用しているかどうかを確認する
必ず、 モデルページをご覧ください。
安全性に関する問題
API 呼び出しの安全性設定が原因でプロンプトがブロックされている場合は、 API 呼び出しで設定したフィルタに関してプロンプトを確認してください。
「BlockedReason.OTHER
」が表示された場合、クエリまたはレスポンスが利用規約に違反している可能性があります。
またはサポート対象外となる場合があります。
列挙に関する問題
RECITATION 理由でモデルの出力生成が停止した場合、 モデルの出力が特定のデータに似ている場合があることを意味しますこの問題を解決するには、 プロンプト / コンテキストをできるだけ一意にし、Temperature を高くします。
モデル出力を改善する
より高品質のモデル出力のためには、より構造化されたプロンプトを記述することを検討します。「 プロンプト設計の概要ページでは、 基本的なコンセプト、戦略、ベスト プラクティスを学びます。
適切な入出力ペアのサンプルが数百個ある場合は、 モデルのチューニングを検討してください。
トークンの上限について
トークン ガイドを読み、トークン トークンとその制限をカウントできます。
既知の問題
- この API は、一部の言語のみをサポートしています。プロンプトを送信する サポートされていない言語では、予期しないレスポンスやブロックされるレスポンスが生成される場合があります。詳しくは、 対応言語をご確認ください。
バグを報告
Google AI デベロッパー フォーラムのディスカッションにご参加ください をご覧ください。