Elastyczne wnioskowanie

Gemini Flex API to poziom wnioskowania, który oferuje 50% obniżkę kosztów w porównaniu ze stawkami standardowymi w zamian za zmienne opóźnienie i dostępność bez gwarancji. Jest on przeznaczony do zbiorów zadań, które są odporne na opóźnienia i wymagają przetwarzania synchronicznego, ale nie potrzebują wydajności w czasie rzeczywistym, jaką zapewnia standardowy interfejs API.

Jak korzystać z Flex

Aby korzystać z poziomu Flex, w żądaniu określ service_tier jako flex. Domyślnie, jeśli to pole zostanie pominięte, żądania będą korzystać z poziomu standardowego.

Python

from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-3.6-flash",
    input="Analyze this dataset for trends...",
    service_tier='flex'
)
print(interaction.output_text)

JavaScript

import { GoogleGenAI } from '@google/genai';

const client = new GoogleGenAI({});

async function main() {
    const interaction = await client.interactions.create({
        model: 'gemini-3.6-flash',
        input: 'Analyze this dataset for trends...',
        service_tier: 'flex'
    });
    console.log(interaction.output_text);
}
await main();

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -d '{
      "model": "gemini-3.6-flash",
      "input": "Analyze this dataset for trends...",
      "service_tier": "flex"
  }'

Jak działa wnioskowanie Flex

Wnioskowanie Gemini Flex wypełnia lukę między standardowym interfejsem API a 24-godzinnym czasem realizacji interfejsu Batch API. Wykorzystuje ono moc obliczeniową poza godzinami szczytu, którą można „zrzucać”, aby zapewnić ekonomiczne rozwiązanie do zadań wykonywanych w tle i sekwencyjnych przepływów pracy.

Funkcja Flex Priorytet Standardowy Wsad
Ceny 50% rabatu 75–100% więcej niż w przypadku wersji Standard Bilet normalny 50% rabatu
Opóźnienie Minuty (docelowo 1–15 min) Niskie (sekundy) Od sekund do minut Do 24 godzin
Niezawodność Bez gwarancji (możliwość zrzucania) Wysoka (bez możliwości zrzucania) Wysoka / średnio wysoka Wysoka (w przypadku przepustowości)
Interfejs Synchroniczna Synchroniczna Synchroniczna Asynchroniczny

Główne korzyści

  • Opłacalność: znaczne oszczędności w przypadku ocen nieprodukcyjnych, agentów działających w tle i wzbogacania danych.
  • Niewielkie utrudnienia: wystarczy dodać jeden parametr do istniejących żądań.
  • Synchroniczne przepływy pracy: idealne do sekwencyjnych łańcuchów interfejsów API, w których kolejne żądanie zależy od wyniku poprzedniego, co sprawia, że jest bardziej elastyczny niż w przypadku zbiorów zadań agentowych.

Przypadki użycia

  • Oceny offline: przeprowadzanie testów regresyjnych lub tworzenie tabel wyników za pomocą „LLM jako sędziego”.
  • Agenci działający w tle: zadania sekwencyjne, takie jak aktualizacje CRM, tworzenie profili czy moderowanie treści, w których dopuszczalne są kilkuminutowe opóźnienia.
  • Badania z ograniczonym budżetem: eksperymenty akademickie, które wymagają dużej liczby tokenów przy ograniczonym budżecie.

Ograniczenia liczby żądań

Ruch związany z wnioskowaniem Flex wlicza się do ogólnych limitów liczby żądań. Nie oferuje on rozszerzonych limitów liczby żądań, takich jak interfejs Batch API.

Pojemność z możliwością zrzucania

Ruch Flex jest traktowany z niższym priorytetem. Jeśli nastąpi wzrost ruchu standardowego, żądania Flex mogą zostać wywłaszczone lub usunięte, aby zapewnić pojemność użytkownikom o wysokim priorytecie. Jeśli szukasz wnioskowania o wysokim priorytecie, sprawdź wnioskowanie priorytetowe

Kody błędów

Gdy pojemność Flex jest niedostępna lub system jest przeciążony, interfejs API zwraca standardowe kody błędów:

  • 503 Usługa niedostępna: system jest obecnie zajęty.
  • 429 Zbyt wiele żądań: limity liczby żądań lub wyczerpanie zasobów.

Odpowiedzialność klienta

  • Brak rezerwowej konfiguracji po stronie serwera: aby zapobiec nieoczekiwanym opłatom, system nie będzie automatycznie uaktualniać żądania Flex do poziomu standardowego, jeśli pojemność Flex jest pełna.
  • Ponowne próby: musisz zaimplementować własną logikę ponawiania prób po stronie klienta z wzrastającym czasem do ponowienia.
  • Limity czasu: ponieważ żądania Flex mogą znajdować się w kolejce, zalecamy zwiększenie limitów czasu po stronie klienta do co najmniej 10 minut, aby uniknąć przedwczesnego zamknięcia połączenia.

Dostosowywanie limitów czasu

Limity czasu dla poszczególnych żądań możesz skonfigurować w przypadku interfejsu REST API i bibliotek klienta. Zawsze upewnij się, że limit czasu po stronie klienta obejmuje zamierzony czas oczekiwania serwera (np. ponad 600 s w przypadku kolejek oczekiwania Flex). Pakiety SDK oczekują wartości limitu czasu w milisekundach.

Limity czasu dla poszczególnych żądań

Python

from google import genai

client = genai.Client(http_options={"timeout": 900000})

interaction = client.interactions.create(
    model="gemini-3.6-flash",
    input="why is the sky blue?",
    service_tier="flex",
)

JavaScript

import { GoogleGenAI } from '@google/genai';

const client = new GoogleGenAI({});

async function main()