Używamy cookies, żeby zwiększyć Twoje doświadczenia na stronie
CodeWorlds
Powrót do kolekcji
Przewodnik11 min czytania

Google Gemini, modele, API i realne koszty

Gemini oferuje okno kontekstu do 2 mln tokenow, multimodalnosc i tanie modele Flash. Wybor modelu, cennik, cache, batch i porownanie z GPT oraz Claude.

Google Gemini, wybór modelu, API i realne koszty

Gemini to rodzina modeli Google z dwiema cechami, które odróżniają ją od konkurencji: oknem kontekstu sięgającym dwóch milionów tokenów oraz natywną obsługą obrazu, dźwięku i wideo w tym samym wywołaniu co tekst. Dostęp masz przez darmowe AI Studio do prób, przez Gemini API w kodzie oraz przez Vertex AI, gdy potrzebujesz warstwy korporacyjnej.

Gdzie właściwie uruchamiasz Gemini

Cztery drogi prowadzą do tego samego modelu i łatwo je pomylić przy szukaniu dokumentacji.

Aplikacja Gemini to interfejs dla użytkownika końcowego, bez znaczenia dla programisty poza szybkim sprawdzeniem odpowiedzi. Google AI Studio daje przeglądarkowy plac zabaw z podglądem promptu i generowaniem kodu, i to od niego warto zacząć. Gemini API to zwykłe wywołania HTTP z kluczem, wystarczające dla większości aplikacji. Vertex AI dokłada uwierzytelnianie kontem usługi, kontrolę regionu przetwarzania danych, limity organizacyjne i integrację z resztą Google Cloud.

Wybór między dwoma ostatnimi sprowadza się do wymogów. Jeśli w firmie obowiązuje przetwarzanie danych w Europie i rozliczenie przez istniejące konto chmurowe, idziesz w Vertex. Jeśli budujesz produkt i chcesz klucza w zmiennej środowiskowej, wystarczy Gemini API.

Modele i który wybrać

ModelCena za milion tokenówKontekstDo czego
Gemini 3.1 Pro2 USD wejście, 12 USD wyjście do 200 tys. kontekstu, powyżej 4 i 18 USD2 mlnAnaliza dużych dokumentów, trudne rozumowanie, kod
Gemini 3.6 Flash1,50 USD wejście, 7,50 USD wyjście1 mlnNowsze wydanie Flasha, tańsze na wyjściu przy tej samej cenie wejścia
Gemini 3.5 Flash1,50 USD wejście, 9 USD wyjście1 mlnCodzienna praca produkcyjna, dobry stosunek jakości do ceny
Gemini 3.5 Flash-Lite0,30 USD wejście, 2,50 USD wyjście1 mlnKlasyfikacja, tagowanie, przetwarzanie masowe

Reguła doboru jest prosta i rzadko zawodzi. Zacznij od Flash. Jeśli jakość wystarcza, zostań przy nim, bo różnica w cenie wobec Pro sięga kilkukrotności. Jeśli zadanie wymaga wielokrokowego rozumowania albo analizy dokumentu na kilkaset stron, przejdź na Pro. Do zadań powtarzalnych, gdzie liczy się przepustowość, a nie finezja, zejdź na Flash-Lite.

Od kwietnia 2026 modele z rodziny Pro są dostępne wyłącznie odpłatnie. Flash i Flash-Lite zachowały darmowy próg z obniżonymi limitami dziennymi, co nadal wystarcza do prototypu.

Jak realnie obniżyć rachunek

Dwa mechanizmy zmieniają koszt bardziej niż wybór modelu.

Buforowanie kontekstu obniża cenę powtarzanego wejścia do około 0,20 USD za milion tokenów, czyli o mniej więcej dziewięćdziesiąt procent. Ma to znaczenie wszędzie tam, gdzie ten sam duży fragment wraca przy każdym zapytaniu: instrukcja systemowa, dokumentacja produktu, regulamin. Bez bufora płacisz za te same tokeny przy każdym wywołaniu.

Rachunek ma tu jednak drugą pozycję, o której łatwo zapomnieć przy samej obniżce. Za utrzymanie bufora płacisz osobno, według czasu i rozmiaru, przy modelach Pro rzędu kilku dolarów za milion tokenów na godzinę. Bufor opłaca się więc przy ruchu gęstym w czasie, a nie przy kilku zapytaniach dziennie, bo wtedy koszt przechowywania przewyższa oszczędność na wejściu. Zanim go włączysz, policz oba składniki razem.

Przetwarzanie wsadowe daje pięćdziesiąt procent zniżki dla zadań, które nie muszą wrócić natychmiast. Nocna klasyfikacja dziesięciu tysięcy zgłoszeń albo generowanie opisów produktów mieści się w tym trybie idealnie.

Warto też sprawdzić, ile z Twojego wejścia w ogóle musi trafiać do modelu. W wielu aplikacjach prompt puchnie przez historię rozmowy dokładaną w całości przy każdym obrocie, choć wystarczyłoby kilka ostatnich wiadomości i streszczenie reszty. Sam ten zabieg potrafi obciąć rachunek o połowę, zanim sięgniesz po bufor czy tryb wsadowy.

Trzecim czynnikiem jest długość odpowiedzi. Wyjście kosztuje kilkukrotnie więcej niż wejście, więc instrukcja ograniczająca formę odpowiedzi tnie rachunek skuteczniej niż skracanie promptu. Prośba o listę pięciu punktów zamiast eseju to często różnica rzędu wielokrotności.

Pierwsze wywołanie

Code
Bash
pip install google-genai
export GOOGLE_API_KEY=...
Code
Python
from google import genai

client = genai.Client()

odpowiedz = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Podsumuj ponizsza umowe w pieciu punktach: " + tresc_umowy
)

print(odpowiedz.text)

W TypeScripcie układ jest analogiczny i wpina się bez problemu w trasę API Next.js.

Code
TypeScript
import { GoogleGenAI } from '@google/genai'

const ai = new GoogleGenAI({})

export async function POST(req: Request) {
  const { pytanie } = await req.json()
  const wynik = await ai.models.generateContent({
    model: 'gemini-3.5-flash',
    contents: pytanie
  })
  return Response.json({ odpowiedz: wynik.text })
}

Klucz trzymaj po stronie serwera. Wywołanie z komponentu klienckiego ujawni go każdemu, kto otworzy narzędzia deweloperskie, a rachunek obciąży Ciebie.

Co naprawdę daje długi kontekst

Dwa miliony tokenów to około półtora tysiąca stron tekstu. Kusi, żeby wrzucać całą dokumentację do promptu zamiast budować wyszukiwanie, i czasem jest to właściwa decyzja.

Opłaca się przy jednorazowej analizie: przeczytanie umowy na trzysta stron, porównanie dwóch wersji specyfikacji, przejrzenie zrzutu logów z awarii. Robisz to raz, koszt jest jednorazowy, a jakość wyższa niż przy wyszukiwaniu fragmentów, bo model widzi całość.

Nie opłaca się w aplikacji odpowiadającej na pytania użytkowników. Sto tysięcy tokenów kontekstu przy każdym pytaniu, przy tysiącu pytań dziennie, daje rachunek, przy którym baza wektorowa i Pinecone albo pgvector wychodzą wielokrotnie taniej. Do tego dochodzi opóźnienie, bo model musi przetworzyć całe wejście, zanim zacznie odpowiadać.

Warto też wiedzieć, że skuteczność wyszukiwania w bardzo długim kontekście spada dla informacji leżących w środku. Jeśli wrzucasz duży dokument, umieść pytanie na końcu, a najważniejsze fragmenty na początku albo na końcu, nie w połowie.

Multimodalność w praktyce

Gemini przyjmuje obraz, dźwięk, wideo i PDF w tym samym wywołaniu co tekst, bez osobnych końcówek API i bez wcześniejszej konwersji.

Code
Python
plik = client.files.upload(file="nagranie-spotkania.mp4")

odpowiedz = client.models.generate_content(
    model="gemini-3.1-pro",
    contents=[plik, "Wypisz decyzje podjete na spotkaniu wraz ze znacznikami czasu."]
)

To odróżnia Gemini najbardziej w scenariuszach, które gdzie indziej wymagają potoku z kilku usług. Analiza nagrania rozmowy, odczyt skanowanej faktury, opis zrzutu ekranu z błędem, transkrypcja z podsumowaniem, wszystko idzie jednym wywołaniem.

Przy dokumentach skanowanych sprawdź jakość odczytu na własnych plikach, zanim zbudujesz proces. Faktury z pieczątką w poprzek albo tabele z scalonymi komórkami bywają odczytywane niepoprawnie, a błąd w jednej cyfrze kwoty kosztuje więcej niż cały model.

Ograniczenie dotyczy kosztu i czasu. Minuta wideo to znacznie więcej tokenów niż minuta czytania, więc przy dłuższych nagraniach policz koszt przed wdrożeniem procesu na stałe. Przy nagraniach godzinnych często taniej wychodzi transkrypcja tańszym modelem i praca na tekście.

Odpowiedzi w ustalonej strukturze

Do integracji z kodem potrzebujesz przewidywalnego kształtu odpowiedzi, nie prozy. Gemini przyjmuje schemat i zwraca zgodny z nim obiekt.

Code
Python
from pydantic import BaseModel

class Zgloszenie(BaseModel):
    kategoria: str
    priorytet: int
    wymaga_czlowieka: bool

wynik = client.models.generate_content(
    model="gemini-3.1-flash-lite",
    contents=f"Sklasyfikuj zgloszenie: {tresc}",
    config={"response_mime_type": "application/json", "response_schema": Zgloszenie}
)

Ta jedna zmiana usuwa całą klasę błędów: brak parsowania odpowiedzi wyrażeniami regularnymi, brak obsługi przypadku, w którym model dopisał zdanie przed JSON-em. Do zadań klasyfikacyjnych schemat plus Flash-Lite to układ, który obsługuje duży wolumen przy niskim koszcie.

Wywoływanie funkcji działa podobnie: opisujesz narzędzia, model wskazuje, które wywołać i z jakimi argumentami, a Ty wykonujesz je po swojej stronie. Przy bardziej złożonych przepływach warto to spiąć LangChainem, który ujednolica interfejs między dostawcami.

Strumieniowanie i praca w czasie rzeczywistym

Odpowiedź modelu potrafi powstawać kilkanaście sekund, więc czekanie na całość psuje wrażenie działającego interfejsu. Strumieniowanie oddaje tekst fragmentami w miarę generowania i zmienia odbiór aplikacji bardziej niż przyspieszenie samego modelu.

Code
Python
for fragment in client.models.generate_content_stream(
    model="gemini-3.5-flash",
    contents=pytanie
):
    print(fragment.text, end="", flush=True)

Po stronie przeglądarki dane przekazujesz przez strumień odpowiedzi, a nie przez pojedynczy JSON na końcu. Przy wdrożeniu na Vercelu pamiętaj o limicie czasu funkcji: strumieniowanie utrzymuje połączenie otwarte, więc długie odpowiedzi potrafią trafić na ten limit szybciej, niż się wydaje.

Osobnym trybem jest praca z dźwiękiem w czasie rzeczywistym, gdzie model przyjmuje strumień z mikrofonu i odpowiada głosem z opóźnieniem rzędu setek milisekund. To inny rodzaj integracji niż zwykłe wywołanie, bo wymaga utrzymania połączenia dwukierunkowego, a nie pojedynczego żądania HTTP. Zanim zbudujesz na tym produkt, sprawdź koszt minuty rozmowy i porównaj go z modelem tekstowym plus osobną syntezą mowy, bo różnica bywa spora w obie strony.

Przy strumieniowaniu zadbaj też o obsługę przerwania. Użytkownik, który zamknie kartę w połowie generowania, nie przerywa naliczania po stronie dostawcy, jeśli Twój kod nie anuluje żądania jawnie.

Gemini kontra GPT i Claude

ModelMocna stronaSłabośćKiedy wybrać
GeminiNajdłuższy kontekst, natywne wideo i audio, tanie modele FlashCzęste zmiany nazw i wersji modeliPrzetwarzanie multimediów, analiza wielkich dokumentów, duży wolumen
OpenAINajwiększy ekosystem narzędzi i integracjiCeny wyższe w segmencie podstawowymProjekt korzystający z gotowych bibliotek i wtyczek
ClaudePraca z kodem, długie spójne odpowiedziBrak natywnego wejścia wideoZadania programistyczne, analiza dokumentów tekstowych
OllamaModel lokalnie, zero kosztu za tokenWymaga sprzętu, słabsza jakośćDane, które nie mogą opuścić firmy

Praktyczna rada: nie wiąż kodu z jednym dostawcą na poziomie logiki biznesowej. Warstwa pośrednia z jednym interfejsem wywołań pozwala porównać modele na własnych danych, a to jedyny miarodajny test. Zestawienia w internecie mierzą zadania, które rzadko przypominają Twoje.

Jak porównać modele na własnych danych

Wybór modelu na podstawie zestawień z internetu prowadzi do zaskoczeń, bo mierzą one zadania, które rzadko przypominają Twoje. Rzetelne porównanie zajmuje pół dnia i zwraca się przy pierwszym rachunku.

Zacznij od trzydziestu realnych przypadków z produkcji albo z logów. Dla każdego zapisz wejście i to, co uznajesz za dobrą odpowiedź. Nie musi to być tekst słowo w słowo, wystarczy lista warunków, które odpowiedź ma spełniać.

Potem uruchom ten sam zestaw na dwóch albo trzech modelach i porównaj trzy rzeczy: odsetek odpowiedzi spełniających warunki, medianę czasu odpowiedzi i koszt przebiegu całego zestawu. Ostatnia liczba pomnożona przez spodziewany wolumen daje miesięczny rachunek lepiej niż jakikolwiek kalkulator.

Wynik bywa zaskakujący w konkretny sposób. Tańszy model często przegrywa nie jakością treści, tylko trzymaniem się formatu, a to naprawia się instrukcją albo schematem odpowiedzi, nie zmianą modelu. Zanim przejdziesz na droższy wariant, sprawdź, czy problemem nie jest sam prompt.

Zestaw testowy trzymaj w repozytorium i uruchamiaj po każdej zmianie modelu albo instrukcji. Dostawcy wycofują starsze warianty i podmieniają wersje, więc odpowiedź, która działała w marcu, w lipcu może wyglądać inaczej, a bez zestawu porównawczego nikt tego nie zauważy do pierwszej skargi.

Typowe błędy

Pierwszy to używanie Pro tam, gdzie wystarczy Flash. Różnica w rachunku bywa kilkukrotna, a w jakości odpowiedzi przy prostych zadaniach niezauważalna.

Drugi to brak bufora kontekstu przy powtarzalnej instrukcji systemowej. Płacisz wtedy pełną stawkę za te same tokeny przy każdym zapytaniu, choć wystarczyłaby dziesiąta część.

Trzeci to ignorowanie limitów zapytań na minutę. Darmowy próg ma niskie limity dzienne i minutowe, więc kod bez ponawiania z narastającym opóźnieniem wywali się przy pierwszym skoku ruchu.

Czwarty to przypisywanie na sztywno nazwy modelu w kilkunastu miejscach w kodzie. Nazwy zmieniają się szybko, a starsze warianty są wycofywane, więc trzymaj identyfikator w konfiguracji.

Piąty to pomijanie ustawień bezpieczeństwa treści przy aplikacjach dla użytkowników. Domyślne progi bywają zbyt restrykcyjne dla treści medycznych albo prawnych i model odmawia odpowiedzi tam, gdzie jest ona uzasadniona.

FAQ

Czy Gemini ma darmowy plan dla programistów?

Modele Flash i Flash-Lite zachowały darmowy próg z ograniczonymi limitami dziennymi, co wystarcza do prototypu i nauki. Od kwietnia 2026 modele Pro są dostępne wyłącznie odpłatnie. Google AI Studio pozostaje darmowe do testowania promptów w przeglądarce.

Który model wybrać na start?

Flash. Pokrywa większość zadań produkcyjnych przy rozsądnej cenie, a przejście na Pro przy trudniejszym zadaniu to zmiana jednego łańcucha znaków. Odwrotna kolejność, czyli start od najdroższego modelu, zwykle kończy się przepłacaniem przez kilka miesięcy.

Czym Gemini API różni się od Vertex AI?

Modelem dostępu i warstwą wokół niego. Gemini API to klucz w zmiennej środowiskowej i najszybszy start. Vertex AI dokłada uwierzytelnianie kontem usługi, wybór regionu przetwarzania, limity organizacyjne i wspólne rozliczenie z resztą Google Cloud. Modele są te same.

Czy warto wrzucać całą dokumentację do kontekstu zamiast budować RAG?

Przy jednorazowej analizie tak, przy aplikacji odpowiadającej na powtarzalne pytania nie. Sto tysięcy tokenów kontekstu przy każdym zapytaniu mnoży się przez liczbę użytkowników, a wyszukiwanie fragmentów kosztuje ułamek tego i odpowiada szybciej.

Czy Gemini obsługuje język polski?

Tak, jakość w polskim jest dobra zarówno przy generowaniu, jak i przy analizie dokumentów. Warto pamiętać, że polski tekst zużywa więcej tokenów niż angielski o tej samej treści, więc rachunek za identyczne zadanie będzie wyższy o kilkanaście procent.

Aktualny cennik i limity opisuje dokumentacja Gemini API, a modele do testowania znajdziesz w Google AI Studio.