Claude Opus 5.5 ya está disponible en SeedRouter

Text

Gemini 4 Hydrogen

View Markdown

Solicitudes nativas de Gemini, niveles de razonamiento, decodificación larga con tokens de continuación, herramientas, entrada multimodal y streaming. Incluye límites del modelo y estado de verificación.

Usa gemini-4-hydrogen con el formato nativo de Gemini. La página del modelo incluye el Playground y los precios actuales. Gemini 4 Hydrogen utiliza el mismo formato de solicitud que Gemini 4 Argon; la guía de Google indica que para cambiar entre ellos solo hay que modificar el ID del modelo.

ID del modelo

ID del modeloVentana de contextoEsfuerzo predeterminado
gemini-4-hydrogen1.048.576 tokens, compartidos por la entrada, el razonamiento y la salidahigh

Comprueba la lista de modelos y los niveles disponibles antes de ejecutar los ejemplos. Usa el ID de llamada completo devuelto por el descubrimiento cuando el nivel Default no esté disponible.

Ejemplo rápido

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}}'

El modelo va en la URL. contents es obligatorio. Una respuesta incluye candidates, finishReason y usageMetadata nativos; conserva las partes de contenido completas, incluido thoughtSignature, para el historial de conversación. Los prompts difíciles pueden tardar varios minutos. Google recomienda un tiempo de espera del cliente de 20 minutos. Usa streaming para recibir la salida a medida que esté disponible.

Endpoints

OperaciónEndpoint
Respuesta JSONPOST /v1beta/models/gemini-4-hydrogen:generateContent
Eventos enviados por el servidorPOST /v1beta/models/gemini-4-hydrogen:streamGenerateContent?alt=sse

La especificación OpenAPI incluye todos los esquemas anidados de solicitud y respuesta. Los campos opcionales usan los valores predeterminados de la API cuando se omiten. La API nativa pública conserva el cuerpo enviado para que Gemini lo valide. El Playground también comprueba las restricciones documentadas antes del envío y aplica sus ajustes de seguridad.

Parámetros de solicitud

La URL fija el modelo en gemini-4-hydrogen. El contrato de solicitud contiene 11 campos de nivel superior. Los campos son opcionales salvo que se indiquen como obligatorios; omitirlos no equivale a JSON null. El JSON arbitrario que admite valores nulos se conserva donde lo permite el esquema oficial.

CampoTipoObligatorioValor predeterminado y restricciones
contentsobject[]SíConversación no vacía; cada contenido tiene parts no vacías
systemInstructionobjectNoPartes solo de texto; no se inserta automáticamente la identidad del usuario
generationConfigobjectNoParámetros de generación de la siguiente tabla
toolsobject[]NoDeclaraciones de funciones y configuraciones de herramientas integradas
toolConfigobjectNoConfiguración de selección de funciones y recuperación
safetySettingsobject[]NoUn ajuste por categoría; sin categorías duplicadas
serviceTierstringNounspecified, standard, flex, priority; el procesamiento ordinario es standard
continuationTokenstringNoToken devuelto con finishReason: CONTINUATION; reenvía la misma solicitud con él para continuar una respuesta larga
labelsobjectNoValores de cadena; claves y valores en minúsculas, máximo de 63 puntos de código Unicode cada uno
modelstringNoNombre de recurso opcional; la URL determina el modelo real
storebooleanNoPreferencia genérica de almacenamiento de solicitudes; efecto específico en el modelo sin verificar

Gemini 4 Hydrogen no admite caché de contexto explícita (recursos cachedContent y cachedContents). La caché implícita está activada por defecto para prompts de al menos 4096 tokens.

Parámetros de generación

Campo en generationConfigTipoValor predeterminado y restricciones
maxOutputTokensintegerValor predeterminado de 65.536, incluido el razonamiento. Hasta 1.048.576 menos la entrada con continuación. Cada respuesta con o sin streaming admite hasta 65.536 tokens; usa continuación para una salida más larga
thinkingConfigobjectthinkingLevel: low, medium, high, xhigh (predeterminado high); se aceptan las formas en mayúsculas. includeThoughts: boolean, predeterminado false. Usa thinkingLevel; el parámetro obsoleto thinkingBudget se asigna a un nivel cuando se proporciona solo y no se puede combinar con thinkingLevel
stopSequencesstring[]Máximo de cinco secuencias
responseMimeTypestringPredeterminado text/plain; la salida con esquema JSON heredado requiere application/json
responseSchemaobjectDialecto de esquema oficial; mutuamente excluyente con responseJsonSchema
responseJsonSchemaJSONJSON Schema; mutuamente excluyente con responseSchema
responseFormatobjectConfiguración del formato de texto; text.mimeType y text.schema opcional. El esquema requiere un tipo MIME JSON
responseModalitiesstring[]Solo texto: TEXT; vacío significa texto
mediaResolutionenumMEDIA_RESOLUTION_UNSPECIFIED, LOW, MEDIUM, HIGH con el prefijo MEDIA_RESOLUTION_
seedintegerValor de 32 bits con signo; comportamiento determinista específico del modelo sin verificar
presencePenaltynumberCampo genérico; efecto e intervalo específicos del modelo sin verificar
frequencyPenaltynumberCampo genérico; efecto e intervalo específicos del modelo sin verificar
responseLogprobsbooleanCampo genérico; disponibilidad específica del modelo sin verificar
logprobsinteger0–20; requiere responseLogprobs: true; compatibilidad del modelo sin verificar
enableEnhancedCivicAnswersbooleanCampo genérico; compatibilidad del modelo sin verificar
enableAffectiveDialogbooleanCampo genérico; compatibilidad del modelo sin verificar
audioTranscriptionConfigobjectCampo genérico; opciones específicas del modelo sin verificar
translationConfigobjectCampo genérico; opciones específicas del modelo sin verificar

El documento OpenAPI enumera los tipos anidados, las enumeraciones, las propiedades obligatorias y los límites documentados de cada mensaje. Los esquemas describen parámetros oficiales; no son una lista de campos permitidos de solicitud de SeedRouter. Se conservan los campos y valores proporcionados por quien llama a la API. Que el esquema acepte un campo no demuestra su compatibilidad en todas las cuentas. El razonamiento minimal no figura entre los niveles. Google indica que temperature, topP, topK y candidateCount están obsoletos y recomienda eliminarlos; los valores de muestreo personalizados se ignoran. Si se envían en JSON nativo, siguen pasando sin cambios para que la API de Gemini los gestione.

Decodificación larga

Una respuesta de Gemini 4 Hydrogen devuelve hasta 65.536 tokens con streaming y hasta 65.536 tokens sin streaming. Para ir más allá, establece maxOutputTokens por encima de 65.536 y continúa la respuesta tú mismo:

  1. Envía la solicitud. Si la respuesta termina con finishReason: "CONTINUATION", lee candidates[0].continuationToken.
  2. Envía de nuevo la misma solicitud con ese valor en el campo de nivel superior continuationToken. No añadas la salida parcial a contents; el token contiene el estado del modelo, incluido su razonamiento.
  3. Repite hasta que finishReason sea STOP o 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"
}

Una etapa dedicada por completo al razonamiento puede devolver texto vacío con CONTINUATION; eso es un avance normal. Cada etapa vuelve a enviar al modelo tu prompt y todo lo generado hasta entonces, por lo que los tokens de entrada se vuelven a contar en cada etapa posterior. SeedRouter factura cada etapa como una solicitud independiente. El modo background del lado del servidor de la Interactions API no forma parte de este endpoint.

Salida estructurada

{
  "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"]
    }
  }
}

Los campos heredados responseSchema y responseJsonSchema no se pueden usar juntos. Ambos requieren responseMimeType: "application/json". El esquema más reciente responseFormat.text también debe especificar JSON. Usa las formas de enumeración REST (APPLICATION_JSON y TEXT_PLAIN) en ese mensaje. Las solicitudes pasan sin cambios; los tipos MIME de medios y el JSON arbitrario de funciones no se reescriben.

Funciones y herramientas integradas

Usa tools[].functionDeclarations con un nombre y con parameters o parametersJsonSchema, no ambos. La selección de funciones está en toolConfig.functionCallingConfig; allowedFunctionNames requiere ANY o VALIDATED y nombres declarados.

Tu aplicación ejecuta las funciones devueltas y proporciona sus resultados en el siguiente turno de conversación. Conserva cada thoughtSignature, llamada a función y respuesta de función originales. No redondees los identificadores numéricos al serializar argumentos de función opacos.

Google enumera Search, Maps, ejecución de código, contexto de URL, File Search y Computer Use para este modelo. Los recursos de File Search requieren acceso con las credenciales que atienden la solicitud. La configuración nativa de MCP aparece en el esquema genérico, pero su disponibilidad para este modelo no está establecida. Comprueba las restricciones oficiales de cada herramienta antes de combinarla con medios. Con grounding, Google cuenta las instrucciones internas de herramientas y las declaraciones de funciones como tokens de entrada. El Playground no ejecuta tus funciones personalizadas.

Entrada multimodal y seguridad

Un elemento contents[].parts[] contiene exactamente una carga útil: texto, medios en línea, una referencia a archivo, una llamada o respuesta de función, o una parte de ejecución. También puede incluir una firma o metadatos de medios. La entrada admite texto, imágenes, audio, vídeo y PDF; la salida es solo texto. El modelo no genera imágenes ni audio y no tiene Live API.

Para bytes en línea, usa inlineData.mimeType y data en base64. Para referencias a archivos, usa fileData.mimeType y fileUri. Una URL sintácticamente válida no demuestra que el modelo pueda recuperar su contenido. Los metadatos de vídeo pueden especificar desplazamientos de inicio y fin y un fps positivo no superior a 24. La comprensión de vídeo con agentes se selecciona por parte con mediaProcessing: "AGENTIC" junto al fileData o inlineData del vídeo; el procesamiento estático es el predeterminado. videoMetadata contiene solo startOffset, endOffset y fps.

Los ajustes de seguridad usan el formato nativo oficial y pasan por la API sin cambios. En el Playground, las cuatro categorías deben establecerse en BLOCK_MEDIUM_AND_ABOVE o un nivel más estricto; los umbrales inferiores solo están disponibles a través de la API.

Respuestas JSON y streaming

generateContent devuelve JSON nativo. streamGenerateContent?alt=sse emite JSON nativo en eventos SSE data:. Entre los campos importantes están candidates[].content.parts, finishReason, continuationToken, safetyRatings, groundingMetadata, promptFeedback, modelVersion, responseId y usageMetadata.

Conserva el contenido nativo completo en el historial de conversación. Los resúmenes de razonamiento no son lo mismo que las firmas de razonamiento. Una desconexión no demuestra que la generación haya fallado o terminado; inspecciona el resultado parcial y el registro de la cuenta antes de enviar otra solicitud. El consumo del streaming es acumulativo, así que usa los contadores más recientes en lugar de sumar cada fragmento.

Consumo y precios

promptTokenCount incluye la entrada en caché. cachedContentTokenCount se factura a la tarifa de entrada en caché, en lugar de volver a cobrarse como entrada sin caché. La salida facturable incluye candidatesTokenCount más thoughtsTokenCount. Hydrogen usa razonamiento high por defecto. Configura el nivel explícitamente al comparar su consumo con otro modelo.

Este modelo no tiene un escalón de precios según la longitud del contexto. Los precios actuales de SeedRouter usan tarifas de tokens Standard; no se han configurado descuentos Flex ni recargos Priority para esta integración. La compatibilidad con esos niveles de procesamiento aún requiere verificación. El grounding de Google Search puede añadir cargos por consulta además del consumo de tokens; comprueba los precios de las herramientas antes de activarlo. Las solicitudes fallidas no se cobran. Consulta la tabla de precios actuales.

Grupos de cuenta

El nivel Default usa el ID de modelo gemini-4-hydrogen sin sufijo. Los niveles adicionales usan gemini-4-hydrogen:GROUP_NAME en la URL. El Playground selecciona un nivel disponible; la API también acepta una cabecera explícita:

X-SeedRouter-Group: GROUP_NAME

El grupo elegido determina el precio y la capacidad disponible; una selección explícita no cambia silenciosamente a otro grupo. Omite la cabecera o usa auto para mantener el comportamiento predeterminado de la clave API.

Comprueba los grupos disponibles para tu clave API sin generar una respuesta:

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

Estado de verificación

La documentación oficial se comprobó el 13 de noviembre de 2026. Ese día se superaron tres comprobaciones de pago con un único intento cada una a través de SeedRouter: JSON estructurado con pensamiento low, SSE con pensamiento xhigh y llamada a una función declarada con pensamiento low. Los tokens de entrada, salida y pensamiento notificados coincidieron con los cargos registrados según las tarifas publicadas. La comprensión de medios, la fundamentación, Computer Use, la continuación/decodificación larga, otros campos genéricos y los niveles de procesamiento siguen sin verificar. Estas comprobaciones no establecen calidad ni latencia comparativas.

Referencias