DEV Community

Cover image for Wie benutzt man die Gemini 3.7 Flash API?
Emre Demir
Emre Demir

Posted on Originally published at apidog.com

Wie benutzt man die Gemini 3.7 Flash API?

Google hat Gemini 3.7 Flash am 13. August 2026 veröffentlicht, drei Wochen nach 3.6 Flash, und bezeichnet es als „unser intelligentestes Arbeitstier-Modell“. Für Entwickler ist vor allem relevant: Die Agentic-Coding-Werte stiegen deutlich, der Einführungspreis liegt bei der Hälfte des Startpreises von 3.6 Flash, und die API-Oberfläche bleibt unverändert. Wenn Sie Gemini bereits einsetzen, ersetzen Sie in vielen Fällen nur die Modell-ID.

Apidog noch heute ausprobieren

Dieser Leitfaden zeigt den direkten Implementierungsweg: API-Schlüssel anlegen, ersten Request mit cURL senden, zu Python oder Node.js wechseln, Antworten streamen, generationConfig konfigurieren und Requests in Apidog testen. Laut offizieller Ankündigung bietet das Modell 1 Mio. Token Kontext, 64k Ausgabe-Tokens, multimodale Eingaben, Funktionsaufrufe, Suche als Tool und Computernutzung.

Wenn Sie mit der vorherigen Generation gearbeitet haben, bleibt die Request-Struktur aus unserem Gemini 3 Flash Preview API-Leitfaden erhalten. Dieser Artikel konzentriert sich auf den 3.7-Workflow.

TL;DR

  • Modell-ID: gemini-3.7-flash
  • Synchroner Endpunkt:
  POST https://generativelanguage.googleapis.com/v1beta/models/gemini-3.7-flash:generateContent
Enter fullscreen mode Exit fullscreen mode
  • Authentifizierung erfolgt mit:
  x-goog-api-key: <KEY>
Enter fullscreen mode Exit fullscreen mode
  • Einführungspreis bis 31. Dezember 2026: 0,75 $ pro 1 Mio. Eingabe-Tokens und 3,75 $ pro 1 Mio. Ausgabe-Tokens. Ab 1. Januar 2027: 1,50 $ bzw. 7,50 $.
  • Kontextfenster: 1 Mio. Eingabe-Tokens; Ausgabe: bis zu 64k Tokens.
  • Eingaben: Text, Bild, Video, Audio und PDF. Ausgabe: Text.
  • Streaming-Endpunkt:
  :streamGenerateContent?alt=sse
Enter fullscreen mode Exit fullscreen mode
  • Testen Sie Requests zuerst in Apidog, speichern Sie Schlüssel als Umgebungsvariable und prüfen Sie SSE-Chunks live.

Wofür Gemini 3.7 Flash gut ist

Flash-Modelle priorisieren Geschwindigkeit und Preis gegenüber maximaler Modellintelligenz. Gemini 3.7 Flash reduziert diesen Kompromiss stärker als frühere Flash-Releases.

Die Benchmark-Deltas gegenüber 3.6 Flash:

  • DeepSWE v1.1: 49,0 % → 65,3 %
  • FrontierCode 1.1 Main: 34,4 % → 43,6 %
  • AutomationBench: 17,0 % → 30,4 %
  • WebDev Arena Elo: 1538 → 1588

Setzen Sie 3.7 Flash bevorzugt für diese Workloads ein:

  • Agenten-Schleifen: Geeignet für mehrstufige Planung und tool-intensive Abläufe.
  • Code-Generierung und Debugging: Die DeepSWE- und FrontierCode-Werte sprechen für Code-Reviews, Fehleranalyse und Implementierungsaufgaben.
  • Dokumentenverarbeitung: PDF ist ein erstklassiger Eingabetyp. GDP.pdf stieg von 22,0 % auf 34,0 %.
  • Multimodale Pipelines mit begrenztem Budget: Text, Bild, Video, Audio und PDF verwenden dasselbe contents-Array.

Eine vollständige Übersicht inklusive Harvey-LAB-AA-Wert, CBRN- und Cyber-Schutzmaßnahmen finden Sie unter Was ist neu in Gemini 3.7 Flash. Als Kontext: Gemini 3.5 Pro ist weiterhin verzögert, und Axios berichtet, dass Google Flash-Updates bewusst vor dem nächsten Flaggschiff veröffentlicht.

API-Schlüssel abrufen

Es gibt zwei typische Wege.

AI Studio für Prototypen

  1. Öffnen Sie aistudio.google.com/apikey.
  2. Klicken Sie auf API-Schlüssel abrufen.
  3. Wählen Sie ein Google-Cloud-Projekt.
  4. Kopieren Sie den Schlüssel.
  5. Exportieren Sie ihn als Umgebungsvariable:
export GEMINI_API_KEY="AIza..."
Enter fullscreen mode Exit fullscreen mode

Der Schlüssel funktioniert direkt mit generativelanguage.googleapis.com. Der kostenlose Tarif bietet Kontingent für Prototypen; Gemini 3.7 Flash ist in über 160 Ländern verfügbar.

Vertex AI für Produktion

Wenn Ihre Infrastruktur bereits auf GCP läuft, verwenden Sie Vertex AI:

  • Authentifizierung über OAuth, Dienstkonten oder kurzlebige Tokens
  • Endpunkt über aiplatform.googleapis.com
  • IAM, Audit-Logs und regionale Endpunkte
  • Gleiche Modell-ID und grundsätzlich gleicher Request-Body

Entwickeln Sie Prototypen in AI Studio und wechseln Sie vor Produktionsverkehr zu Vertex AI.

Hardcoden Sie API-Schlüssel nicht. Verwenden Sie in Produktion außerdem keinen ?key=-Query-Parameter, da Query-Strings in Server-Logs landen können.

Endpunkt und Authentifizierung

Verwenden Sie für synchrone Requests:

POST https://generativelanguage.googleapis.com/v1beta/models/gemini-3.7-flash:generateContent
Enter fullscreen mode Exit fullscreen mode

Für Streaming:

POST https://generativelanguage.googleapis.com/v1beta/models/gemini-3.7-flash:streamGenerateContent?alt=sse
Enter fullscreen mode Exit fullscreen mode

Senden Sie den API-Schlüssel im Header:

x-goog-api-key: $GEMINI_API_KEY
Enter fullscreen mode Exit fullscreen mode

Ihre erste Anfrage mit cURL

Starten Sie mit einem minimalen Request und prüfen Sie zuerst Statuscode, Antwortform und Token-Verbrauch.

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.7-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "role": "user",
      "parts": [{
        "text": "Review this SQL for injection risk: SELECT * FROM orders WHERE id = ${orderId}"
      }]
    }],
    "generationConfig": {
      "temperature": 0.3,
      "maxOutputTokens": 1024
    }
  }'
Enter fullscreen mode Exit fullscreen mode

Die Antwort enthält ein candidates-Array. Ein Kandidat enthält:

  • content.parts: Text oder Funktionsaufrufe
  • finishReason: Grund für das Ende der Generierung
  • usageMetadata: Token-Zähler auf oberster Ebene

Beobachten Sie insbesondere usageMetadata: Ausgabe-Tokens kosten zum Einführungspreis fünfmal so viel wie Eingabe-Tokens.

Die zentrale Schema-Differenz zu OpenAI: Gemini verwendet contents mit role und parts, nicht messages.

Python-Schnellstart

Installieren oder aktualisieren Sie das SDK:

pip install --upgrade google-generativeai
Enter fullscreen mode Exit fullscreen mode

Erstellen Sie dann ein Modell mit Systemanweisung und Ausgabe-Limit:

import os
import google.generativeai as genai

genai.configure(api_key=os.environ["GEMINI_API_KEY"])

model = genai.GenerativeModel(
    model_name="gemini-3.7-flash",
    system_instruction="You are a code reviewer. Flag issues as blocking or non-blocking.",
    generation_config={
        "temperature": 0.3,
        "max_output_tokens": 2048,
    },
)

response = model.generate_content(
    "Review this Flask route for security issues:\n\n"
    "@app.route('/user/<id>')\n"
    "def get_user(id):\n"
    "    return db.execute(f'SELECT * FROM users WHERE id = {id}')"
)

print(response.text)
print("input tokens:", response.usage_metadata.prompt_token_count)
print("output tokens:", response.usage_metadata.candidates_token_count)
Enter fullscreen mode Exit fullscreen mode

PDF als multimodale Eingabe senden

Laden Sie die Datei über die Files API hoch und senden Sie sie zusammen mit der Anweisung:

invoice = genai.upload_file("q3-invoice.pdf")

response = model.generate_content([
    invoice,
    "Extract the invoice number, total, and due date as JSON.",
])

print(response.text)
Enter fullscreen mode Exit fullscreen mode

Dieses Muster eignet sich für strukturierte Extraktion aus PDF-Dokumenten.

Node.js-Schnellstart

Installieren Sie das Node-SDK und erzeugen Sie ein Modell mit strukturierter JSON-Ausgabe:

import { GoogleGenerativeAI } from "@google/generative-ai";

const genAI = new GoogleGenerativeAI(process.env.GEMINI_API_KEY);

const model = genAI.getGenerativeModel({
  model: "gemini-3.7-flash",
  generationConfig: {
    temperature: 0.3,
    maxOutputTokens: 2048,
    responseMimeType: "application/json",
    responseSchema: {
      type: "object",
      properties: {
        severity: { type: "string", enum: ["blocking", "non-blocking"] },
        issues: { type: "array", items: { type: "string" } },
      },
      required: ["severity", "issues"],
    },
  },
});

const result = await model.generateContent(
  "Review this Express handler: app.get('/search', (req, res) => res.send(eval(req.query.q)))"
);

console.log(JSON.parse(result.response.text()));
Enter fullscreen mode Exit fullscreen mode

Kombinieren Sie responseSchema immer mit:

responseMimeType: "application/json"
Enter fullscreen mode Exit fullscreen mode

So erzwingen Sie ein parsbares JSON-Objekt, statt nachgelagerten Code mit Freitext arbeiten zu lassen.

Streaming

Für Chat-UIs und benutzerorientierte Ausgaben sollten Sie streamen.

In Python aktivieren Sie Streaming mit stream=True:

stream = model.generate_content(
    "Explain the N+1 query problem with a concrete ORM example.",
    stream=True,
)

for chunk in stream:
    if chunk.text:
        print(chunk.text, end="", flush=True)
Enter fullscreen mode Exit fullscreen mode

Bei rohem HTTP verwenden Sie:

:streamGenerateContent?alt=sse
Enter fullscreen mode Exit fullscreen mode

Jede SSE-data:-Zeile enthält eine partielle candidates-Nutzlast. usageMetadata kommt im letzten Chunk. Erfassen Sie Kosten daher erst, nachdem der Stream geschlossen wurde.

generationConfig optimieren

Konfigurieren Sie zuerst die Parameter mit dem größten Einfluss auf Kosten und Ausgabeform.

Parameter Typ Wirkung
maxOutputTokens Ganzzahl Begrenzt die Ausgabe bis zum Modell-Limit von 64k. Wichtigster Kostenhebel.
temperature Zahl Werte von 0 bis 2. Für Code und Extraktion meist 0,2 bis 0,4; für kreative Texte 0,7+.
responseMimeType Zeichenkette Setzen Sie application/json für JSON-Ausgabe.
responseSchema Objekt Erzwingt zusammen mit JSON-Mime-Type eine definierte Struktur.
topP Zahl Nucleus-Sampling-Cutoff. Standardwert beibehalten, sofern Sie nicht gezielt optimieren.
stopSequences Array Stoppt Generierung bei definierten Strings; nützlich für delimiter-basiertes Parsen.

Ausgabe-Tokens kosten 3,75 $ pro Million zum Einführungspreis und 7,50 $ ab Januar 2027. Setzen Sie maxOutputTokens daher auf den tatsächlichen Bedarf, nicht automatisch auf 64k.

Ausführliche Kostenbeispiele finden Sie in der Gemini 3.7 Flash Preisübersicht.

Neben generationConfig akzeptiert der Request-Body auch:

  • tools für Funktionsdeklarationen, Suche als Tool und Computernutzung
  • toolConfig zum Erzwingen von Tool-Aufrufen

Für Deklarationen, parallele Aufrufe und das Antwortschleifenmuster lesen Sie das Gemini 3.7 Flash Tutorial für Funktionsaufrufe.

Endpunkt in Apidog testen, bevor Sie Anwendungscode schreiben

Prompt-Iteration direkt im Code kostet Zeit und Tokens: Prompt ändern, Script starten, Ausgabe suchen, wiederholen. Legen Sie Request-Form und erwartete Antworten stattdessen zuerst in einem API-Client fest.

Apidog unterstützt das Gemini-Request-Schema. Vorgehen:

  1. Projekt erstellen: Importieren Sie die Generative Language API OpenAPI-Spezifikation aus den Google API-Dokumenten.
  2. Umgebungsvariable anlegen: Erstellen Sie GEMINI_API_KEY und verwenden Sie sie im Header x-goog-api-key.
  3. Modell-ID variabilisieren: Speichern Sie gemini-3.7-flash als Variable. Für A/B-Tests gegen gemini-3.6-flash ändern Sie dann nur eine Konfiguration.
  4. contents im JSON-Editor erstellen: Prüfen Sie verschachtelte parts vor dem Senden und vermeiden Sie 400-Requests durch fehlerhafte Bodies.
  5. Streaming testen: Rufen Sie den SSE-Endpunkt auf und beobachten Sie die Chunks live.
  6. Antworten als Beispiele speichern: Verwenden Sie Fixtures für spätere Testläufe statt jedes Mal die Live-API aufzurufen.

Verketten Sie gespeicherte Requests anschließend zu Testszenarien. Prüfen Sie dabei mindestens:

  • finishReason
  • Antwortschema
  • usageMetadata
  • erwartete Token-Grenzen

Dadurch wird ein manueller Smoke-Test zu einer Regressionssuite für Prompt-Änderungen. Das gleiche Muster behandelt der API-Testleitfaden für QA-Ingenieure.

Fehlerbehandlung und Ratenbegrenzungen

Gemini-Fehler liefern ein error-Objekt mit code, status und message.

Code Status Bedeutung Behebung
400 INVALID_ARGUMENT Falsch formatierter Body, falsche Rolle oder leere contents. Body vor dem Senden validieren.
401 UNAUTHENTICATED Schlüssel fehlt oder wurde widerrufen. GEMINI_API_KEY erneut exportieren und Schlüsselstatus in AI Studio prüfen.
403 PERMISSION_DENIED Projektzugriff oder Abrechnung fehlt. Projekteinstellungen und Abrechnung prüfen.
429 RESOURCE_EXHAUSTED Ratenlimit oder Tageskontingent erreicht. Mit Jitter zurückfahren, Requests bündeln oder Tarif wechseln.
500 INTERNAL Vorübergehender Serverfehler. Mit exponentiellem Backoff wiederholen.
503 UNAVAILABLE Dienst ist überlastet. Nach einigen Sekunden erneut versuchen; bei Vertex andere Region testen.

Für produktionsfähige Integration:

  • Wiederholungslogik implementieren: Behandeln Sie 429- und 5xx-Fehler mit jittered exponentiellem Backoff.
  • Aktuelle Limits prüfen: Erfinden Sie keine festen Rate Limits. Prüfen Sie die Gemini API Preis- und Limitseite und alarmieren Sie bei 80 % des Kontingents.
  • Modell-ID per Umgebungsvariable setzen: Ein Rollback auf gemini-3.6-flash wird damit zur Konfigurationsänderung statt zu einem Deployment.

FAQ

Ist Gemini 3.7 Flash kostenlos nutzbar?

AI Studio bietet einen kostenlosen Tarif mit täglichem Kontingent für Prototypen. Der kostenpflichtige Einführungspreis beträgt bis zum 31. Dezember 2026 0,75 $ pro 1 Mio. Eingabe-Tokens. Details zu Tarifen und Limits finden Sie im Leitfaden zum kostenlosen Gemini API-Zugang.

Was ist der Unterschied zwischen AI Studio und Vertex AI?

Das Modell und der Request-Body bleiben gleich. AI Studio verwendet API-Schlüssel mit generativelanguage.googleapis.com; Vertex verwendet OAuth mit aiplatform.googleapis.com und ergänzt IAM, Audit-Logging und regionale Endpunkte.

Kann ich Bilder, Audio und PDFs an Gemini 3.7 Flash senden?

Ja. Text, Bild, Video, Audio und PDF werden als Teile im contents-Array gesendet: inline als Base64 oder per Referenz über die Files API. Die Ausgabe ist Text.

Wie groß sind Kontextfenster und Ausgabemaximum?

Das Modell akzeptiert bis zu 1 Mio. Eingabe-Tokens und erzeugt bis zu 64k Ausgabe-Tokens. Lange Eingaben sollten Sie trotzdem bei Bedarf chunken, weil jedes Eingabe-Token abgerechnet wird.

Sollte ich von Gemini 3.6 Flash upgraden?

Für Agenten- und Coding-Workloads sprechen die Benchmark-Unterschiede in der Regel für ein Upgrade. Da sich meist nur die Modell-ID ändert, ist der technische Umstieg klein. Regressionstests vor der Produktionsumstellung bleiben sinnvoll; Details enthält der 3.6-zu-3.7-Flash-Migrationsleitfaden.

Wo 3.7 Flash in Ihren Stack passt

Gemini 3.7 Flash kombiniert niedrigeren Einführungspreis mit höheren Werten für Agenten-, Coding- und Dokumenten-Workloads. Eine praktikable Standardstrategie:

  1. Agenten-Schleifen, Code-Aufgaben und Dokumentenextraktion auf gemini-3.7-flash routen.
  2. Das Einführungsratenfenster in die Budgetplanung aufnehmen.
  3. gemini-3.6-flash als Rollback-Option hinter einer Umgebungsvariablen behalten.
  4. Request und Prompt zuerst außerhalb der Anwendung validieren.
  5. Erst danach in Python oder Node.js portieren.

Starten Sie mit dem cURL-Request, prüfen Sie die Antwortform und verschieben Sie den Request anschließend in einen API-Client. Laden Sie Apidog herunter, importieren Sie die Gemini-Spezifikation, hinterlegen Sie den Schlüssel einmal und testen Sie synchrone, Streaming- und Tool-Aufrufe zentral. Sobald Prompt und Netzwerkverkehr stimmen, ist die Portierung in Python oder Node.js nur noch ein kleiner Schritt.

Top comments (0)