OpenAI
این صفحه به‌صورت ماشینی ترجمه شده است. مقاله اصلی انگلیسی را مشاهده کنید.

چطور قبل از امبد کردن یک رشته بفهمم چند توکن خواهد داشت؟

محاسبه/تخمین توکن‌ها برای یک embedding

به‌روزرسانی: 3 days ago

پیش از ارسال یک رشته برای تعبیه‌سازی، می‌توانید با استفاده از کتابخانه توکن‌ساز tiktoken متعلق به OpenAI، تعداد توکن‌های مصرفی آن را تخمین بزنید.

این کار به‌ویژه مفید است، زیرا مدل‌های تعبیه‌سازی (مانند text-embedding-3-small) سقف توکن دارند و باید از آن فراتر نروید.

---

نحوه شمارش توکن‌ها با Tiktoken

می‌توانید از بسته پایتون 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

# Example usage
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 شما ناموفق خواهد شد.

  • شمارش دقیق توکن‌ها از پیش، گردش‌کارهای embedding را روان‌تر می‌کند و از بروز خطا هنگام پردازش جلوگیری می‌کند.

---

آیا این مقاله مفید بود؟