Przed wysłaniem ciągu znaków do osadzenia możesz oszacować liczbę użytych tokenów za pomocą opracowanej przez OpenAI biblioteki tokenizera tiktoken.
Jest to szczególnie przydatne, ponieważ modele osadzania (takie jak text-embedding-3-small) mają maksymalny limit tokenów, którego nie można przekroczyć.
---
Jak liczyć tokeny za pomocą Tiktoken
Możesz użyć pakietu Pythona tiktoken, aby obliczyć liczbę tokenów, które wygeneruje ciąg znaków.
Oto przykładowy fragment kodu:
import tiktoken
def num_tokens_from_string(string: str, encoding_name: str) -> int:
"""Zwraca liczbę tokenów w ciągu tekstowym."""
encoding = tiktoken.get_encoding(encoding_name)
num_tokens = len(encoding.encode(string))
return num_tokens
# Przykład użycia
num_tokens = num_tokens_from_string("tiktoken is great!", "cl100k_base")
print(num_tokens)Ważne:
W przypadku modeli osadzania trzeciej generacji (np. text-embedding-3-small lub text-embedding-3-large) należy używać kodowania "cl100k_base".
Różne modele mogą wymagać różnych kodowań — w razie wątpliwości zawsze sprawdzaj dokumentację modelu.
---
Dlaczego liczenie tokenów ma znaczenie
Jeśli Twój ciąg znaków przekroczy maksymalny rozmiar wejścia modelu, żądanie API zakończy się niepowodzeniem.
Dokładne liczenie tokenów z wyprzedzeniem zapewnia sprawniejszy przebieg pracy z osadzaniem i zapobiega błędom podczas przetwarzania.
---
