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

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

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

Оновлено: 11 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-запит завершиться помилкою.

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

---

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