OpenAI
Для перекладу цієї сторінки виконано машинний переклад. Ви можете переглянути оригінальну статтю англійською.

Як дізнатися, скільки токенів матиме рядок, перш ніж я спробую створити для нього embedding?

Обчислення/оцінка токенів для embedding

Оновлено: 10 days ago

Перш ніж надсилати рядок для створення векторного представлення, можна оцінити кількість токенів за допомогою бібліотеки токенізації 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-запит завершиться помилкою.

  • Точний підрахунок токенів заздалегідь забезпечує плавніші робочі процеси з ембедингами та запобігає помилкам під час обробки.

---

Чи була ця стаття корисною?