Tipps zur Fehlerbehebung

In dieser Anleitung erfahren Sie, wie Sie häufige Probleme diagnostizieren und beheben, die beim Aufrufen der Gemini API auftreten. Probleme können entweder im Backend-Dienst der Gemini API oder in den Client-SDKs auftreten. Unsere Client-SDKs sind Open Source und in den folgenden Repositories verfügbar:

Wenn Probleme mit dem API-Schlüssel auftreten, prüfen Sie, ob Sie Ihren API-Schlüssel gemäß der Anleitung zur Einrichtung des API-Schlüssels richtig eingerichtet haben.

Fehlercodes des Backend-Dienstes der Gemini API

In der folgenden Tabelle sind häufige Backend-Fehlercodes aufgeführt, die auftreten können. Außerdem finden Sie Erklärungen zu den Ursachen und Schritte zur Fehlerbehebung:

HTTP-Code Status Beschreibung Beispiel Lösung
400 INVALID_ARGUMENT Der Anfragetext ist fehlerhaft. Ihre Anfrage enthält einen Tippfehler oder ein fehlendes Pflichtfeld. In der API-Referenz finden Sie Informationen zum Anfrageformat, Beispiele und unterstützte Versionen. Die Verwendung von Funktionen aus einer neueren API-Version mit einem älteren Endpunkt kann zu Fehlern führen.
400 FAILED_PRECONDITION Die kostenlose Stufe der Gemini API ist in Ihrem Land nicht verfügbar. Aktivieren Sie die Abrechnung für Ihr Projekt in Google AI Studio. Sie senden eine Anfrage in einer Region, in der die kostenlose Stufe nicht unterstützt wird, und haben die Abrechnung für Ihr Projekt in Google AI Studio nicht aktiviert. Wenn Sie die Gemini API verwenden möchten, müssen Sie in Google AI Studio einen kostenpflichtigen Plan einrichten.
403 PERMISSION_DENIED Ihr API-Schlüssel hat nicht die erforderlichen Berechtigungen. Sie verwenden den falschen API-Schlüssel oder versuchen, ein abgestimmtes Modell zu verwenden, ohne die richtige Authentifizierung durchzuführen. Prüfen Sie, ob Ihr API-Schlüssel festgelegt ist und die richtigen Zugriffsberechtigungen hat. Außerdem müssen Sie die richtige Authentifizierung durchführen, um abgestimmte Modelle zu verwenden.
404 NOT_FOUND Die angeforderte Ressource wurde nicht gefunden. Eine in Ihrer Anfrage referenzierte Bild-, Audio- oder Videodatei wurde nicht gefunden. Prüfen Sie, ob alle Parameter in Ihrer Anfrage gültig sind für Ihre API-Version.
429 RESOURCE_EXHAUSTED Sie haben das Ratenlimit überschritten. Sie senden mit der kostenlosen Stufe der Gemini API zu viele Anfragen pro Minute. Prüfen Sie, ob Sie das Ratenlimit des Modells einhalten. Fordern Sie bei Bedarf eine Kontingenterhöhung an.
499 ABGEBROCHEN Der Vorgang wurde abgebrochen, üblicherweise vom Aufrufer. Der Client hat die Verbindung geschlossen, bevor die API die Antwort senden konnte. Prüfen Sie, ob Ihre Client- oder Netzwerkinfrastruktur die Verbindung vorzeitig schließt (z.B. aufgrund eines clientseitigen Timeouts).
500 INTERN Bei Google ist ein unerwarteter Fehler aufgetreten. Ihr Eingabekontext ist zu lang. Auf der Statusseite der Gemini API finden Sie Informationen zu laufenden Vorfällen. Verringern Sie den Eingabekontext oder wechseln Sie vorübergehend zu einem anderen Modell (z.B. von Gemini 2.5 Pro zu Gemini 2.5 Flash) und prüfen Sie, ob das Problem dadurch behoben wird. Alternativ können Sie etwas warten und die Anfrage noch einmal senden. Wenn das Problem nach dem erneuten Senden der Anfrage weiterhin besteht, melden Sie es in Google AI Studio über die Schaltfläche Feedback senden.
503 UNAVAILABLE Der Dienst ist möglicherweise vorübergehend überlastet oder nicht verfügbar. Die Kapazität des Dienstes ist vorübergehend erschöpft. Auf der Statusseite der Gemini API finden Sie Informationen zu laufenden Vorfällen. Wechseln Sie vorübergehend zu einem anderen Modell (z.B. von Gemini 2.5 Pro zu Gemini 2.5 Flash) und prüfen Sie, ob das Problem dadurch behoben wird. Alternativ können Sie etwas warten und die Anfrage noch einmal senden. Wenn das Problem nach dem erneuten Senden der Anfrage weiterhin besteht, melden Sie es in Google AI Studio über die Schaltfläche Feedback senden.
504 DEADLINE_EXCEEDED Der Dienst kann die Verarbeitung nicht innerhalb der Frist abschließen. Ihr Prompt (oder Kontext) ist zu groß, um rechtzeitig verarbeitet zu werden. Legen Sie in Ihrer Clientanfrage einen längeren Timeout fest, um diesen Fehler zu vermeiden.

API-Aufrufe auf Fehler bei Modellparametern prüfen

Prüfen Sie, ob Ihre Modellparameter die folgenden Werte haben:

Modellparameter Werte (Bereich)
Anzahl der Kandidaten 1–8 (Ganzzahl)
Temperatur 0,0–1,0
Maximale Ausgabetokens Verwenden Sie die Seite „Modelle“, um die maximale Anzahl von Tokens für das verwendete Modell zu ermitteln.
TopP 0,0–1,0

Prüfen Sie nicht nur die Parameterwerte, sondern auch, ob Sie die richtige API-Version (z.B. /v1 oder /v1beta) und das richtige Modell verwenden, das die benötigten Funktionen unterstützt. Wenn sich eine Funktion beispielsweise in der Betaphase befindet, ist sie nur in der API-Version /v1beta verfügbar.

Prüfen, ob Sie das richtige Modell verwenden

Prüfen Sie, ob Sie ein unterstütztes Modell verwenden, das auf unserer Seite „Modelle“ aufgeführt ist.

Höhere Latenz oder Tokennutzung bei 2.5-Modellen

Wenn Sie bei den Modellen 2.5 Flash und Pro eine höhere Latenz oder Tokennutzung feststellen, liegt das daran, dass die Denkfunktion standardmäßig aktiviert ist, um die Qualität zu verbessern. Wenn Sie Geschwindigkeit priorisieren oder Kosten minimieren möchten, können Sie die Denkfunktion anpassen oder deaktivieren.

Auf der Seite zur Denkfunktion finden Sie eine Anleitung und Beispielcode.

Sicherheitsprobleme

Wenn ein Prompt aufgrund einer Sicherheitseinstellung in Ihrem API-Aufruf blockiert wurde, prüfen Sie den Prompt im Hinblick auf die Filter, die Sie im API-Aufruf festgelegt haben.

Wenn BlockedReason.OTHER angezeigt wird, verstößt die Anfrage oder Antwort möglicherweise gegen die Nutzungsbedingungen oder wird anderweitig nicht unterstützt.

Problem mit der Wiedergabe

Wenn das Modell die Ausgabe aufgrund des Grunds RECITATION beendet, ähnelt die Modellausgabe möglicherweise bestimmten Daten. Um dieses Problem zu beheben, versuchen Sie, den Prompt / Kontext so eindeutig wie möglich zu gestalten und eine höhere Temperatur zu verwenden.

Problem mit wiederholten Tokens

Wenn wiederholte Ausgabetokens angezeigt werden, versuchen Sie es mit den folgenden Vorschlägen, um sie zu reduzieren oder zu entfernen.

Beschreibung Ursache Vorgeschlagene Problemumgehung
Wiederholte Bindestriche in Markdown-Tabellen Das kann auftreten, wenn der Inhalt der Tabelle lang ist, da das Modell versucht, eine visuell ausgerichtete Markdown-Tabelle zu erstellen. Die Ausrichtung in Markdown ist jedoch für das korrekte Rendering nicht erforderlich.

Fügen Sie Ihrem Prompt Anweisungen hinzu, um dem Modell spezifische Richtlinien für die Generierung von Markdown-Tabellen zu geben. Geben Sie Beispiele an, die diesen Richtlinien entsprechen. Sie können auch versuchen, die Temperatur anzupassen. Für die Generierung Code oder sehr strukturierter Ausgabe wie Markdown-Tabellen, haben sich hohe Temperaturen (>= 0,8) als besser erwiesen.

Im Folgenden finden Sie ein Beispiel für Richtlinien, die Sie Ihrem Prompt hinzufügen können, um dieses Problem zu vermeiden:

          # Markdown Table Format
          
          * Separator line: Markdown tables must include a separator line below
            the header row. The separator line must use only 3 hyphens per
            column, for example: |---|---|---|. Using more hypens like
            ----, -----, ------ can result in errors. Always
            use |:---|, |---:|, or |---| in these separator strings.

            For example:

            | Date | Description | Attendees |
            |---|---|---|
            | 2024-10-26 | Annual Conference | 500 |
            | 2025-01-15 | Q1 Planning Session | 25 |

          * Alignment: Do not align columns. Always use |---|.
            For three columns, use |---|---|---| as the separator line.
            For four columns use |---|---|---|---| and so on.

          * Conciseness: Keep cell content brief and to the point.

          * Never pad column headers or other cells with lots of spaces to
            match with width of other content. Only a single space on each side
            is needed. For example, always do "| column name |" instead of
            "| column name                |". Extra spaces are wasteful.
            A markdown renderer will automatically take care displaying
            the content in a visually appealing form.
        
Wiederholte Tokens in Markdown-Tabellen Ähnlich wie bei wiederholten Bindestrichen tritt dieses Problem auf, wenn das Modell versucht, den Inhalt der Tabelle visuell auszurichten. Die Ausrichtung in Markdown ist für das korrekte Rendering nicht erforderlich.
  • Fügen Sie Ihrem Systemprompt Anweisungen wie die folgenden hinzu:
                FOR TABLE HEADINGS, IMMEDIATELY ADD ' |' AFTER THE TABLE HEADING.
              
  • Versuchen Sie, die Temperatur anzupassen. Höhere Temperaturen (>= 0,8) tragen in der Regel dazu bei, Wiederholungen oder Duplikate in der Ausgabe zu vermeiden.
Wiederholte Zeilenumbrüche (\n) in strukturierter Ausgabe Wenn die Modelleingabe Unicode- oder Escapesequenzen wie \u oder \t enthält, kann das zu wiederholten Zeilenumbrüchen führen.
  • Suchen Sie in Ihrem Prompt nach verbotenen Escapesequenzen und ersetzen Sie sie durch UTF-8-Zeichen. Die Escapesequenz \u in Ihren JSON-Beispielen kann beispielsweise dazu führen, dass das Modell sie auch in der Ausgabe verwendet.
  • Weisen Sie das Modell auf zulässige Escapesequenzen hin. Fügen Sie eine Systemanweisung wie diese hinzu:
                In quoted strings, the only allowed escape sequences are \\, \n, and \". Instead of \u escapes, use UTF-8.
              
Wiederholter Text bei Verwendung strukturierter Ausgabe Wenn die Reihenfolge der Felder in der Modellausgabe von der Reihenfolge im definierten strukturierten Schema abweicht, kann das zu wiederholtem Text führen.
  • Geben Sie die Reihenfolge der Felder nicht in Ihrem Prompt an.
  • Machen Sie alle Ausgabefelder zu Pflichtfeldern.
Wiederholte Toolaufrufe Das kann auftreten, wenn das Modell den Kontext früherer Gedanken verliert und/oder einen nicht verfügbaren Endpunkt aufruft, zu dem es gezwungen ist. Weisen Sie das Modell an, den Status im Denkprozess beizubehalten. Fügen Sie am Ende Ihrer Systemanweisungen Folgendes hinzu:
        When thinking silently: ALWAYS start the thought with a brief
        (one sentence) recap of the current progress on the task. In
        particular, consider whether the task is already done.
      
Wiederholter Text, der nicht Teil der strukturierten Ausgabe ist Das kann auftreten, wenn das Modell bei einer Anfrage hängen bleibt, die es nicht lösen kann.
  • Wenn die Denkfunktion aktiviert ist, geben Sie in den Anweisungen keine expliziten Anweisungen dazu, wie ein Problem durchdacht werden soll. Fordern Sie nur die endgültige Ausgabe an.
  • Versuchen Sie es mit einer höheren Temperatur (>= 0,8).
  • Fügen Sie Anweisungen wie „Fassen Sie sich kurz“, „Wiederholen Sie sich nicht“ oder „Geben Sie die Antwort einmal an“ hinzu.

Blockierte oder nicht funktionierende API-Schlüssel

In diesem Abschnitt wird beschrieben, wie Sie prüfen können, ob Ihr Gemini API-Schlüssel blockiert ist, und was Sie dagegen tun können.

Gründe für die Blockierung von Schlüsseln

Wir haben eine Sicherheitslücke festgestellt, durch die einige API-Schlüssel öffentlich zugänglich gemacht wurden. Um Ihre Daten zu schützen und unbefugten Zugriff zu verhindern, haben wir den Zugriff auf die Gemini API für diese bekannten kompromittierten Schlüssel proaktiv blockiert.

Prüfen, ob Ihre Schlüssel betroffen sind

Wenn Ihr Schlüssel kompromittiert wurde, können Sie ihn nicht mehr mit der Gemini API verwenden. In Google AI Studio können Sie prüfen, ob einer Ihrer API-Schlüssel für den Aufruf der Gemini API blockiert ist, und neue Schlüssel generieren. Wenn Sie versuchen, diese Schlüssel zu verwenden, wird möglicherweise auch der folgende Fehler zurückgegeben:

Your API key was reported as leaked. Please use another API key.

Maßnahmen für blockierte API-Schlüssel

Sie sollten in Google AI Studio neue API-Schlüssel für Ihre Gemini API-Integrationen generieren. Wir empfehlen dringend, Ihre API-Schlüsselverwaltungspraktiken zu überprüfen, damit Ihre neuen Schlüssel sicher aufbewahrt werden und nicht öffentlich zugänglich sind.

Unerwartete Kosten aufgrund einer Sicherheitslücke

Reichen Sie eine Supportanfrage zur Abrechnung ein. Unser Abrechnungsteam arbeitet an diesem Problem und wir werden Sie so schnell wie möglich über Neuigkeiten informieren.

Sicherheitsmaßnahmen von Google für kompromittierte Schlüssel

Wie hilft Google, mein Konto vor Kostenüberschreitungen und Missbrauch zu schützen, wenn meine API-Schlüssel kompromittiert wurden?

  • Wir werden API-Schlüssel ausgeben, wenn Sie in Google AI Studio einen neuen Schlüssel anfordern. Diese Schlüssel sind standardmäßig auf Google AI Studio beschränkt und akzeptieren keine Schlüssel von anderen Diensten. So wird eine unbeabsichtigte Verwendung von Schlüsseln für mehrere Dienste verhindert.
  • Wir blockieren standardmäßig API-Schlüssel, die kompromittiert wurden und mit der Gemini API verwendet werden, um Missbrauch von Kosten und Ihren Anwendungsdaten zu verhindern.
  • Sie können den Status Ihrer API-Schlüssel in Google AI Studio einsehen. Wir werden Sie proaktiv informieren, wenn wir feststellen, dass Ihre API-Schlüssel kompromittiert wurden, damit Sie sofort Maßnahmen ergreifen können.

Modellausgabe verbessern

Wenn Sie qualitativ hochwertigere Modellausgaben erhalten möchten, sollten Sie strukturiertere Prompts schreiben. Auf der Seite zum Prompt-Engineering werden einige grundlegende Konzepte, Strategien und Best Practices vorgestellt, die Ihnen den Einstieg erleichtern.

Informationen zu Tokenlimits

In unserem Leitfaden zu Tokens erfahren Sie mehr darüber, wie Tokens gezählt werden und welche Limits gelten.

Bekannte Probleme

  • Die API unterstützt nur eine bestimmte Anzahl von Sprachen. Wenn Sie Prompts in nicht unterstützten Sprachen senden, können unerwartete oder sogar blockierte Antworten zurückgegeben werden. Auf der Seite zu verfügbaren Sprachen finden Sie aktuelle Informationen.

Fehler melden

Wenn Sie Fragen haben, können Sie sich im Google AI-Entwicklerforum an der Diskussion beteiligen.