Text
Gemini 3.8 Flash
Native Gemini-Anfragen, multimodale Eingaben, Thinking, Tools, Caching und Streaming. Mit Modelllimits und Prüfstatus.
Verwenden Sie gemini-3.8-flash im nativen Gemini-Format. Die Modellseite enthält den Playground und aktuelle Preise; der Leitfaden zum Modellvergleich vergleicht die dokumentierten Einstellungen mit Gemini 3.1 Pro.
Modell-ID
| Modell-ID | Eingabelimit | Standard-Denkaufwand |
|---|---|---|
gemini-3.8-flash | 1.048.576 Token | medium |
Kurzbeispiel
curl https://api.seedrouter.ai/v1beta/models/gemini-3.8-flash:generateContent \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"contents":[{"role":"user","parts":[{"text":"Explain a mutex in one sentence."}]}],"generationConfig":{"thinkingConfig":{"thinkingLevel":"low"},"maxOutputTokens":1024}}'Das Modell gehört in die URL. contents ist erforderlich. Eine Antwort enthält native candidates, finishReason und usageMetadata; bewahren Sie vollständige Inhaltsteile einschließlich thoughtSignature für den Gesprächsverlauf auf.
Endpunkte
| Vorgang | Endpunkt |
|---|---|
| JSON-Antwort | POST /v1beta/models/gemini-3.8-flash:generateContent |
| Server-Sent Events | POST /v1beta/models/gemini-3.8-flash:streamGenerateContent?alt=sse |
Die OpenAPI-Spezifikation enthält alle verschachtelten Anfrage- und Antwortschemas. Für ausgelassene optionale Felder gelten die API-Standardwerte. SeedRouter leitet den gesendeten Anfragetext weiter, ohne unbekannte Felder zu filtern, nicht unterstützte Felder zu entfernen oder Modellparameterwerte zu validieren. Die Gemini API entscheidet, ob eine Anfrage akzeptiert wird.
Anfrageparameter
Die URL legt das Modell auf gemini-3.8-flash fest. Die Anfragespezifikation enthält 12 Felder auf oberster Ebene. Felder sind optional, sofern sie nicht als erforderlich gekennzeichnet sind; Auslassen unterscheidet sich von JSON null. Beliebiges JSON, das null sein darf, bleibt dort erhalten, wo das offizielle Schema es zulässt.
| Feld | Typ | Erforderlich | Standard und Einschränkungen |
|---|---|---|---|
contents | object[] | Ja | Nicht leere Unterhaltung; jeder Inhalt hat nicht leere parts |
systemInstruction | object | Nein | Ausschließlich Textteile; es wird keine Nutzeridentität automatisch eingefügt |
generationConfig | object | Nein | Generierungsparameter in der nächsten Tabelle |
tools | object[] | Nein | Funktionsdeklarationen und Konfigurationen integrierter Tools |
toolConfig | object | Nein | Konfiguration für Funktionsauswahl und Informationsabruf |
safetySettings | object[] | Nein | Eine Einstellung je Kategorie; keine doppelten Kategorien |
cachedContent | string | Nein | Vorhandene Ressource cachedContents/{id}; setzt passende Zugriffsberechtigungen voraus |
serviceTier | string | Nein | unspecified, standard, flex, priority; reguläre Verarbeitung ist standard |
labels | object | Nein | String-Werte; Schlüssel/Werte in Kleinbuchstaben, jeweils maximal 63 Unicode-Codepoints |
model | string | Nein | Optionaler Ressourcenname; die URL bestimmt das tatsächliche Modell |
store | boolean | Nein | Allgemeine Einstellung zur Speicherung der Anfrage; modellspezifische Wirkung ungeprüft |
continuationToken | string | Nein | Allgemeines opakes Token; Fortsetzung ist keine nachgewiesene Funktion von 3.8 Flash |
Generierungsparameter
Feld in generationConfig | Typ | Standard und Einschränkungen |
|---|---|---|
maxOutputTokens | integer | 1–65.536 einschließlich Thinking; Modellstandard 65.536 |
thinkingConfig | object | thinkingLevel: low, medium, high (Standard medium); Großschreibung wird akzeptiert. includeThoughts: boolean, standardmäßig false. thinkingBudget: integer, schließt thinkingLevel gegenseitig aus; kein modellspezifischer Zahlenbereich nachgewiesen |
stopSequences | string[] | Maximal fünf Sequenzen |
responseMimeType | string | Standard text/plain; die Ausgabe mit älterem JSON-Schema erfordert application/json |
responseSchema | object | Offizieller Schemadialekt; schließt responseJsonSchema gegenseitig aus |
responseJsonSchema | JSON | JSON Schema; schließt responseSchema gegenseitig aus |
responseFormat | object | Textformatkonfiguration; text.mimeType und optional text.schema. Ein Schema erfordert einen JSON-MIME-Typ |
responseModalities | string[] | Nur Text: TEXT; leer bedeutet Text |
mediaResolution | enum | MEDIA_RESOLUTION_UNSPECIFIED, LOW, MEDIUM, HIGH mit dem Präfix MEDIA_RESOLUTION_ |
seed | integer | Vorzeichenbehafteter 32-Bit-Wert; modellspezifisches deterministisches Verhalten ungeprüft |
presencePenalty | number | Allgemeines Feld; modellspezifische Wirkung und Wertebereich ungeprüft |
frequencyPenalty | number | Allgemeines Feld; modellspezifische Wirkung und Wertebereich ungeprüft |
responseLogprobs | boolean | Allgemeines Feld; modellspezifische Verfügbarkeit ungeprüft |
logprobs | integer | 0–20; erfordert responseLogprobs: true; Modellunterstützung ungeprüft |
enableEnhancedCivicAnswers | boolean | Allgemeines Feld; Modellunterstützung ungeprüft |
enableAffectiveDialog | boolean | Allgemeines Feld; Modellunterstützung ungeprüft |
audioTranscriptionConfig | object | Allgemeines Feld; modellspezifische Optionen ungeprüft |
translationConfig | object | Allgemeines Feld; modellspezifische Optionen ungeprüft |
Das OpenAPI-Dokument nennt verschachtelte Typen, Enums, erforderliche Eigenschaften und dokumentierte Grenzen für jede Nachricht. Die Schemas beschreiben offizielle Parameter; sie sind keine Positivliste für SeedRouter-Anfragen. Vom Aufrufer übergebene Felder und Werte bleiben erhalten. Ein vom Schema akzeptiertes Feld beweist nicht die Unterstützung durch jedes Modell oder Konto. Die Denkstufe minimal wird nicht unterstützt. Temperature, topP, topK und candidateCount sind keine offiziellen Einstellungen für dieses Modell. Werden sie in nativem JSON gesendet, werden sie dennoch unverändert zur Verarbeitung an die Gemini API weitergegeben. Beenden Sie die Unterhaltung mit Nutzerinhalt; die offizielle API unterstützt keine abschließenden vorbefüllten Modellbeiträge. Nutzerbeiträge, die ausschließlich eine Funktionsantwort enthalten, bleiben gültig.
Strukturierte Ausgabe
{
"contents": [{"parts": [{"text": "Return a JSON object with ok set to true."}]}],
"generationConfig": {
"thinkingConfig": {"thinkingLevel": "low"},
"maxOutputTokens": 1024,
"responseMimeType": "application/json",
"responseJsonSchema": {
"type": "object",
"properties": {"ok": {"type": "boolean"}},
"required": ["ok"]
}
}
}Die älteren Felder responseSchema und responseJsonSchema können nicht gemeinsam verwendet werden. Beide erfordern responseMimeType: "application/json". Auch das neuere Schema responseFormat.text muss JSON angeben. Verwenden Sie in dieser Nachricht die REST-Enum-Schreibweisen (APPLICATION_JSON und TEXT_PLAIN). Anfragen werden unverändert weitergegeben; Medien-MIME-Typen und beliebiges Funktions-JSON werden nicht umgeschrieben.
Funktionen und integrierte Tools
Verwenden Sie tools[].functionDeclarations mit einem Namen und entweder parameters oder parametersJsonSchema, nicht beiden. Für Antwortschemas gilt derselbe gegenseitige Ausschluss. Die Funktionsauswahl liegt in toolConfig.functionCallingConfig; allowedFunctionNames erfordert ANY oder VALIDATED sowie deklarierte Namen.
Das Modell unterstützt Funktionsaufrufe. Ihre Anwendung führt zurückgegebene Funktionen aus und liefert ihre Ergebnisse im nächsten Gesprächsbeitrag. Bewahren Sie jede ursprüngliche thoughtSignature, jeden Funktionsaufruf und jede Funktionsantwort auf. Runden Sie beim Serialisieren opaker Funktionsargumente keine numerischen Bezeichner.
Google nennt Search, Maps, Codeausführung und URL-Kontext als Modellfunktionen. File Search wird laut Modelldokumentation unterstützt. Vorhandene Cache- und File-Search-Ressourcen benötigen Zugriffsberechtigungen über die für die Anfrage verwendeten Zugangsdaten. Computer Use ist als Preview aufgeführt. Native MCP-Konfiguration erscheint im allgemeinen Schema, ihre Verfügbarkeit für dieses Modell ist jedoch nicht nachgewiesen. Google Maps erfordert reine Texteingabe und -ausgabe; prüfen Sie die offiziellen API-Einschränkungen, bevor Sie Maps mit Medien kombinieren. Der Playground führt Ihre benutzerdefinierten Funktionen nicht aus.
Multimodale Eingabe und Sicherheit
Ein Element in contents[].parts[] enthält genau eine Nutzlast: Text, eingebettete Medien, eine Dateireferenz, einen Funktionsaufruf bzw. eine Funktionsantwort oder einen Ausführungsteil. Es kann außerdem eine Signatur oder Medienmetadaten enthalten. Als Eingabe werden Text, Bilder, Audio, Video und PDFs unterstützt; die Ausgabe ist ausschließlich Text.
Verwenden Sie für eingebettete Bytes inlineData.mimeType und base64-data. Verwenden Sie für Dateireferenzen fileData.mimeType und fileUri. Eine syntaktisch gültige URL beweist nicht, dass das Modell sie abrufen kann. Videometadaten können Start- und Endversatz sowie einen positiven fps-Wert von höchstens 24 festlegen. Globale Medienauflösung und Auflösung je Teil sind getrennte Einstellungen. Agentic Video wird über videoMetadata.processingMode: "AGENTIC" unterstützt.
Verwenden Sie natives JSON für eingebettete Medien oder eine zugängliche Dateireferenz für größere Medien. Genaue Grenzen für Dateiformat, Dauer und Medien je Anfrage richten sich weiterhin nach der offiziellen Mediendokumentation und erfordern eine Live-Prüfung.
Sicherheitseinstellungen verwenden das offizielle native Format. Beim Auslassen bleiben die Standardwerte der Gemini API wirksam; ausdrücklich übergebene Einstellungen werden unverändert weitergegeben.
JSON-Antworten und Streaming
generateContent gibt natives JSON zurück. streamGenerateContent?alt=sse sendet natives JSON in SSE-data:-Ereignissen. Wichtige Felder sind candidates[].content.parts, finishReason, safetyRatings, groundingMetadata, promptFeedback, modelVersion, responseId und usageMetadata.
Bewahren Sie vollständige native Inhalte im Gesprächsverlauf auf. Thinking-Zusammenfassungen sind nicht dasselbe wie Denksignaturen. Ein Verbindungsabbruch beweist weder Fehlschlag noch Abschluss der Generierung; prüfen Sie das Teilergebnis und den Kontoeintrag, bevor Sie erneut anfragen. Der Streaming-Verbrauch ist kumulativ; verwenden Sie die neuesten Zählerstände, statt alle Teile zu summieren.
Eine Fortsetzung längerer Ausgaben ist für Gemini 3.8 Flash nicht nachgewiesen. Bauen Sie keine Fortsetzungsschleife, nur weil das allgemeine Antwortschema ein Token-Feld enthält.
Verbrauch und Preise
promptTokenCount enthält gecachte Eingabe. cachedContentTokenCount wird zum Tarif für gecachte Eingabe berechnet und nicht erneut als ungecachte Eingabe. Die abrechenbare Ausgabe umfasst candidatesTokenCount plus thoughtsTokenCount. Gemeldete Prompt-Token für die Tool-Nutzung zählen ebenfalls zur Eingabe.
Für dieses Modell gibt es keinen Preissprung für langen Kontext bei 200.000 Token. Verfügbare Kontogruppen verwenden denselben Modellpreisausdruck und ihren jeweils aktuellen Multiplikator. Siehe die Live-Preistabelle.
Flex und Priority sind getrennte Verarbeitungsstufen. Bei Flex gelten die halben Standard-Tarife für Eingabe, Ausgabe und gecachte Eingabe; bei Priority das 1,8-Fache dieser Tarife. Die veröffentlichten Google-Einführungstarife enden am 31. Dezember 2026; prüfen Sie immer die aktuelle SeedRouter-Tabelle, statt einen künftigen Tarif anzunehmen. Bei einem als Standard gemeldeten Ergebnis darf kein Priority-Aufschlag anfallen. Wenn eine angeforderte Priority-Antwort ihre tatsächliche Stufe nicht belegt, verwendet diese Integration Standard-Token-Tarife. Tool-Gebühren und explizite Cache-Speicherung werden getrennt von Generierungs-Token berechnet; ein gemeinsames kostenloses Tool-Kontingent wird nicht zugesagt. Fehlgeschlagene Anfragen werden nicht berechnet.
Mehrere Kontogruppen
Das Modell nutzt googlellm und googlellm-vertext mit ihren bestehenden Kontoberechtigungen und Preisen. Die Schreibweise jedes Gruppennamens ist exakt einzuhalten. Wählen Sie eine verfügbare Gruppe im Playground oder verwenden Sie den optionalen API-Header:
X-SeedRouter-Group: googlellmVerwenden Sie googlellm-vertext, um die zweite Gruppe auszuwählen. Die gewählte Gruppe bestimmt Preis und verfügbare Kapazität; bei expliziter Auswahl wird nicht stillschweigend zu einer anderen Gruppe gewechselt. Lassen Sie den Header weg oder verwenden Sie auto, um das Standardverhalten des API-Schlüssels beizubehalten.
Prüfen Sie die verfügbaren Gruppen Ihres API-Schlüssels, ohne eine Antwort zu generieren:
curl "https://api.seedrouter.ai/api/seedrouter/llm/groups?model=gemini-3.8-flash" -H "Authorization: Bearer YOUR_SEEDROUTER_KEY"Prüfstatus
Bedienelemente und Dokumentation folgen dem offiziellen nativen Format. Die Parametervalidierung liegt bei der Gemini API. Offline-Prüfungen von Übertragung und Abrechnung belegen keine Verfügbarkeit im Produktivbetrieb. Live-Generierung, beide Kontogruppen, Medienverständnis, Cache-Ressourcen, integrierte Tools und Verarbeitungsstufen erfordern weiterhin kostenpflichtige Ende-zu-Ende-Prüfungen. Es wird kein gemessener Qualitäts- oder Latenzvergleich mit Gemini 3.1 Pro behauptet.
