Zliczanie tokenów w modelach Gemini

Modele Gemini przetwarzają dane wejściowe i wyjściowe w jednostkach zwanych tokenami.

Tokeny mogą być pojedynczymi znakami, np. z, lub całymi słowami, np. cat. Długie słowa są dzielone na kilka tokenów. Zbiór wszystkich tokenów używanych przez model nazywa się słownikiem, a proces dzielenia tekstu na tokeny – tokenizacją.

W przypadku modeli Gemini token odpowiada około 4 znakom. 100 tokenów to około 60–80 słów w języku angielskim.

Każdy model ma a maksymalną liczbę tokenów które może obsłużyć w prompcie i odpowiedzi. Znając liczbę tokenów w prompcie, możesz sprawdzić, czy nie przekraczasz tego limitu. Ponadto koszt żądania jest częściowo określany przez liczbę tokenów wejściowych i wyjściowych, dlatego warto wiedzieć, jak je zliczać.

Obsługiwane modele

  • gemini-3.1-pro-preview
  • gemini-3-flash-preview
  • gemini-3.1-flash-lite
  • gemini-3-pro-image-preview
  • gemini-3.1-flash-image-preview
  • gemini-2.5-pro
  • gemini-2.5-flash
  • gemini-2.5-flash-lite

Opcje zliczania tokenów

Wszystkie dane wejściowe i wyjściowe dla Gemini API są tokenizowane, w tym tekst, pliki graficzne i inne formaty nietekstowe. Oto opcje zliczania tokenów:

Sprawdź liczbę tokenów tylko w żądaniach (zanim wyślesz je do modelu).
Zanim wyślesz żądanie do modelu, wywołaj countTokens z danymi wejściowymi żądania przed. Zwraca to:
  • total_tokens: liczba tokenów tylko w danych wejściowych
Sprawdź liczbę tokenów zarówno w żądaniach, jak i odpowiedziach.
Uzyskaj dostęp do atrybutu usageMetadata w obiekcie odpowiedzi. Obejmuje on:
  • prompt_token_count: liczba tokenów tylko w danych wejściowych
  • candidates_token_count: liczba tokenów tylko w danych wyjściowych (nie obejmuje tokenów myślenia)
  • thoughts_token_count: liczba tokenów myślenia użytych do wygenerowania odpowiedzi
  • total_token_count: łączna liczba tokenów zarówno w danych wejściowych, jak i wyjściowych (obejmuje tokeny myślenia)

W przypadku strumieniowania danych wyjściowych atrybut usageMetadata pojawia się tylko w ostatnim fragmencie strumienia. W przypadku fragmentów pośrednich ma wartość nil.

Oto kilka informacji o opcjach wymienionych powyżej:

  • Nie zliczą one liczby obrazów wejściowych ani liczby sekund w plikach wejściowych audio lub wideo. Liczba tokenów w przypadku każdego z tych formatów będzie jednak powiązana z tymi wartościami.
  • Liczba tokenów wejściowych obejmuje prompt (tekst i wszystkie pliki wejściowe), a także instrukcje systemowe i narzędzia.
  • Liczba tokenów wyjściowych nie obejmuje tokenów myślenia. Są one podawane w osobnym polu.
  • Dodatkowe informacje dotyczące każdego typu żądania znajdziesz w dalszej części tej strony.
  • Modele Gemini Live API nie obsługują countTokens. Ponadto Firebase AI Logic nie obsługuje jeszcze atrybutu usageMetadata w odpowiedzi z Live API modeli, ale wkrótce się to zmieni.

Ceny tych opcji

  • Wywoływanie countTokens: wywoływanie countTokens (interfejsu Count Tokens API) jest bezpłatne. Maksymalny limit interfejsu Count Tokens API to 3000 żądań na minutę.

  • Używanie atrybutu usageMetadata: ten atrybut jest zawsze zwracany w ramach odpowiedzi i nie powoduje naliczania tokenów ani opłat.

Dodatkowe informacje

Oto dodatkowe informacje dotyczące pracy z określonymi typami żądań.

Zliczanie tokenów wejściowych tekstu

Brak dodatkowych informacji.

Zliczanie tokenów czatu wieloetapowego

Podczas wywoływania countTokens w przypadku czatu pamiętaj o tych kwestiach:

  • Jeśli wywołasz countTokens z historią czatu, zwróci ona łączną liczbę tokenów z obu ról w czacie (total_tokens).
  • Aby dowiedzieć się, jak duża będzie kolejna tura rozmowy, musisz dołączyć ją do historii podczas wywoływania countTokens.

Zliczanie tokenów wejściowych multimodalnych

Podczas zliczania tokenów w przypadku danych wejściowych multimodalnych pamiętaj o tych kwestiach:

  • Opcjonalnie możesz wywołać countTokens osobno dla tekstu i pliku.
  • W przypadku obu opcji zliczania tokenów otrzymasz tę samą liczbę tokenów, niezależnie od tego, czy podasz plik jako dane wbudowane, czy użyjesz jego adresu URL.

Pliki wejściowe graficzne

Pliki wejściowe graficzne są konwertowane na tokeny na podstawie ich wymiarów:

  • Dane wejściowe graficzne, których oba wymiary są mniejsze lub równe 384 piksele: każdy obraz jest liczony jako 258 tokenów.
  • Dane wejściowe graficzne, które są większe w jednym lub obu wymiarach: każdy obraz jest przycinany i skalowany w razie potrzeby do kafelków o wymiarach 768 x 768 pikseli, a następnie każdy kafelek jest liczony jako 258 tokenów.

Pliki wejściowe audio i wideo

Pliki wejściowe audio i wideo są konwertowane na tokeny według tych stałych stawek:

  • Wideo: 263 tokeny na sekundę
  • Audio: 32 tokeny na sekundę

Pliki wejściowe dokumentów (np. PDF)

Pliki wejściowe PDF są traktowane jako obrazy, więc każda strona PDF jest tokenizowana w taki sam sposób jak obraz.