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 to tokenizacja.

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 maksymalną liczbę tokenów, które może obsłużyć w prompcie i odpowiedzi. Znajomość liczby tokenów w prompcie pozwala sprawdzić, czy limit został przekroczony. Dodatkowo koszt żądania jest częściowo określany przez liczbę tokenów wejściowych i wyjściowych, więc wiedza o tym, jak je zliczać, może być przydatna.

Obsługiwane modele

  • gemini-3.1-pro-preview
  • gemini-3.8-flash (oraz starsze wersje gemini-3.7-flash, gemini-3.6-flash i gemini-3.5-flash)
  • gemini-3.5-flash-lite (i starszy gemini-3.1-flash-lite)
  • gemini-3-pro-image (znany też jako „Nano Banana Pro”)
  • gemini-3.1-flash-image (znany też jako „Nano Banana 2”)
  • gemini-3.1-flash-lite-image (znany też jako „Nano Banana 2 Lite”)
  • gemini-3.1-flash-tts-preview

Modele ogólnego zastosowania i generujące obrazy Gemini 2.5 obsługują tę funkcję, ale wszystkie zostały wycofane.

Opcje liczenia tokenów

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

Sprawdzaj liczbę tokenów tylko w przypadku żądań (przed wysłaniem ich do modelu).
Wywołaj funkcję countTokens z danymi wejściowymi żądania przed wysłaniem go do modelu. Zwróci to:
  • total_tokens: liczba tokenów tylko danych wejściowych
Sprawdź liczbę tokenów zarówno w swoich żądaniach, jak i w odpowiedziach.
Uzyskaj dostęp do atrybutu usageMetadata w obiekcie odpowiedzi. Obejmuje to:
  • 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 dla danych wejściowych i wyjściowych (obejmuje wszystkie tokeny myślenia);

Podczas przesyłania strumieniowego atrybut usageMetadata pojawia się tylko w ostatnim fragmencie strumienia. W przypadku średnio zaawansowanych fragmentów jest to nil.

Weź pod uwagę te informacje o powyższych opcjach:

  • Nie będą one zliczać liczby obrazów wejściowych ani liczby sekund w plikach wejściowych wideo lub audio. Liczba tokenów w przypadku każdego z tych rodzajów danych będzie jednak skorelowana 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 poszczególnych typów próśb znajdziesz w dalszej części tej strony.
  • Modele Gemini Live API nie obsługują countTokens. Firebase AI Logic nie obsługuje jeszcze atrybutu usageMetadata w odpowiedziach z modeli Live API, ale już wkrótce!

Ceny tych opcji

  • Wywołanie interfejsu countTokens: wywołanie interfejsu countTokens (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 generuje tokenów ani opłat.

Dodatkowe informacje

Poniżej znajdziesz dodatkowe informacje dotyczące pracy z określonymi typami próśb.

Zliczanie tokenów wejściowych tekstu

Brak dodatkowych informacji.

Zliczanie tokenów w czacie wieloetapowym

Podczas korzystania z czatu pamiętaj o tych kwestiach dotyczących połączeń countTokens:

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

Zliczanie tokenów wejściowych multimodalnych

Oto kilka informacji o liczeniu tokenów w przypadku danych wejściowych multimodalnych:

  • Możesz opcjonalnie wywołać countTokens osobno w przypadku 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 obrazów

Wejściowe pliki obrazów są konwertowane na tokeny na podstawie ich wymiarów:

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

Pliki wejściowe audio i wideo

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

  • Film: 263 tokeny na sekundę
  • Dźwięk: 32 tokeny na sekundę

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

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