توکن (Token) در هوش مصنوعی چیست؟
در دنیای مدرن و جدید هوش مصنوعی، کلمهای که بیشتر از همه چیز توسط توسعه دهندگان و کاربران حرفهای شنیده میشود، کلمهی توکن میباشد. فهمیدن مفهوم توکن، نه فقط کلید استفاده بهینه از بودجه و منابع است، بلکه به کاربری که قصد دارد به هوش مصنوعی، کار خود را سریعتر کند، کمک میکند تا عملکرد مدلهای زبانی را دقیقتر درک کرده و خروجیهای باکیفیتتری را از هوش مصنوعی دریافت کند.
پیشنهاد نویسنده: هوش مصنوعی
توکن چیست و مدلهای زبانی چگونه جهان را به اعداد تبدیل میکنند؟
بسیاری از کاربران فکر میکنند که زمانی که با یک مدل هوش مصنوعی مانند ChatGPT صحبت میکنند، این هوش مصنوعی کلمات را دقیقاً همانگونه که ما مشاهده میکنیم، مشاهده کرده و درک میکند. اما واقعیت این است که مدلهای زبانی بزرگ (LLM)، از معماریهای پیچیده ریاضی برای پردازش متن به کار میبرند. این مدلها کلمات در متن را به شکل متن خام نمیبینند؛ آنها دادهها را به واحدهای کوچکتر به نام توکن تجزیه مینمایند.
توکنها در اصل بلوکهای سازندهی متن میباشند که هوش مصنوعی آنها را میفهمد. یک توکن میتواند:
- یک کلمه کامل.
- بخشی از یک کلمه.
- علامت نگارشی.
- فضای خالی.
باشد.
برای اینکه این فرآیند را بهتر بفهمید، به مثال زیر توجه کنید:
کلمهی «هوش مصنوعی» ممکن است توسط یک مدل به چند توکن مختلف تجزیه گردد. اگر این کلمه در دیتای آموزشی مدل هوش مصنوعی زیاد تکرار شده باشد، احتمالاً به صورت یک یا دو توکن شناخته میشود، اما کلماتی که تخصصی یا کمیاب هستند، به توکنهای بیشتری شکسته میشوند.
فرآیند «وکنایز کردن (Tokenization) توسط الگوریتمهایی مانند BPE (Byte-Pair Encoding) انجام میشود. هدف این الگوریتمها این است که متن را به صورت بهینه به اعداد تبدیل کنند تا مدل بتواند آن را در فضای برداری خود پردازش نماید. هرچه که متن طولانیتر یا پیچیدهتر باشد، تعداد توکنهای بیشتری استفاده میشود. در زبان انگلیسی، یک قاعده کلی وجود دارد که میگوید هر 1000 توکن تقریباً معادل 750 کلمه است، اما این نسبت در زبانهای دیگر، به خصوص فارسی، کاملاً متفاوت است.
چالشهای توکن سازی برای زبان فارسی
یکی از نکات کلیدی که کاربران فارسیزبان باید بدانند، تفاوت در نحوه توکن سازی میباشد. بیشتر مدلهایی که بزرگ هستند، بر پایهی حجم بزرگی از دادههای انگلیسی آموزش دیدهاند. این به این معنی است که دایرهی لغاتی که این مدلها برای زبان انگلیسی دارند و آموزش دیدهاند، بسیار بهینه شدهتر از زبانهای دیگر است. وقتی شما متنی را به زبان فارسی برای مدل ارسال میکنید، چون مدل توکنهای فارسی کمتری را در دیتابیس خود دارد، مجبور است کلمات فارسی را به تکههای بسیار کوچکتری بشکند.
مثلا، یک کلمه به زبان فارسی که ممکن است در زبان انگلیسی یک توکن به حساب بیاید، مدل ممکن است در زبان فارسی آن را به سه یا چهار توکن تجزیه کند. این موضوع سبب میشود که کاربرانی که با زبان فارسی با مدل صحبت میکنند برای ارسال یک پیام مشابه، هزینه بیشتری را نسبت به کاربرانی که به زبان انگلیسی صحبت میکنند پرداخت کنند و همچنین ظرفیت پنجره متنی (Context Window) خود را زودتر پر کنند. درک این مسئله به شما کمک میکند تا در زمان نوشتن پرامپتهای طولانی به زبان فارسی، انتظار داشته باشید که مصرف توکن شما بالاتر از زمانی باشد که با زبان انگلیسی با مدل صحبت میکنید.
چرا توکنها تعیینکننده هزینهها در هوش مصنوعی هستند؟
اگر از API سرویسهایی مانند OpenAI، Anthropic یا Google استفاده میکنید، این را باید بدانید که مدل درآمدی آنها براساس تعداد توکن میباشد. هر بار که شما درخواستی را برای مدل ارسال میکنید (ورودی) و هر بار که پاسخی را از مدل دریافت میکنید (خروجی)، سیستم تعداد توکنهای مصرفی را محاسبه و از موجودی حساب شما کسر مینماید.
درک این مکانیسم برای کسب و کارها حیاتی میباشد. هزینهها معمولاً به دو دسته تقسیم بندی میشوند:
- توکنهای ورودی (Input Tokens): شامل تمام متنی است که شما برای مدل ارسال میکنید. این شامل دستورات (Prompt)، متنهای ارجاعی برای خلاصه سازی، و حتی تاریخچهی چت است.
- توکنهای خروجی (Output Tokens): شامل تمام محتوایی است که مدل برای شما تولید میکند و به شما نشان میدهد.
در اغلب مواقع، هزینهی توکنهای خروجی از توکنهای ورودی گرانتر میباشد. علت این کار این میباشد که تولید پاسخ خروجی، عملیاتی است که به توان پردازشی بیشتری نیازمند است و مدل باید به صورت کلمه به کلمه (توکن به توکن) متن را پیشبینی کند. مدیریت این هزینهها با بهینه سازی پرامپتها و کاهش ورودیهای غیرضروری، یکی از مهارتهای اصلی متخصصان در حوزهی هوش مصنوعی است.
محدودیت پنجره متنی و نقش حیاتی توکنها
مفهوم دیگری که به صورت مستقیم با توکنها در ارتباط است، پنجرهی متنی یا Context Window است. هر مدل هوش مصنوعی یک سقف مجاز برای تعداد توکنهایی که میتواند در یک جلسه (Session) یا پنجره پردازش نماید، دارد. به عنوان مثال مدل GPT-4o ممکن است ظرفیت 128 هزار توکن را داشته باشد. این یعنی مدل میتواند تا سقف 128 هزار توکنِ ترکیبی (ورودی و خروجی) را در حافظهی کوتاه مدت خود نگه دارد.
اگر مکالمهی شما با مدل هوش مصنوعی از حد مشخص، فراتر برود، چه اتفاقی رخ میدهد؟ مدل شروع به فراموش کردن ابتدای مکالمه میکند. این اتفاق به این علت است که سیستم مجبور است توکنهای قدیمی را از پنجرهی متنی خود خارج نماید تا جا برای توکنهای جدید باز شود. درک این محدودیت به شما کمک میکند که اگر در حال نوشتن یک برنامه یا ابزار هستید، استراتژیهای مدیریت حافظه و خلاصه سازی خودکارِ تاریخچهی چت را پیاده سازی کنید تا پاسخی بدون فراموشی از سمت مدل هوش مصنوعی دریافت کنید.
مقایسه مدلها از نظر مصرف و هزینه توکن
انتخاب یک مدل مناسب، بر بودجه و عملکرد پروژهی شما تاثیرگذار است. در اینجا مقایسهای از مدلهای مطرح بازار از نظر استراتژی توکن آورده شده است:
| نام مدل | ویژگی اصلی توکن سازی | مناسب برای کارهای |
|---|---|---|
| GPT-4o | بسیار هوشمند و توکن ساز بهینه | کارهای پیچیده، استدلال منطقی |
| GPT-4o-mini | بسیار ارزان و سریع | کارهای حجیم، پردازش متنهای زیاد |
| Claude 3.5 Sonnet | درک عمیق با پنجره متنی بزرگ | تحلیل فایلهای طولانی، برنامه نویسی |
| Gemini 1.5 Pro | پنجره متنی بسیار وسیع (میلیون توکن) | پردازش ویدیو و کتب کامل |
مدلهایی مانند GPT-4o-mini با هدف کاهش هزینهها طراحی شدهاند. این مدلها با اینکه از نظر منطقی ضعیفتر از مدلهای پرچمدار و گران هستند، اما برای کارهایی مانند دسته بندی متن، استخراج دادهها یا پاسخگویی به سوالات سادهی روزمره، بسیار مقرون به صرفه هستند. در مقابل، اگر پروژهی شما نیاز به تحلیل اسناد حقوقی یا کدنویسیهای پیچیده دارد، استفاده از مدلهای Claude 3.5 Sonnet یا GPT-4o را به شما توصیه میکنیم.
نکتهی مهمی که در مقایسه این مدلها وجود دارد این است که برخی از مدلها با اینکه قیمت هر توکنشان مشابه با هم است، اما در زبان فارسی رفتار متفاوتی دارند. برخی مدلها در توکن سازی فارسی به صورت بهینهتر عمل میکنند و با تعداد توکن کمتری، مفهوم را منتقل میکنند که این کار در مقیاسهای بزرگ، هزینههای شما را به شدت کم میکند.
استراتژیهای حرفهای برای مدیریت و بهینهسازی مصرف توکن
برای اینکه بتوانید بودجه خود را مدیریت کنید و در عین حال خروجیهای باکیفیتتری از هوش مصنوعی بگیرید، باید از استراتژیهای زیر استفاده کنید:
- خلاصه سازی هوشمند: قبل از اینکه که متن طولانی را برای مدل ارسال کنید، سعی کنید آنها را با استفاده از مدلهای ارزانتر (مانند GPT-4o-mini) خلاصه نمایید. این کار سبب میشود تا حجم توکن ورودی به مدل اصلی کاهش یابد.
- استفاده از سیستم پرامپت نویسی (System Prompt): به جای اینکه در هر پیام خود، دستورات تکراری را برای مدل ارسال کنید، از قابلیت System Message یا System Prompt به کار ببرید. این دستورات در ابتدای کانکشن تنظیم میشوند و معمولاً وزن کمتری در مصرف توکنهای تعاملی دارند.
- پاک سازی تاریخچه: در اپلیکیشنها یا چتباتهایی که طراحی مینمایید، نیازی به اینکه کل تاریخچه چت را برای مدل بفرستید نیست. فقط کافی است چند پیام آخر که حاوی اطلاعات حیاتی برای ادامهی گفتگو هستند را برای مدل ارسال کنید.
- توقف زودهنگام: اگر پاسخی که مدل به شما داد، پاسخ مورد انتظار شما بود، مکالمه را متوقف کنید. اجازه ندهید مدل با توضیحات اضافی، توکنهای خروجیِ گران قیمت تولید کند.
- مهندسی داده: اگر از فایلها استفاده میکنید (مانند PDF یا JSON)، سعی کنید دادههای غیرضروری را قبل از پردازش حذف کنید. هوش مصنوعی برای هر فضای خالی و علامت نگارشی اضافه که در فایل شما قرار دارد، توکن مصرف میکند.
توکنها ستون فقرات اقتصاد هوش مصنوعی محسوب میشوند. با شناخت دقیق ماهیت توکنها، تفاوتهای زبان شناختی در توکن سازی و نحوه مدیریت پنجرههای متنی، شما از یک کاربر معمولی به یک کاربر حرفهای هوش مصنوعی تبدیل خواهید شد که میتواند هزینهها را به حداقل و بازدهی کار را به حداکثر برساند. با مدیریت هوشمندانه توکنها، نه تنها در هزینهها صرفه جویی خواهید کرد، بلکه مدلهای هوش مصنوعی را وادار میکنید تا در بستری بهینهتر و با دقت بیشتر برای شما کار کنند.



















Context Window چه ربطی به توکن دارد؟
پنجره متنی سقف تعداد توکنهایی است که مدل میتواند همزمان در حافظه کوتاهمدت خود نگه دارد.
این یعنی استفاده از فارسی در هوش مصنوعی گرانتر است؟
در بسیاری از موارد بله گرانتر است؛ چون برای یک پیام مشابه ممکن است توکنهای بیشتری مصرف شود و هزینه بالاتر برود.
چرا متن فارسی معمولاً توکن بیشتری مصرف میکند؟
چون بیشتر مدلها با دادههای انگلیسی بیشتر آموزش دیدهاند و در فارسی، کلمات اغلب به تکههای کوچکتری شکسته میشوند.
چرا بعضی کلمات به چند توکن تبدیل میشوند؟
چون مدل متن را بر اساس الگوهای یادگرفتهشده میشکند و کلمات ناآشنا یا تخصصی معمولاً به توکنهای بیشتری تقسیم میشوند.
توکن همون کلمه است؟
نه لزوما؛ یک توکن میتواند یک کلمهی کامل، بخشی از یک کلمه، علامت نگارشی یا حتی یک فاصله باشد.