Claude Opus 5.5 jest już dostępny w SeedRouter

Text

Gemini 3.1 Pro

View Markdown

Natywne żądania Gemini, wejście multimodalne, rozumowanie, narzędzia, pamięć podręczna i strumieniowanie. Limity modelu i status weryfikacji.

Używaj gemini-3.1-pro-preview w natywnym formacie Gemini. Strona modelu zawiera Playground i aktualne ceny; przewodnik po wariantach modelu wyjaśnia dwa oficjalne ID.

ID modelu

ID modeluLimit wejściaDomyślny poziom rozumowania
gemini-3.1-pro-preview1 048 576 tokenówhigh

Krótki przykład

curl https://api.seedrouter.ai/v1beta/models/gemini-3.1-pro-preview: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}}'

Model należy podać w URL. contents jest wymagane. Odpowiedź zawiera natywne candidates, finishReason i usageMetadata; zachowuj kompletne części treści, w tym thoughtSignature, w historii rozmowy.

Punkty końcowe

OperacjaEndpoint
Odpowiedź JSONPOST /v1beta/models/gemini-3.1-pro-preview:generateContent
Zdarzenia wysyłane przez serwerPOST /v1beta/models/gemini-3.1-pro-preview:streamGenerateContent?alt=sse

Specyfikacja OpenAPI zawiera wszystkie zagnieżdżone schematy żądań i odpowiedzi. Pominięte pola opcjonalne korzystają z wartości domyślnych API. SeedRouter przekazuje wysłaną treść bez filtrowania nieznanych pól, usuwania nieobsługiwanych pól ani weryfikacji wartości parametrów modelu. O przyjęciu żądania decyduje Gemini API.

Parametry żądania

URL ustala model na gemini-3.1-pro-preview. Kontrakt żądania zawiera 12 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 wartości null zostaje zachowany tam, gdzie pozwala na to oficjalny schemat.

PoleTypWymaganeWartość domyślna i ograniczenia
contentsobject[]TakNiepusta rozmowa; każda treść ma niepuste parts
systemInstructionobjectNieCzęści wyłącznie tekstowe; tożsamość użytkownika nie jest wstawiana automatycznie
generationConfigobjectNieParametry generowania w następnej tabeli
toolsobject[]NieDeklaracje funkcji i konfiguracje wbudowanych narzędzi
toolConfigobjectNieKonfiguracja wyboru funkcji i pobierania informacji
safetySettingsobject[]NieJedno ustawienie na kategorię; bez powtórzonych kategorii
cachedContentstringNieIstniejący zasób cachedContents/{id}; wymaga odpowiedniego dostępu
serviceTierstringNieunspecified, standard, flex, priority; zwykłe przetwarzanie to standard
labelsobjectNieWartości tekstowe; klucze/wartości małymi literami, maksymalnie po 63 punkty kodowe Unicode
modelstringNieOpcjonalna nazwa zasobu; URL określa rzeczywisty model
storebooleanNieOgólna preferencja przechowywania żądania; wpływ dla tego modelu niezweryfikowany
continuationTokenstringNieOgólny token o niejawnej strukturze; kontynuacja nie jest potwierdzoną możliwością 3.1 Pro

Parametry generowania

Pole w generationConfigTypWartość domyślna i ograniczenia
maxOutputTokensinteger1–65 536, w tym rozumowanie; wartość domyślna modelu 65 536
thinkingConfigobjectthinkingLevel: low, medium, high (domyślnie high); akceptowany zapis wielkimi literami. includeThoughts: boolean, domyślnie false. thinkingBudget: integer, wzajemnie wyklucza się z thinkingLevel; nie ustalono zakresu liczbowego właściwego dla modelu
temperaturenumber0–2; Google zaleca domyślne 1.0
topPnumber0–1; pomiń, aby użyć wartości domyślnej modelu
topKintegerOpcjonalne; nie ustalono konfigurowalnego zakresu właściwego dla modelu
candidateCountintegerDokładnie 1
stopSequencesstring[]Maksymalnie pięć sekwencji
responseMimeTypestringDomyślnie text/plain; starsze wyjście ze schematem JSON wymaga application/json
responseSchemaobjectOficjalny dialekt schematu; wzajemnie wyklucza się z responseJsonSchema
responseJsonSchemaJSONJSON Schema; wzajemnie wyklucza się z responseSchema
responseFormatobjectKonfiguracja formatu tekstu; text.mimeType i opcjonalne text.schema. Schemat wymaga typu MIME JSON
responseModalitiesstring[]Tylko tekst: TEXT; pusta wartość oznacza tekst
mediaResolutionenumMEDIA_RESOLUTION_UNSPECIFIED, LOW, MEDIUM, HIGH z prefiksem MEDIA_RESOLUTION_
seedinteger32-bitowa wartość ze znakiem; deterministyczne działanie dla tego modelu niezweryfikowane
presencePenaltynumberPole ogólne; wpływ/zakres dla tego modelu niezweryfikowany
frequencyPenaltynumberPole ogólne; wpływ/zakres dla tego modelu niezweryfikowany
responseLogprobsbooleanPole ogólne; dostępność dla tego modelu niezweryfikowana
logprobsinteger0–20; wymaga responseLogprobs: true; obsługa przez model niezweryfikowana
enableEnhancedCivicAnswersbooleanPole ogólne; obsługa przez model niezweryfikowana
enableAffectiveDialogbooleanPole ogólne; obsługa przez model niezweryfikowana
audioTranscriptionConfigobjectPole ogólne; opcje właściwe dla modelu niezweryfikowane
translationConfigobjectPole ogólne; opcje właściwe dla modelu niezweryfikowane

Dokument OpenAPI opisuje zagnieżdżone typy, wartości enum, wymagane właściwości i udokumentowane granice każdej wiadomości. Schematy opisują oficjalne parametry; nie stanowią listy pól dozwolonych w żądaniach SeedRouter. Pola i wartości podane przez wywołującego są zachowywane. Przyjęcie pola przez schemat nie dowodzi jego obsługi przez każdy model lub konto. Model nie obsługuje rozumowania minimal ani przetwarzania Agentic Video.

Ustrukturyzowane odpowiedzi

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

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. Używaj w tej wiadomości zapisu 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żyj tools[].functionDeclarations z nazwą i albo parameters, albo parametersJsonSchema, nie z oboma. Schematy odpowiedzi podlegają tej samej zasadzie wzajemnego wykluczania. Wybór funkcji znajduje się w toolConfig.functionCallingConfig; allowedFunctionNames wymaga ANY lub VALIDATED oraz zadeklarowanych nazw.

Zwykły model obsługuje wywoływanie funkcji; wariant customtools nie jest wymagany. Aplikacja wykonuje zwrócone funkcje i dostarcza ich wyniki w następnej turze rozmowy. Zachowaj każdy oryginalny thoughtSignature, wywołanie funkcji i odpowiedź funkcji. Nie zaokrąglaj identyfikatorów liczbowych podczas serializacji argumentów funkcji o niejawnej strukturze.

Google wymienia Search, Maps, wykonywanie kodu i kontekst adresu URL jako możliwości modelu. File Search jest wymienione tylko dla AI Studio. Istniejące zasoby pamięci podręcznej i wyszukiwania plików wymagają dostępu z użyciem danych uwierzytelniających obsługujących żądanie. Computer Use i natywna konfiguracja MCP występują w schemacie ogólnym, ale ich dostępność dla tego modelu nie została potwierdzona. Playground nie wykonuje twoich niestandardowych funkcji.

Wejście multimodalne i bezpieczeństwo

Element contents[].parts[] zawiera dokładnie jeden ładunek danych: tekst, multimedia inline, 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.

Dla bajtów inline 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ć zawartość. Metadane wideo mogą określać przesunięcia początku/końca i dodatnie fps nie większe niż 24. Globalna rozdzielczość multimediów i rozdzielczość poszczególnych części to odrębne ustawienia. Agentic Video nie jest obsługiwane.

Dla multimediów inline użyj natywnego JSON, a dla większych multimediów dostępnego odwołania do pliku. Dokładne limity formatu plików, czasu trwania i multimediów na żądanie nadal podlegają oficjalnej dokumentacji multimediów i weryfikacji online.

Ustawienia bezpieczeństwa korzystają z oficjalnego formatu natywnego. Pominięcie pozostawia domyślne ustawienia Gemini API; ustawienia podane jawnie przechodzą bez zmian.

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, 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 niepowodzenia ani ukończenia generowania; przed wysłaniem kolejnego żądania sprawdź częściowy wynik i zapis na koncie. Zużycie w strumieniu jest skumulowane, więc używaj najnowszych liczników zamiast sumować każdy fragment.

W odróżnieniu od Argon kontynuacja dłuższego wyjścia nie została potwierdzona dla 3.1 Pro. Nie buduj pętli kontynuacji tylko dlatego, że ogólny schemat odpowiedzi zawiera pole tokenu.

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, a nie ponownie jako zwykłe wejście. Płatne wyjście obejmuje candidatesTokenCount oraz thoughtsTokenCount. Zgłoszone tokeny promptu używane przez narzędzia również wliczają się do wejścia.

Próg kontekstu wynosi 200 000 tokenów wejściowych, wliczając wejście z pamięci podręcznej; większe wejścia korzystają ze stawek długiego kontekstu. Dostępne grupy konta używają tego samego wyrażenia cenowego modelu i własnego bieżącego mnożnika. Zobacz aktualną tabelę cen.

Flex i Priority to odrębne poziomy przetwarzania. Flex nie obniża o połowę stawek za wejście z pamięci podręcznej. Wynik zgłoszony jako Standard nie może powodować dopłaty Priority. Jeśli odpowiedź zażądana jako Priority nie potwierdza rzeczywistego poziomu, ta integracja używa stawek Standard za tokeny. Opłaty za narzędzia i jawne przechowywanie pamięci podręcznej są odrębne od cen tokenów generowania; nie obiecujemy wspólnego bezpłatnego limitu narzędzi. Nieudane żądania nie są płatne.

Wiele grup konta

Model korzysta z googlellm i googlellm-vertext, zachowując ich istniejące uprawnienia konta i ceny. Zachowaj dokładną pisownię każdej nazwy grupy. Wybierz dostępną grupę w Playground lub użyj opcjonalnego nagłówka API:

X-SeedRouter-Group: googlellm

Użyj googlellm-vertext, aby wybrać drugą grupę. Wybrana grupa określa cenę i dostępną przepustowość; jawny wybór nie przełącza się po cichu na inną grupę. Pomiń nagłówek lub użyj auto, aby zachować domyślne działanie klucza API.

Sprawdź grupy dostępne dla klucza API bez generowania odpowiedzi:

curl "https://api.seedrouter.ai/api/seedrouter/llm/groups?model=gemini-3.1-pro-preview"   -H "Authorization: Bearer YOUR_SEEDROUTER_KEY"

Status weryfikacji

Ustawienia i dokumentacja są zgodne z oficjalnym formatem natywnym. Weryfikacja parametrów należy do Gemini API. Testy transportu i rozliczeń offline nie potwierdzają dostępności produkcyjnej. Generowanie online, obie grupy konta, rozumienie multimediów, zasoby w pamięci podręcznej, wbudowane narzędzia i poziomy przetwarzania nadal wymagają płatnej weryfikacji całego przepływu. Nie przedstawiamy porównawczego wyniku jakości wariantu Customtools.

Źródła