المقدمة
لما بنستخدم ونشتغل مع ال LLMs بنلاقي دايمًا تكرار لاستخدام كلمة Tokens سواء في الاشتراك مقابل عدد من ال Tokens سواء في ال Context window وغيرها، في ورقة النهارده هنعرف يعني ايه Tokens في عالم ال LLMs، أهميتها و ليه مع الوقت مبقتش بس لغة ال LLMs بس كمان عُملتها!
ما هي ال Token؟
الـ token هو أصغر وحدة بيانات بيستخدمها ال LLM Model علشان يفهم المعلومات ويعالجها. الوحدات دي ممكن تكون:
- كلمة كاملة
- جزء من كلمة
- حرف
- أو حتى رمز
الفكرة الأساسية إن النموذج مش بيتعامل مع النص أو البيانات بشكلها الطبيعي زي ما إحنا بنشوفها، لكنه بيكسرها لوحدات صغيرة جدًا (tokens) علشان يقدر يدرب ال Model على القيم الرياضية المقابلة ليها.

ليه الـ Tokens مهمة؟
ال LLMs مبنية بالأساس على فكرة ال tokens و من غير tokens النموذج مش هيعرف يقرأ ولا يفهم ولا يرد. فأي بيانات بتدخل للنموذج بيتعملها Tokenization كمثال
- كلمة زي: “Awesome” ممكن تتقسم لـ:
- “Awe”
- “some”
أو تتقسم بطريقة مختلفة علي حسب النظام المستخدم و كل token بيبقى ليه ID معين ، والنموذج بيتعامل مع الأرقام دي بدل الكلمات نفسها.دا مش بس مع الكلمات أو النصوص أي نوع بيانات ممكن يتحول لـ tokens فالصور ممكن تتقسم لأجزاء صغيرة من الصورة (patches) والصوت ممكن نقسمه لموجات أو تمثيل رقمي للموجات وكذلك الفيديو بيتقسم لمقاطع أو Frames.
بمعنى تاني أي حاجة بتدخل للنموذج أو بتطلع منه لازم تتحول لـ tokens عشان يقدر يتعامل معاها. وبالتأكيد ال Tokens بيتعملها Embedding زي ما شرحنا قبل كدا في ورقة Vector Databases For Begginers

استخدام ال Tokens في ال Models
كل نماذج ال LLMs بتمر بمرحلتين:
- التدريب Training
- الاستنتاج/الاستدلال Inference
و في المرحلتين بنحتاج ال Tokens
استخدام ال Tokens وقت التدريب (Training)
وقت تدريب النموذج علي البيانات بتمشي بهذا الشكل:
- البيانات الأصلية بتتحول لـ tokens
- النموذج بياخد مجموعة tokens
- يحاول يتوقع الtoken اللي بعدهم
- لو توقع غلط:
- يتم تعديل الأوزان الداخلية للنموذج
العملية دي بتتكرر ملايين أو مليارات المرات و مع الوقت النموذج بيتعلم الأنماط ويفهم العلاقات بين الكلمات والمعاني.
استخدام الـ Tokens وقت التشغيل (Inference)
لما تيجي تستخدم النموذج:
- السؤال بتاعك بيتحول لـ tokens
- النموذج يعالجه
- يولّد الرد على شكل tokens
- يتحول الرد تاني لنص مفهوم
من المفاهيم الهامة كذلك واللي بنستخدم فيه ال Tokens و بنقابله كتير هو ال Context window
ما هو ال Context Window؟
الـ context window هو عدد الـ tokens اللي النموذج يقدر “يفتكرهم” أو يتعامل معاهم في نفس الوقت.ودا بيشمل سؤالك و الرد وسجل المحادثة ودا حرفيًا "السياق".
فمثلاً لو الحد الأقصى 8,000 tokens النموذج يقدر يفهم نصوص بطول معين بس
ولو زودنا الرقم يقدر يتعامل مع مقالات أطول أو كتب أو محادثات كبيرة
كل ما الـ context window تكبر:
- الفهم العام يتحسن
- الترابط في الردود يبقى أقوى
استخدام ال Tokens مش مقتصر علي الProcessing ولا تحديد معيار هام زي ال Context window ولكن كمان بيستخدم لتحديد معايير ال User experience و بنشوف دا في معيار Time to first token واللي بنقدر نقيّم فيه سرعة النموذج بتحديد الوقت من أول لما يستلم ال Prompt لحد أول رد ( token) بتظهر للمستخدم و فيه معايير تانية كتير زي inter-token أو token-to-token latency وكلها بنستخدمها للتقييم و التحسين والمقارنة بين النماذج.
كدا فهمنا ليه ال Tokens بتعتبر اللغة اللي بتفهمها نماذج ال AI ودلوقتي هنعرف ليه هي بقت العُملة اللي بنقدر نحسب بيها تكلفة استخدامنا للنماذج دي.
الـ Tokens عًملة اقتصاد الـ AI
دلوقتي الـ tokens مش مجرد مفهوم تقني ولكن أصبحت عًملة لأن شركات كتير بقت:
- بتحاسب على أساس عدد الـ tokens المُستخدمة
- بتحط limits (حد أقصى tokens في الدقيقة للمستخدم) عشان تقدر تخدم عدد كبير من المستخدمين في نفس الوقت.
ودا لأن باستخدام ال Tokens نقدر نحسب تكلفة المعالجة الحقيقة من استخدامنا للنموذج لأن كل لما زاد عدد الـ Tokens، زاد استهلاك:
- المعالجة (Processing )
- الذاكرة (Memory)
- الوقت (Latency)
و دي الموارد اللي بنقدر نترجمها لفلوس بتدفعها الشركة عشان تشغل النماذج وعلى أساس التكلفة عليها تقدر تحاسب المستخدمين وتزود هامش الربح.
فتخيل مثلا لو تم الحساب بعدد:
- الطلبات: دا معيار Metric غير عادل لأن طلب قصير مش زي طلب طويل و معالجة النصوص مثلاً استخدامها للموارد مش زي معالجة الصور!
- الكلمات: دا بردو معيار غير دقيق بسبب اختلاف اللغات, فأنت تقدر تعبر عن نفس الطلب بالعربية في عدد كلمات أقل بكتير من الإنجليزية مثلاً وبالتالي حِمل المعالجة بردو مختلف!
فال Token هو المقياس الأكثر دقة لأنه مرتبط مباشرة بإزاي النموذج بيشتغل و بيفهم الطلبات داخليًا.
طريقة حساب ال Tokens المستخدمة؟
بيتم حساب:
- Input Tokens اللي انت بتبعتها (Prompt)
- Output Tokens اللي بيولدها النموذج (Response)
مثال:
- كتبت 100 Token
- النموذج رد بـ 300 Token
فأنت بتتحاسب على 400 Token.مع العلم إن ال output tokens بتكون أغلي في أغلب الأحوال من ال Input tokens ودي تفصيلة مهمة في اختيارك لل LLM Cloud Provider لتطبيقات وبالاخص لو تطبيقات فيها chatting بينتج ردود طويلة.
كمان كفاءة النموذج بتأثر علي استهلاكك لل tokens فلو نموذج قوي ممكن يديك الإجابة في حدود 200 token ولو نموذج أضعف ممكن يديك الإجابة المفيدة في 600 token ولذلك اختيار النموذج وكفاءته معيار هام جدًا مش بس لجودة النتائج بس كمان تكلفتها.

في الختام
ال Tokens من أهم مفاهيم التعامل مع ال LLMs مش بس لأنه الطريقة اللي بتفهم بيها ال LLM العالم ولا لأنها الطريقة اللي بنقدر نحسب بيها تكلفة استخدام النماذج الحقيقية و لكن لأنه كمان يمثل مساحة كبيرة للمنافسة بين الشركات عشان تحل التحديات المرتبطة بيه زي التكلفة العالية للمعالجة أو حدود السياق (Context Limits) لأن النموذج مش بيقدر يتعامل مع نص لا نهائي و التوازن بين الجودة في الردود والتكلفة المالية المقابلة اللي بتزيد باستخدام عدد أكبر من ال Token.
المصادر




Discussion