Text
Gemini 4 Hydrogen
Requisições nativas do Gemini, níveis de raciocínio, decodificação longa com tokens de continuação, ferramentas, entrada multimodal e streaming. Inclui limites do modelo e status de verificação.
Use gemini-4-hydrogen com o formato nativo do Gemini. A página do modelo inclui o Playground e os preços atuais. Gemini 4 Hydrogen usa o mesmo formato de requisição do Gemini 4 Argon; o guia do Google diz que a migração entre eles exige apenas a alteração do ID do modelo.
ID do modelo
| ID do modelo | Janela de contexto | Esforço padrão |
|---|---|---|
gemini-4-hydrogen | 1.048.576 tokens, compartilhados entre entrada, raciocínio e saída | high |
Confira a lista de modelos e suas faixas disponíveis antes de executar os exemplos. Use o ID de chamada completo retornado pela descoberta quando a faixa Default estiver indisponível.
Exemplo 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}}'O modelo fica na URL. contents é obrigatório. Uma resposta inclui os campos nativos candidates, finishReason e usageMetadata; preserve as partes completas do conteúdo, incluindo thoughtSignature, para o histórico da conversa. Prompts difíceis podem levar vários minutos. O Google recomenda um timeout de 20 minutos no cliente. Use streaming para receber a saída à medida que ela fica disponível.
Endpoints
| Operação | Endpoint |
|---|---|
| Resposta JSON | POST /v1beta/models/gemini-4-hydrogen:generateContent |
| Eventos enviados pelo servidor | POST /v1beta/models/gemini-4-hydrogen:streamGenerateContent?alt=sse |
A especificação OpenAPI inclui todos os esquemas aninhados de requisição e resposta. Campos opcionais usam os padrões da API quando omitidos. A API nativa pública preserva o corpo enviado para validação pelo Gemini. O Playground também confere as restrições documentadas antes do envio e aplica suas configurações de segurança.
Parâmetros da requisição
A URL fixa o modelo como gemini-4-hydrogen. O contrato da requisição contém 11 campos de nível superior. Os campos são opcionais, salvo quando marcados como obrigatórios; a omissão difere de null em JSON. JSON arbitrário que aceita null é preservado onde o esquema oficial o permite.
| Campo | Tipo | Obrigatório | Padrão e restrições |
|---|---|---|---|
contents | object[] | Sim | Conversa não vazia; cada conteúdo tem parts não vazias |
systemInstruction | object | Não | Partes somente de texto; nenhuma identidade do usuário é inserida automaticamente |
generationConfig | object | Não | Parâmetros de geração na próxima tabela |
tools | object[] | Não | Declarações de funções e configurações de ferramentas integradas |
toolConfig | object | Não | Seleção de funções e configuração de recuperação |
safetySettings | object[] | Não | Uma configuração por categoria; sem categorias duplicadas |
serviceTier | string | Não | unspecified, standard, flex, priority; o processamento comum é standard |
continuationToken | string | Não | Token retornado com finishReason: CONTINUATION; reenvie a mesma requisição com ele para continuar uma resposta longa |
labels | object | Não | Valores de string; chaves/valores em minúsculas, no máximo 63 pontos de código Unicode cada |
model | string | Não | Nome de recurso opcional; a URL determina o modelo efetivo |
store | boolean | Não | Preferência genérica de armazenamento da requisição; efeito específico neste modelo não verificado |
O cache explícito de contexto (recursos cachedContent e cachedContents) não é compatível com Gemini 4 Hydrogen. O cache implícito está ativado por padrão para prompts de pelo menos 4.096 tokens.
Parâmetros de geração
Campo em generationConfig | Tipo | Padrão e restrições |
|---|---|---|
maxOutputTokens | integer | Padrão de 65.536, incluindo raciocínio. Até 1.048.576 menos a entrada com continuação. Cada resposta com ou sem streaming oferece suporte a até 65.536 tokens; use continuação para uma saída mais longa |
thinkingConfig | object | thinkingLevel: low, medium, high, xhigh (padrão high); grafias em maiúsculas são aceitas. includeThoughts: boolean, padrão false. Use thinkingLevel; o obsoleto thinkingBudget é mapeado para um nível quando fornecido sozinho e não pode ser combinado com thinkingLevel |
stopSequences | string[] | No máximo cinco sequências |
responseMimeType | string | Padrão text/plain; a saída legada com esquema JSON exige application/json |
responseSchema | object | Dialeto oficial do esquema; mutuamente exclusivo com responseJsonSchema |
responseJsonSchema | JSON | JSON Schema; mutuamente exclusivo com responseSchema |
responseFormat | object | Configuração do formato de texto; text.mimeType e text.schema opcional. O esquema exige tipo MIME JSON |
responseModalities | string[] | Somente texto: TEXT; vazio significa texto |
mediaResolution | enum | MEDIA_RESOLUTION_UNSPECIFIED, LOW, MEDIUM, HIGH com o prefixo MEDIA_RESOLUTION_ |
seed | integer | Valor de 32 bits com sinal; comportamento determinístico específico neste modelo não verificado |
presencePenalty | number | Campo genérico; efeito/faixa específicos neste modelo não verificados |
frequencyPenalty | number | Campo genérico; efeito/faixa específicos neste modelo não verificados |
responseLogprobs | boolean | Campo genérico; disponibilidade específica neste modelo não verificada |
logprobs | integer | 0–20; exige responseLogprobs: true; suporte do modelo não verificado |
enableEnhancedCivicAnswers | boolean | Campo genérico; suporte do modelo não verificado |
enableAffectiveDialog | boolean | Campo genérico; suporte do modelo não verificado |
audioTranscriptionConfig | object | Campo genérico; opções específicas neste modelo não verificadas |
translationConfig | object | Campo genérico; opções específicas neste modelo não verificadas |
O documento OpenAPI lista tipos aninhados, enums, propriedades obrigatórias e limites documentados para cada mensagem. Os esquemas descrevem parâmetros oficiais; eles não são uma lista de campos permitidos nas requisições do SeedRouter. Campos e valores fornecidos por quem chama a API são preservados. Um campo aceito pelo esquema não comprova suporte para todas as contas. O raciocínio minimal não é um nível listado. O Google diz que temperature, topP, topK e candidateCount estão obsoletos e recomenda removê-los; valores de amostragem personalizados são ignorados. Se enviados no JSON nativo, eles ainda passam sem alterações para que a API do Gemini os trate.
Decodificação longa
Uma resposta do Gemini 4 Hydrogen retorna até 65.536 tokens com streaming e até 65.536 tokens sem streaming. Para ir além, defina maxOutputTokens acima de 65.536 e continue a resposta por conta própria:
- Envie a requisição. Se a resposta terminar com
finishReason: "CONTINUATION", leiacandidates[0].continuationToken. - Envie novamente a mesma requisição com esse valor no campo de nível superior
continuationToken. Não acrescente a saída parcial acontents; o token carrega o estado do modelo, incluindo seu raciocínio. - Repita até que
finishReasonsejaSTOPouMAX_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"
}Uma rodada dedicada inteiramente ao raciocínio pode retornar texto vazio com CONTINUATION; isso é um avanço normal. Cada rodada envia seu prompt e tudo o que foi gerado até então de volta ao modelo, então os tokens de entrada são contados novamente em cada rodada posterior. O SeedRouter cobra cada rodada como uma requisição própria. O modo background da Interactions API, executado no servidor, não faz parte deste endpoint.
Saída estruturada
{
"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"]
}
}
}Os campos legados responseSchema e responseJsonSchema não podem ser usados juntos. Ambos exigem responseMimeType: "application/json". O esquema mais recente responseFormat.text também precisa especificar JSON. Use as grafias dos enums REST (APPLICATION_JSON e TEXT_PLAIN) nessa mensagem. As requisições passam sem alterações; tipos MIME de mídia e JSON arbitrário de funções não são reescritos.
Funções e ferramentas integradas
Use tools[].functionDeclarations com um nome e parameters ou parametersJsonSchema, mas não ambos. A seleção de funções fica em toolConfig.functionCallingConfig; allowedFunctionNames exige ANY ou VALIDATED e nomes declarados.
Seu aplicativo executa as funções retornadas e fornece seus resultados no próximo turno da conversa. Preserve cada thoughtSignature, chamada de função e resposta de função originais. Não arredonde identificadores numéricos ao serializar argumentos opacos de funções.
O Google lista Search, Maps, execução de código, contexto de URL, File Search e Computer Use para este modelo. Recursos do File Search exigem acesso com as credenciais que atendem à requisição. A configuração nativa de MCP aparece no esquema genérico, mas sua disponibilidade para este modelo não está estabelecida. Confira as restrições oficiais de cada ferramenta antes de combiná-la com mídia. Com grounding, o Google conta instruções internas de ferramentas e declarações de funções como tokens de entrada. O Playground não executa suas funções personalizadas.
Entrada multimodal e segurança
Um item de contents[].parts[] contém exatamente um payload: texto, mídia inline, uma referência de arquivo, uma chamada/resposta de função ou uma parte de execução. Ele também pode trazer uma assinatura ou metadados de mídia. A entrada oferece suporte a texto, imagens, áudio, vídeo e PDFs; a saída é somente texto. O modelo não gera imagens nem áudio e não tem Live API.
Para bytes inline, use inlineData.mimeType e data em base64. Para referências de arquivos, use fileData.mimeType e fileUri. Uma URL sintaticamente válida não comprova que o modelo possa recuperá-la. Os metadados de vídeo podem especificar deslocamentos de início/fim e um fps positivo de no máximo 24. A compreensão de vídeo por agentes é selecionada por parte com mediaProcessing: "AGENTIC" ao lado de fileData ou inlineData do vídeo; o processamento estático é o padrão. videoMetadata contém apenas startOffset, endOffset e fps.
As configurações de segurança usam o formato nativo oficial e passam pela API sem alterações. No Playground, todas as quatro categorias precisam estar definidas como BLOCK_MEDIUM_AND_ABOVE ou mais restritas; limites inferiores estão disponíveis apenas pela API.
Respostas JSON e streaming
generateContent retorna JSON nativo. streamGenerateContent?alt=sse emite JSON nativo em eventos SSE data:. Os campos importantes incluem candidates[].content.parts, finishReason, continuationToken, safetyRatings, groundingMetadata, promptFeedback, modelVersion, responseId e usageMetadata.
Preserve o conteúdo nativo completo no histórico da conversa. Resumos de raciocínio não são o mesmo que assinaturas de raciocínio. Uma desconexão não comprova que a geração falhou ou terminou; inspecione o resultado parcial e o registro da conta antes de enviar outra requisição. O uso no streaming é cumulativo, então use os contadores mais recentes em vez de somar todos os chunks.
Uso e preços
promptTokenCount inclui entrada em cache. cachedContentTokenCount é cobrado pela tarifa de entrada em cache, em vez de ser cobrado novamente como entrada sem cache. A saída faturável inclui candidatesTokenCount mais thoughtsTokenCount. Hydrogen usa raciocínio high por padrão. Defina o nível explicitamente ao comparar seu uso com outro modelo.
Não há degrau de preço por tamanho de contexto para este modelo. Os preços atuais do SeedRouter usam tarifas de tokens Standard; descontos Flex e acréscimos Priority não foram configurados para esta integração. O suporte a essas faixas de processamento ainda exige verificação. O grounding com Google Search pode adicionar cobranças por consulta além do uso de tokens; confira os preços das ferramentas antes de ativá-lo. Requisições que falham não são cobradas. Veja a tabela de preços atuais.
Grupos da conta
A faixa Default usa o ID simples do modelo gemini-4-hydrogen. Faixas adicionais usam gemini-4-hydrogen:GROUP_NAME na URL. O Playground seleciona uma faixa disponível; a API também aceita um cabeçalho explícito:
X-SeedRouter-Group: GROUP_NAMEO grupo escolhido determina o preço e a capacidade disponível; uma seleção explícita não muda silenciosamente para outro grupo. Omita o cabeçalho ou use auto para manter o comportamento padrão da chave de API.
Confira os grupos disponíveis para sua chave de API sem gerar uma resposta:
curl "https://api.seedrouter.ai/api/seedrouter/llm/groups?model=gemini-4-hydrogen" \
-H "Authorization: Bearer YOUR_SEEDROUTER_KEY"Status de verificação
A documentação oficial foi verificada em 13 de novembro de 2026. Nessa data, três verificações pagas de uma única tentativa cada pelo SeedRouter passaram: JSON estruturado com pensamento low, SSE com pensamento xhigh e chamada de uma função declarada com pensamento low. Os tokens de entrada, saída e pensamento informados corresponderam às cobranças registradas nas tarifas publicadas. Compreensão de mídia, fundamentação, Computer Use, continuação/decodificação longa, outros campos genéricos e níveis de processamento permanecem sem verificação. Essas verificações não estabelecem qualidade ou latência comparativas.
