Text
Gemini 4 Hydrogen
Natywne żądania Gemini, poziomy rozumowania, długie dekodowanie z tokenami kontynuacji, narzędzia, wejście multimodalne i strumieniowanie. Zawiera limity modelu i status weryfikacji.
Używaj gemini-4-hydrogen w natywnym formacie Gemini. Strona modelu zawiera Playground i aktualne ceny. Gemini 4 Hydrogen używa tego samego formatu żądań co Gemini 4 Argon; według przewodnika Google przejście między nimi wymaga jedynie zmiany identyfikatora modelu.
ID modelu
| ID modelu | Okno kontekstu | Domyślny poziom wysiłku |
|---|---|---|
gemini-4-hydrogen | 1 048 576 tokenów, wspólnych dla wejścia, rozumowania i wyjścia | high |
Sprawdź listę modeli i dostępne poziomy przed uruchomieniem przykładów. Używaj pełnego identyfikatora wywołania zwróconego przez wykrywanie, gdy poziom Default jest niedostępny.
Szybki przykład
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}}'Model umieszcza się w URL. contents jest wymagane. Odpowiedź zawiera natywne candidates, finishReason i usageMetadata; zachowuj pełne części treści, w tym thoughtSignature, w historii rozmowy. Trudne prompty mogą być przetwarzane przez kilka minut. Google zaleca 20-minutowy limit czasu klienta. Używaj strumieniowania, aby otrzymywać wyjście w miarę jego powstawania.
Endpointy
| Operacja | Endpoint |
|---|---|
| Odpowiedź JSON | POST /v1beta/models/gemini-4-hydrogen:generateContent |
| Zdarzenia wysyłane przez serwer | POST /v1beta/models/gemini-4-hydrogen:streamGenerateContent?alt=sse |
Specyfikacja OpenAPI zawiera każdy zagnieżdżony schemat żądania i odpowiedzi. Pominięte pola opcjonalne używają domyślnych wartości API. Publiczne natywne API zachowuje przesłaną treść do walidacji przez Gemini. Playground sprawdza też udokumentowane ograniczenia przed wysłaniem i egzekwuje swoje ustawienia bezpieczeństwa.
Parametry żądania
URL ustala model na gemini-4-hydrogen. Kontrakt żądania zawiera 11 pól najwyższego poziomu. Pola są opcjonalne, chyba że oznaczono je jako wymagane; pominięcie różni się od JSON null. Dowolny JSON dopuszczający null jest zachowywany tam, gdzie pozwala na to oficjalny schemat.
| Pole | Typ | Wymagane | Wartość domyślna i ograniczenia |
|---|---|---|---|
contents | object[] | Tak | Niepusta rozmowa; każda treść ma niepuste parts |
systemInstruction | object | Nie | Części wyłącznie tekstowe; tożsamość użytkownika nie jest wstawiana automatycznie |
generationConfig | object | Nie | Parametry generowania w następnej tabeli |
tools | object[] | Nie | Deklaracje funkcji i konfiguracje wbudowanych narzędzi |
toolConfig | object | Nie | Konfiguracja wyboru funkcji i pobierania informacji |
safetySettings | object[] | Nie | Jedno ustawienie na kategorię; bez powtarzających się kategorii |
serviceTier | string | Nie | unspecified, standard, flex, priority; zwykłe przetwarzanie to standard |
continuationToken | string | Nie | Token zwrócony z finishReason: CONTINUATION; wyślij ponownie to samo żądanie z tym tokenem, aby kontynuować długą odpowiedź |
labels | object | Nie | Wartości tekstowe; klucze/wartości małymi literami, każde maksymalnie 63 punkty kodowe Unicode |
model | string | Nie | Opcjonalna nazwa zasobu; URL określa rzeczywisty model |
store | boolean | Nie | Ogólna preferencja przechowywania żądania; efekt w tym modelu niezweryfikowany |
Jawne buforowanie kontekstu (zasoby cachedContent i cachedContents) nie jest obsługiwane w Gemini 4 Hydrogen. Niejawne buforowanie jest domyślnie włączone dla promptów mających co najmniej 4096 tokenów.
Parametry generowania
Pole w generationConfig | Typ | Wartość domyślna i ograniczenia |
|---|---|---|
maxOutputTokens | integer | Domyślnie 65 536, wliczając rozumowanie. Do 1 048 576 pomniejszonych o wejście przy kontynuacji. Każda odpowiedź strumieniowa lub niestrumieniowa obsługuje do 65 536 tokenów; użyj kontynuacji dla dłuższego wyjścia |
thinkingConfig | object | thinkingLevel: low, medium, high, xhigh (domyślnie high); akceptowane są zapisy wielkimi literami. includeThoughts: boolean, domyślnie false. Używaj thinkingLevel; przestarzały thinkingBudget jest mapowany na poziom, gdy podano go osobno, i nie może być łączony z thinkingLevel |
stopSequences | string[] | Maksymalnie pięć sekwencji |
responseMimeType | string | Domyślnie text/plain; wyjście według starszego schematu JSON wymaga application/json |
responseSchema | object | Oficjalny dialekt schematu; wzajemnie wyklucza się z responseJsonSchema |
responseJsonSchema | JSON | JSON Schema; wzajemnie wyklucza się z responseSchema |
responseFormat | object | Konfiguracja formatu tekstu; text.mimeType i opcjonalne text.schema. Schemat wymaga typu MIME JSON |
responseModalities | string[] | Tylko tekst: TEXT; puste oznacza tekst |
mediaResolution | enum | MEDIA_RESOLUTION_UNSPECIFIED, LOW, MEDIUM, HIGH z prefiksem MEDIA_RESOLUTION_ |
seed | integer | Wartość 32-bitowa ze znakiem; deterministyczne zachowanie w tym modelu niezweryfikowane |
presencePenalty | number | Pole ogólne; efekt/zakres w tym modelu niezweryfikowany |
frequencyPenalty | number | Pole ogólne; efekt/zakres w tym modelu niezweryfikowany |
responseLogprobs | boolean | Pole ogólne; dostępność w tym modelu niezweryfikowana |
logprobs | integer | 0–20; wymaga responseLogprobs: true; obsługa w modelu niezweryfikowana |
enableEnhancedCivicAnswers | boolean | Pole ogólne; obsługa w modelu niezweryfikowana |
enableAffectiveDialog | boolean | Pole ogólne; obsługa w modelu niezweryfikowana |
audioTranscriptionConfig | object | Pole ogólne; opcje w tym modelu niezweryfikowane |
translationConfig | object | Pole ogólne; opcje w tym modelu niezweryfikowane |
Dokument OpenAPI wymienia zagnieżdżone typy, wartości enum, wymagane właściwości i udokumentowane granice każdego komunikatu. Schematy opisują oficjalne parametry; nie stanowią listy dozwolonych żądań SeedRouter. Pola i wartości dostarczone przez wywołującego są zachowywane. Akceptowanie pola przez schemat nie dowodzi jego obsługi na każdym koncie. minimal nie jest wymienionym poziomem rozumowania. Google podaje, że temperature, topP, topK i candidateCount są przestarzałe i należy je usunąć; niestandardowe wartości próbkowania są ignorowane. Przesłane w natywnym JSON nadal przechodzą bez zmian do obsługi przez Gemini API.
Długie dekodowanie
Jedna odpowiedź Gemini 4 Hydrogen zwraca do 65 536 tokenów przy strumieniowaniu i do 65 536 tokenów bez strumieniowania. Aby uzyskać więcej, ustaw maxOutputTokens powyżej 65 536 i samodzielnie kontynuuj odpowiedź:
- Wyślij żądanie. Jeśli odpowiedź kończy się
finishReason: "CONTINUATION", odczytajcandidates[0].continuationToken. - Wyślij ponownie to samo żądanie z tą wartością w polu najwyższego poziomu
continuationToken. Nie dopisuj częściowego wyjścia docontents; token przenosi stan modelu, w tym jego rozumowanie. - Powtarzaj, aż
finishReasonbędzie równeSTOPlubMAX_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"
}Runda żądania poświęcona w całości rozumowaniu może zwrócić pusty tekst z CONTINUATION; to normalny postęp. Każda runda ponownie wysyła do modelu Twój prompt i wszystko wygenerowane do tej pory, więc tokeny wejścia są liczone ponownie w każdej późniejszej rundzie. SeedRouter rozlicza każdą rundę jako osobne żądanie. Tryb background po stronie serwera w Interactions API nie jest częścią tego endpointu.
Ustrukturyzowane wyjście
{
"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"]
}
}
}Starszych pól responseSchema i responseJsonSchema nie można używać razem. Oba wymagają responseMimeType: "application/json". Nowszy schemat responseFormat.text również musi wskazywać JSON. W tym komunikacie używaj zapisów enum REST (APPLICATION_JSON i TEXT_PLAIN). Żądania przechodzą bez zmian; typy MIME multimediów i dowolny JSON funkcji nie są przepisywane.
Funkcje i wbudowane narzędzia
Używaj tools[].functionDeclarations z nazwą oraz albo parameters, albo parametersJsonSchema, nie oboma naraz. Wybór funkcji znajduje się w toolConfig.functionCallingConfig; allowedFunctionNames wymaga ANY lub VALIDATED oraz zadeklarowanych nazw.
Twoja aplikacja wykonuje zwrócone funkcje i dostarcza ich wyniki w następnej turze rozmowy. Zachowuj każdy oryginalny thoughtSignature, wywołanie funkcji i odpowiedź funkcji. Nie zaokrąglaj identyfikatorów liczbowych podczas serializacji nieprzezroczystych argumentów funkcji.
Google wymienia Search, Maps, wykonywanie kodu, kontekst URL, File Search i Computer Use dla tego modelu. Zasoby File Search wymagają dostępu przy użyciu poświadczeń obsługujących żądanie. Natywna konfiguracja MCP pojawia się w ogólnym schemacie, ale jej dostępność w tym modelu nie została ustalona. Sprawdź oficjalne ograniczenia każdego narzędzia przed połączeniem go z multimediami. Przy ugruntowaniu odpowiedzi Google liczy wewnętrzne instrukcje narzędzi i deklaracje funkcji jako tokeny wejścia. Playground nie wykonuje Twoich niestandardowych funkcji.
Wejście multimodalne i bezpieczeństwo
Element contents[].parts[] zawiera dokładnie jeden ładunek: tekst, multimedia osadzone bezpośrednio, odwołanie do pliku, wywołanie/odpowiedź funkcji lub część wykonania. Może też zawierać podpis lub metadane multimediów. Wejście obsługuje tekst, obrazy, dźwięk, wideo i pliki PDF; wyjście jest wyłącznie tekstowe. Model nie generuje obrazów ani dźwięku i nie ma Live API.
Dla bajtów osadzonych bezpośrednio używaj inlineData.mimeType i data w base64. Dla odwołań do plików używaj fileData.mimeType i fileUri. Poprawny składniowo URL nie dowodzi, że model może pobrać zasób. Metadane wideo mogą określać przesunięcia początku/końca i dodatnią wartość fps nie większą niż 24. Agentowe rozumienie wideo wybiera się dla każdej części przez mediaProcessing: "AGENTIC" obok fileData lub inlineData wideo; domyślne jest przetwarzanie statyczne. videoMetadata zawiera tylko startOffset, endOffset i fps.
Ustawienia bezpieczeństwa używają oficjalnego natywnego formatu i przechodzą przez API bez zmian. W Playground wszystkie cztery kategorie muszą być ustawione na BLOCK_MEDIUM_AND_ABOVE lub bardziej restrykcyjnie; niższe progi są dostępne wyłącznie przez API.
Odpowiedzi JSON i strumieniowanie
generateContent zwraca natywny JSON. streamGenerateContent?alt=sse emituje natywny JSON w zdarzeniach SSE data:. Ważne pola to candidates[].content.parts, finishReason, continuationToken, safetyRatings, groundingMetadata, promptFeedback, modelVersion, responseId i usageMetadata.
Zachowuj pełną natywną treść w historii rozmowy. Podsumowania rozumowania nie są tym samym co podpisy rozumowania. Rozłączenie nie dowodzi, że generowanie nie powiodło się lub zostało ukończone; sprawdź częściowy wynik i zapis na koncie przed wysłaniem kolejnego żądania. Zużycie w strumieniu jest narastające, więc używaj najnowszych liczników zamiast sumować każdy fragment.
Zużycie i ceny
promptTokenCount obejmuje wejście z pamięci podręcznej. cachedContentTokenCount jest rozliczane według stawki za wejście z pamięci podręcznej, zamiast być ponownie rozliczane jako wejście niebuforowane. Płatne wyjście obejmuje candidatesTokenCount oraz thoughtsTokenCount. Hydrogen domyślnie używa poziomu rozumowania high. Ustawiaj poziom jawnie, porównując jego zużycie z innym modelem.
Ten model nie ma progu cenowego zależnego od długości kontekstu. Aktualne ceny SeedRouter używają stawek za tokeny Standard; zniżki Flex i dopłaty Priority nie zostały skonfigurowane dla tej integracji. Obsługa tych poziomów przetwarzania nadal wymaga weryfikacji. Ugruntowanie przez Google Search może dodawać opłaty za zapytania poza zużyciem tokenów; sprawdź ceny narzędzi przed włączeniem tej funkcji. Nieudane żądania nie są płatne. Zobacz aktualny cennik.
Grupy konta
Poziom Default używa identyfikatora modelu gemini-4-hydrogen bez sufiksu. Dodatkowe poziomy używają gemini-4-hydrogen:GROUP_NAME w URL. Playground wybiera dostępny poziom; API akceptuje też jawny nagłówek:
X-SeedRouter-Group: GROUP_NAMEWybrana grupa określa cenę i dostępną przepustowość; jawny wybór nie powoduje cichego przełączenia do innej grupy. Pomiń nagłówek lub użyj auto, aby zachować domyślne zachowanie klucza API.
Sprawdź grupy dostępne dla Twojego klucza API bez generowania odpowiedzi:
curl "https://api.seedrouter.ai/api/seedrouter/llm/groups?model=gemini-4-hydrogen" \
-H "Authorization: Bearer YOUR_SEEDROUTER_KEY"Status weryfikacji
Oficjalną dokumentację sprawdzono 13 listopada 2026 roku. Tego dnia pomyślnie zakończyły się trzy płatne kontrole przez SeedRouter, każda z jedną próbą: ustrukturyzowany JSON z myśleniem low, SSE z myśleniem xhigh i wywołanie zadeklarowanej funkcji z myśleniem low. Raportowane tokeny wejścia, wyjścia i myślenia odpowiadały zapisanym opłatom według opublikowanych stawek. Rozumienie mediów, ugruntowanie w źródłach, Computer Use, kontynuacja/długie dekodowanie, inne ogólne pola i poziomy przetwarzania pozostają niezweryfikowane. Kontrole te nie ustalają porównawczej jakości ani opóźnienia.
