Skip to main content
Google Gemini ist ein sehr leistungsstarkes KI-Dialogsystem, das durch die Eingabe von Prompts innerhalb weniger Sekunden flüssige und natürliche Antworten generieren kann. Dieses Dokument beschreibt hauptsächlich die Verwendung der Gemini Generate Content API. Dies ist das offizielle native API-Format von Google und unterstützt die beiden Endpunkte generateContent und streamGenerateContent.

Unterschiede zur Chat Completions API

Die Gemini Generate Content API verwendet das offizielle native Anfrageformat von Google (Feld contents) statt des OpenAI-kompatiblen Formats (Feld messages). Wenn du bereits das Google Gemini SDK verwendest oder mit dem offiziellen API-Format vertraut bist, kannst du diese API direkt verwenden, ohne das Anfrageformat ändern zu müssen.

Aktuell unterstützter Umfang

Die Schnittstelle akzeptiert Text-, Bild-, Video- und Audioeingaben (inlineData oder fileData), Denk-Konfigurationen sowie benutzerdefinierte Funktionsdeklarationen. Für Audioausgaben, integrierte Tools und native Felder wie explizites Kontext-Caching besteht derzeit keine einheitliche Verfügbarkeitsgarantie; maßgeblich ist die tatsächliche Rückgabe des jeweiligen Modells. Wenn du Dateien wie Audio über fileData.fileUri übermittelst, stelle sicher, dass die Datei direkt über HTTPS zugänglich ist, nicht von einem Login-Status abhängt und die Gültigkeitsdauer des signierten Links die gesamte Verarbeitungszeit der Anfrage abdeckt. Bei nicht-streamender Audioanalyse wird das Ergebnis erst zurückgegeben, nachdem das Modell die Verarbeitung abgeschlossen hat, was mehr als 90 Sekunden dauern kann; der Client sollte je nach Dateigröße und Geschäftsszenario einen ausreichend langen Gesamt-Timeout festlegen, um zu vermeiden, dass die Verbindung getrennt wird, während der Server noch verarbeitet.

Antragsprozess

Bevor du die Gemini Generate Content API verwendest, besuche bitte die Seite Gemini Generate Content API und klicke auf die Schaltfläche „Abrufen“, um die für die Anfrage erforderlichen Zugangsdaten zu erhalten. Falls du noch nicht angemeldet oder registriert bist, wirst du automatisch zur Anmeldeseite weitergeleitet. Bei der ersten Beantragung gibt es ein kostenloses Kontingent.

Grundlegende Verwendung

Non-Streaming (nicht-streamend)

Sende eine POST-Anfrage an /v1beta/models/{model}:generateContent:
Hinweis: Flash der Serie gemini-3.x ist ein Denkmodell und verbraucht zuerst Reasoning-Tokens; setze generationConfig.maxOutputTokens auf mindestens 512, da andernfalls möglicherweise nur leere Inhalte zurückgegeben werden.
Beispiel für das Rückgabeergebnis:
Die Token-Felder in usageMetadata werden gemäß der nativen Gemini-Semantik abgerechnet:
  • promptTokenCount enthält cachedContentTokenCount; der aus dem Cache abgerufene Teil wird zum Preis für Cache-Lesezugriffe berechnet und nicht erneut als reguläre Eingabe gezählt.
  • promptTokensDetails und cacheTokensDetails werden unter usage.prompt_tokens_details in text_tokens, image_tokens, video_tokens, audio_tokens sowie die entsprechenden cached_*-Details normalisiert. Diese Werte sind jeweils in prompt_tokens und cached_tokens enthalten; unterschiedliche Modalitäten werden nur nach ihren jeweiligen Preisen neu berechnet und nicht doppelt abgerechnet.
  • candidatesTokenCount und thoughtsTokenCount werden beide zum Preis für Ausgabe-Tokens berechnet.
  • toolUsePromptTokenCount sind eigenständige Tool-Eingabe-Tokens und werden zum Preis für Eingabe-Tokens berechnet.
Ace Data Cloud gibt zusätzlich ein normalisiertes usage-Objekt zurück; modellübergreifend werden die Kosten dieses Aufrufs einheitlich aus usage.cost gelesen. cost ist eine optionale Kostenvorschau; wenn die Preisvorschau vorübergehend nicht verfügbar ist, wird die Modellantwort dennoch normal zurückgegeben, kann dieses Feld jedoch nicht enthalten. Die endgültige Abrechnung richtet sich nach den Nutzungsaufzeichnungen.

Streaming (streamend)

Sende eine POST-Anfrage an /v1beta/models/{model}:streamGenerateContent?alt=sse:
Die Stream-Rückgabe liefert Inhalte schrittweise im SSE-Format (Server-Sent Events) zurück. Zwischenereignisse enthalten normalerweise nur inkrementelle Inhalte; das Endereignis mit verbindlichen Nutzungsdaten enthält usageMetadata und das normalisierte usage, die Kosten befinden sich weiterhin in usage.cost:
Das Schließen der Verbindung zeigt das Ende des Streams an; native Gemini-Streams senden kein data: [DONE]. Wenn die Preisvorschau des Endzustands vorübergehend nicht verfügbar ist, gibt usage weiterhin die Token-Nutzung zurück, lässt jedoch cost weg.

Unterstützte Modelle

Erweiterte Funktionen

Systemanweisungen

Generierungskonfiguration

JSON-Modus

Denkmodus (Thinking)

Modelle, die die Denkfunktion unterstützen (wie gemini-2.5-flash, gemini-2.5-pro), können den Denkmodus aktivieren:

Funktionsaufruf

Mehrturn-Dialog

Bildverständnis

Sicherheitseinstellungen

Die Inhaltsfilterung kann über safetySettings gesteuert werden:

Fehlerbehandlung