Перш ніж надсилати рядок для створення векторного представлення, можна оцінити кількість токенів за допомогою бібліотеки токенізації tiktoken від OpenAI.
Це особливо корисно, оскільки моделі векторних представлень (як-от text-embedding-3-small) мають обмеження на максимальну кількість токенів, яке не можна перевищувати.
---
Як рахувати токени за допомогою Tiktoken
Ви можете використовувати пакет Python tiktoken, щоб обчислити кількість токенів, яку згенерує рядок.
Ось приклад фрагмента коду:
import tiktoken
def num_tokens_from_string(string: str, encoding_name: str) -> int:
"""Повертає кількість токенів у текстовому рядку."""
encoding = tiktoken.get_encoding(encoding_name)
num_tokens = len(encoding.encode(string))
return num_tokens
# Приклад використання
num_tokens = num_tokens_from_string("tiktoken is great!", "cl100k_base")
print(num_tokens)Важливо:
Для моделей векторних представлень третього покоління (наприклад, text-embedding-3-small або text-embedding-3-large) слід використовувати кодування "cl100k_base".
Для різних моделей можуть знадобитися різні кодування. Якщо маєте сумніви, завжди звертайтеся до документації моделі.
---
Чому важливо рахувати токени
Якщо ваш рядок перевищить максимальний розмір вхідних даних моделі, ваш API-запит завершиться помилкою.
Точний підрахунок токенів заздалегідь забезпечує плавніші робочі процеси з ембедингами та запобігає помилкам під час обробки.
---
