Claude Opus 5.5 est disponible sur SeedRouter

Text

Gemini 4 Hydrogen

View Markdown

Requêtes Gemini natives, niveaux de raisonnement, décodage long avec tokens de continuation, outils, entrée multimodale et streaming. Comprend les limites du modèle et l’état de vérification.

Utilisez gemini-4-hydrogen avec le format Gemini natif. La page du modèle comprend le Playground et les prix actuels. Gemini 4 Hydrogen utilise le même format de requête que Gemini 4 Argon ; selon le guide de Google, passer de l’un à l’autre nécessite uniquement de changer l’ID du modèle.

ID du modèle

ID du modèleFenêtre de contexteEffort par défaut
gemini-4-hydrogen1 048 576 tokens partagés entre l’entrée, le raisonnement et la sortiehigh

Vérifiez la liste des modèles et vos paliers disponibles avant d’exécuter les exemples. Utilisez l’ID d’appel complet renvoyé par la découverte lorsque le palier Default est indisponible.

Exemple rapide

curl https://api.seedrouter.ai/v1beta/models/gemini-4-hydrogen:generateContent \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"contents":[{"role":"user","parts":[{"text":"Find the race condition in a retry loop that re-reads a balance before locking it."}]}],"generationConfig":{"thinkingConfig":{"thinkingLevel":"high"},"maxOutputTokens":65536}}'

Le modèle figure dans l’URL. contents est obligatoire. Une réponse comprend les champs natifs candidates, finishReason et usageMetadata ; conservez les parties de contenu complètes, y compris thoughtSignature, dans l’historique de conversation. Les prompts difficiles peuvent nécessiter plusieurs minutes. Google recommande un délai d’expiration client de 20 minutes. Utilisez le streaming pour recevoir la sortie au fur et à mesure de sa disponibilité.

Endpoints

OpérationEndpoint
Réponse JSONPOST /v1beta/models/gemini-4-hydrogen:generateContent
Événements envoyés par le serveurPOST /v1beta/models/gemini-4-hydrogen:streamGenerateContent?alt=sse

La spécification OpenAPI comprend tous les schémas imbriqués de requête et de réponse. Les champs facultatifs utilisent les valeurs par défaut de l’API lorsqu’ils sont omis. L’API native publique préserve le corps soumis pour validation par Gemini. Le Playground vérifie également les contraintes documentées avant l’envoi et applique ses paramètres de sécurité.

Paramètres de requête

L’URL fixe le modèle à gemini-4-hydrogen. Le contrat de requête contient 11 champs de premier niveau. Les champs sont facultatifs sauf mention obligatoire ; l’omission diffère de JSON null. Le JSON arbitraire nullable est préservé lorsque le schéma officiel l’autorise.

ChampTypeObligatoireValeur par défaut et contraintes
contentsobject[]OuiConversation non vide ; chaque contenu possède des parts non vides
systemInstructionobjectNonParties textuelles uniquement ; aucune identité utilisateur n’est insérée automatiquement
generationConfigobjectNonParamètres de génération dans le tableau suivant
toolsobject[]NonDéclarations de fonctions et configurations d’outils intégrés
toolConfigobjectNonConfiguration de sélection des fonctions et de récupération
safetySettingsobject[]NonUn réglage par catégorie ; aucune catégorie en double
serviceTierstringNonunspecified, standard, flex, priority ; le traitement ordinaire est standard
continuationTokenstringNonToken renvoyé avec finishReason: CONTINUATION ; renvoyez la même requête avec ce token pour poursuivre une réponse longue
labelsobjectNonValeurs de type chaîne ; clés et valeurs en minuscules, au maximum 63 points de code Unicode chacune
modelstringNonNom de ressource facultatif ; l’URL détermine le modèle réel
storebooleanNonPréférence générique de stockage des requêtes ; effet propre au modèle non vérifié

La mise en cache explicite du contexte (ressources cachedContent et cachedContents) n’est pas prise en charge sur Gemini 4 Hydrogen. La mise en cache implicite est activée par défaut pour les prompts d’au moins 4 096 tokens.

Paramètres de génération

Champ dans generationConfigTypeValeur par défaut et contraintes
maxOutputTokensintegerPar défaut 65 536, raisonnement compris. Jusqu’à 1 048 576 moins l’entrée avec continuation. Chaque réponse avec ou sans streaming prend en charge jusqu’à 65 536 tokens ; utilisez la continuation pour une sortie plus longue
thinkingConfigobjectthinkingLevel : low, medium, high, xhigh (high par défaut) ; les graphies en majuscules sont acceptées. includeThoughts : boolean, false par défaut. Utilisez thinkingLevel ; le paramètre déprécié thinkingBudget correspond à un niveau lorsqu’il est fourni seul et ne peut pas être combiné avec thinkingLevel
stopSequencesstring[]Cinq séquences au maximum
responseMimeTypestringtext/plain par défaut ; l’ancienne sortie à schéma JSON nécessite application/json
responseSchemaobjectDialecte de schéma officiel ; mutuellement exclusif avec responseJsonSchema
responseJsonSchemaJSONJSON Schema ; mutuellement exclusif avec responseSchema
responseFormatobjectConfiguration du format texte ; text.mimeType et text.schema facultatif. Le schéma nécessite le type MIME JSON
responseModalitiesstring[]Texte uniquement : TEXT ; vide signifie texte
mediaResolutionenumMEDIA_RESOLUTION_UNSPECIFIED, LOW, MEDIUM, HIGH avec le préfixe MEDIA_RESOLUTION_
seedintegerValeur signée sur 32 bits ; comportement déterministe propre au modèle non vérifié
presencePenaltynumberChamp générique ; effet et plage propres au modèle non vérifiés
frequencyPenaltynumberChamp générique ; effet et plage propres au modèle non vérifiés
responseLogprobsbooleanChamp générique ; disponibilité propre au modèle non vérifiée
logprobsinteger0–20 ; nécessite responseLogprobs: true ; prise en charge par le modèle non vérifiée
enableEnhancedCivicAnswersbooleanChamp générique ; prise en charge par le modèle non vérifiée
enableAffectiveDialogbooleanChamp générique ; prise en charge par le modèle non vérifiée
audioTranscriptionConfigobjectChamp générique ; options propres au modèle non vérifiées
translationConfigobjectChamp générique ; options propres au modèle non vérifiées

Le document OpenAPI répertorie les types imbriqués, les énumérations, les propriétés obligatoires et les bornes documentées de chaque message. Les schémas décrivent les paramètres officiels ; ils ne constituent pas une liste d’autorisation des requêtes SeedRouter. Les champs et valeurs fournis par l’appelant sont préservés. L’acceptation d’un champ par le schéma ne prouve pas sa prise en charge pour chaque compte. Le raisonnement minimal ne figure pas parmi les niveaux répertoriés. Google indique que temperature, topP, topK et candidateCount sont dépréciés et devraient être supprimés ; les valeurs d’échantillonnage personnalisées sont ignorées. S’ils sont soumis en JSON natif, ils sont néanmoins transmis sans modification à l’API Gemini pour traitement.

Décodage long

Une réponse Gemini 4 Hydrogen renvoie jusqu’à 65 536 tokens en streaming et jusqu’à 65 536 tokens sans streaming. Pour aller plus loin, définissez maxOutputTokens au-delà de 65 536 et poursuivez vous-même la réponse :

  1. Envoyez la requête. Si la réponse se termine avec finishReason: "CONTINUATION", lisez candidates[0].continuationToken.
  2. Renvoyez la même requête avec cette valeur dans le champ de premier niveau continuationToken. N’ajoutez pas la sortie partielle à contents ; le token contient l’état du modèle, y compris son raisonnement.
  3. Répétez jusqu’à ce que finishReason soit STOP ou MAX_TOKENS.
{
  "contents": [{"role": "user", "parts": [{"text": "Write a complete, rigorous proof of the prime number theorem."}]}],
  "generationConfig": {"thinkingConfig": {"thinkingLevel": "high"}, "maxOutputTokens": 262144},
  "continuationToken": "TOKEN_FROM_THE_PREVIOUS_RESPONSE"
}

Un tour de génération entièrement consacré au raisonnement peut renvoyer un texte vide avec CONTINUATION ; il s’agit d’une progression normale. Chaque tour renvoie au modèle votre prompt et tout ce qui a été généré jusque-là ; les tokens d’entrée sont donc comptés à nouveau à chaque tour ultérieur. SeedRouter facture chaque tour comme une requête distincte. Le mode background côté serveur de l’Interactions API ne fait pas partie de cet endpoint.

Sortie structurée

{
  "contents": [{"parts": [{"text": "Return a JSON object with ok set to true."}]}],
  "generationConfig": {
    "thinkingConfig": {"thinkingLevel": "low"},
    "maxOutputTokens": 65536,
    "responseMimeType": "application/json",
    "responseJsonSchema": {
      "type": "object",
      "properties": {"ok": {"type": "boolean"}},
      "required": ["ok"]
    }
  }
}

Les anciens champs responseSchema et responseJsonSchema ne peuvent pas être utilisés ensemble. Tous deux nécessitent responseMimeType: "application/json". Le schéma plus récent responseFormat.text doit également spécifier JSON. Utilisez les graphies des énumérations REST (APPLICATION_JSON et TEXT_PLAIN) dans ce message. Les requêtes sont transmises sans modification ; les types MIME des médias et le JSON arbitraire des fonctions ne sont pas réécrits.

Fonctions et outils intégrés

Utilisez tools[].functionDeclarations avec un nom et soit parameters, soit parametersJsonSchema, jamais les deux. La sélection des fonctions se trouve dans toolConfig.functionCallingConfig ; allowedFunctionNames nécessite ANY ou VALIDATED et des noms déclarés.

Votre application exécute les fonctions renvoyées et fournit leurs résultats au tour de conversation suivant. Préservez chaque thoughtSignature d’origine, chaque appel de fonction et chaque réponse de fonction. N’arrondissez pas les identifiants numériques lors de la sérialisation d’arguments de fonction opaques.

Google répertorie Search, Maps, l’exécution de code, le contexte d’URL, File Search et Computer Use pour ce modèle. Les ressources File Search nécessitent un accès avec les identifiants utilisés pour traiter la requête. La configuration MCP native figure dans le schéma générique, mais sa disponibilité pour ce modèle n’est pas établie. Vérifiez les restrictions officielles de chaque outil avant de le combiner avec des médias. Avec l’ancrage, Google compte les instructions internes des outils et les déclarations de fonctions comme tokens d’entrée. Le Playground n’exécute pas vos fonctions personnalisées.

Entrée multimodale et sécurité

Un élément contents[].parts[] contient exactement une charge utile : texte, média intégré, référence de fichier, appel ou réponse de fonction, ou partie d’exécution. Il peut également contenir une signature ou des métadonnées de média. L’entrée prend en charge le texte, les images, l’audio, les vidéos et les PDF ; la sortie est uniquement textuelle. Le modèle ne génère ni images ni audio et ne dispose pas de Live API.

Pour les octets intégrés, utilisez inlineData.mimeType et data en base64. Pour les références de fichiers, utilisez fileData.mimeType et fileUri. Une URL syntaxiquement valide ne prouve pas que le modèle peut en récupérer le contenu. Les métadonnées vidéo peuvent spécifier des décalages de début et de fin et un fps positif ne dépassant pas 24. La compréhension vidéo agentique se sélectionne par partie avec mediaProcessing: "AGENTIC" à côté de fileData ou inlineData de la vidéo ; le traitement statique est la valeur par défaut. videoMetadata contient uniquement startOffset, endOffset et fps.

Les paramètres de sécurité utilisent le format natif officiel et traversent l’API sans modification. Dans le Playground, les quatre catégories doivent être définies sur BLOCK_MEDIUM_AND_ABOVE ou un niveau plus strict ; les seuils inférieurs ne sont disponibles que via l’API.

Réponses JSON et streaming

generateContent renvoie du JSON natif. streamGenerateContent?alt=sse émet du JSON natif dans les événements SSE data:. Les champs importants comprennent candidates[].content.parts, finishReason, continuationToken, safetyRatings, groundingMetadata, promptFeedback, modelVersion, responseId et usageMetadata.

Conservez le contenu natif complet dans l’historique de conversation. Les résumés de raisonnement ne sont pas des signatures de raisonnement. Une déconnexion ne prouve ni l’échec ni l’achèvement de la génération ; inspectez le résultat partiel et le relevé du compte avant d’envoyer une autre requête. La consommation en streaming est cumulative : utilisez les derniers compteurs au lieu d’additionner chaque fragment.

Consommation et tarifs

promptTokenCount comprend l’entrée en cache. cachedContentTokenCount est facturé au tarif d’entrée en cache, sans être refacturé comme entrée non mise en cache. La sortie facturable comprend candidatesTokenCount plus thoughtsTokenCount. Hydrogen utilise le raisonnement high par défaut. Définissez explicitement le niveau lorsque vous comparez sa consommation à celle d’un autre modèle.

Ce modèle n’a pas de palier tarifaire lié à la longueur du contexte. Les prix actuels de SeedRouter utilisent les tarifs de tokens Standard ; les remises Flex et les suppléments Priority n’ont pas été configurés pour cette intégration. La prise en charge de ces paliers de traitement reste à vérifier. L’ancrage Google Search peut ajouter des frais par requête de recherche au-delà de la consommation de tokens ; vérifiez les tarifs des outils avant de l’activer. Les requêtes échouées ne sont pas facturées. Consultez le tableau des tarifs actuels.

Groupes du compte

Le palier Default utilise l’ID de modèle nu gemini-4-hydrogen. Les paliers supplémentaires utilisent gemini-4-hydrogen:GROUP_NAME dans l’URL. Le Playground sélectionne un palier disponible ; l’API accepte également un en-tête explicite :

X-SeedRouter-Group: GROUP_NAME

Le groupe choisi détermine le prix et la capacité disponible ; une sélection explicite ne bascule pas silencieusement vers un autre groupe. Omettez l’en-tête ou utilisez auto pour conserver le comportement par défaut de la clé API.

Vérifiez les groupes disponibles pour votre clé API sans générer de réponse :

curl "https://api.seedrouter.ai/api/seedrouter/llm/groups?model=gemini-4-hydrogen" \
  -H "Authorization: Bearer YOUR_SEEDROUTER_KEY"

État de vérification

La documentation officielle a été vérifiée le 13 novembre 2026. À cette date, trois vérifications payantes avec une seule tentative chacune via SeedRouter ont réussi : JSON structuré avec réflexion low, SSE avec réflexion xhigh et appel d’une fonction déclarée avec réflexion low. Les tokens d’entrée, de sortie et de réflexion rapportés correspondaient aux frais enregistrés selon les tarifs publiés. La compréhension des médias, l’ancrage aux sources, Computer Use, la continuation/le décodage long, les autres champs génériques et les niveaux de traitement restent non vérifiés. Ces vérifications n’établissent ni qualité ni latence comparatives.

Références