مبادئ عمل نماذج اللغة الكبيرة
💡 دليل التعلم: لا يتطلب هذا الفصل أي خبرة برمجية، حيث يأخذك عبر عروض توضيحية تفاعلية لفهم مبادئ العمل الأساسية لنماذج اللغة الكبيرة (LLM). سنبدأ من أساسيات التجزئة (Tokenization) وصولاً إلى كيفية تدريب GPT واستنتاجها.
Choose a business scenario to begin.
0. مقدمة: من اللغة البشرية إلى الحوسبة الآلية
يتواصل البشر باللغة، وتحسب الحواسيب بالأرقام. نموذج اللغة الكبير (LLM) هو في جوهره جسر يربط بين هذين العالمين.
مهمته الأساسية واحدة فقط: تحويل مشكلة "فهم اللغة" إلى مشكلة "حساب رياضي".
لتحقيق هذا الهدف، نحتاج إلى حل ثلاثة تحديات أساسية:
- الترجمة: كيف نحول النص إلى أرقام؟ (التجزئة & التضمين)
- الكفاءة: كيف نجعل الحاسوب يحسب بسرعة؟ (عمليات المصفوفات)
- الذاكرة: كيف نجعل الحاسوب يفهم السياق؟ (نموذج Transformer)
سيأخذك هذا البرنامج التعليمي خطوة بخطوة لتفكيك عملية بناء هذا الجسر من الصفر.
1. الخطوة الأولى: الترجمة (Tokenization)
الحاسوب لا يفهم كلمة "همبرغر"، إنه لا يتعرف إلا على الأرقام. لذا، مهمتنا الأولى هي: تقسيم النص إلى أصغر وحدات يمكن للحاسوب فهمها.
1.1 ما هي التجزئة؟
التجزئة هي تقسيم جملة كاملة إلى "وحدات كلمات" (Tokens).
- الإنجليزية: تحتوي على مسافات طبيعية، مما يسهل تجزئتها (مثل
I love AI). - الصينية: لا تحتوي على مسافات، وتحتاج إلى خوارزميات للتقسيم (مثل
我爱人工智能).
Tokenizer (المُجزِّئ)
البرنامج الذي ينفذ عملية التجزئة نسميه Tokenizer. إنه مثل المترجم، مسؤول عن ترجمة النص البشري إلى تسلسل رقمي يمكن للآلة قراءته.
تستخدم نماذج LLM الحديثة (مثل GPT-4) عادةً تقنية تجزئة الكلمات الفرعية (Subword Tokenization) (مثل خوارزمية BPE). ويكمن ذكاؤها في: الإبقاء على الكلمات الشائعة كاملة، وتقسيم الكلمات النادرة.
فيما يلي مثال حقيقي لتجزئة BPE (باستخدام مُجزِّئ GPT-4):
Input: "The quick brown fox jumps over the lazy dog. \n今天天气真不错!"
Token List:
index=791, string='The'
index=4062, string=' quick'
index=14198, string=' brown'
index=39935, string=' fox'
index=83368, string=' jumps' <-- إذا تم تقسيمها، فقد تكون ' jump' + 's'
index=927, string=' over'
index=279, string=' the'
index=16053, string=' lazy'
index=3290, string=' dog'
index=13, string='.'
index=198, string='\n' <-- حرف السطر الجديد
index=33838, string='今天' <-- الكلمات الشائعة تُدمج مباشرة
index=54580, string='天气'
index=20265, string='真'
index=57672, string='不错'
index=171, string='!'حول معالجة الأحرف النادرة: إذا واجه النموذج حرفًا نادرًا غير موجود في جدول المفردات (بافتراض أن الحرف "今" نادر)، فسيعود النموذج إلى مستوى Byte للتشفير.
- Raw Input:
今- Bytes:
\xE4 \xBB \x8A- بحث BPE: ابحث أولاً عن
\xE4\xBB\x8A-> لم يتم العثور عليه -> قسّم إلى\xE4\xBB(ID=1001) +\x8A(ID=2002).- Token النهائي:
[1001, 2002].تضمن هذه الآلية أن النموذج يمكنه معالجة أي حرف يتم إدخاله، ولن يواجه أبدًا مشكلة OOV (Out Of Vocabulary).
💡Note: LLMs do not directly process words. They process numbers, called token IDs. In English, one token is usually a word or part of a word such as "ing"; in Chinese, one token is often a character or short phrase.
نقطة أساسية: ما يعالجه LLM ليس الكلمات، بل Token ID (سلسلة من الفهارس الرقمية).
2. المشكلة الأساسية: كيف نجعل الحاسوب "يحسب" اللغة؟
مهمتنا هي معالجة اللغة. لكن الحاسوب لا يتعرف إلا على الأرقام. الفكرة الأكثر مباشرة هي: إعطاء كل كلمة رقمًا (ID).
- تفاح -> ID 10
- موز -> ID 20
2.1 لماذا لا نستخدم ID بسيطًا؟
إذا استخدمنا ID فقط، سيعتقد الحاسوب أن "10" و "20" مجرد رقمين غير مرتبطين. علاوة على ذلك، إذا كان جدول المفردات يحتوي على 100 ألف كلمة، فقد نحتاج إلى مصفوفة بطول 100 ألف لتمثيل كلمة واحدة (ترميز One-Hot)، حيث تكون 99999 خانة منها 0، وخانة واحدة فقط هي 1.
- العيب 1: إهدار كبير (متناثر، مصفوفة One-Hot كبيرة جدًا).
- العيب 2: لا معنى (لا يمكن تمثيل أن "تفاح" و "موز" كلاهما فواكه).
2.2 الحل: التضمين (Embedding) — المتجهات الكثيفة
للتعبير عن كلمة بكفاءة و بمعنى، اخترعنا Embedding. لم يعد يستخدم مصفوفة طويلة من 0/1، بل يستخدم مصفوفة أقصر مليئة بالأعداد العشرية (مثل 512 رقمًا) لوصف الكلمة.
- مثال:
[0.8 (فاكهة), 0.1 (أحمر), 0.9 (حلو)...]بهذه الطريقة، لم نضغط البيانات فحسب، بل حولنا معنى الكلمة إلى "إحداثيات" قابلة للحساب.
3. من الكلمة إلى المصفوفة
بعد حل مشكلة تمثيل "كلمة واحدة"، ننتقل إلى حل مشكلة تمثيل "جملة واحدة".
3.1 لماذا المصفوفة؟
لأن الجملة الواحدة تحتوي على العديد من الكلمات.
- كلمة واحدة = صف من الأرقام (متجه).
- جملة واحدة = عدة صفوف من الأرقام مكدسة معًا. هذه هي المصفوفة.
سبب تجميعها في مصفوفة هو أن العتاد الأساسي للحواسيب الحديثة — GPU (بطاقة الرسوميات)، مصمم بطبيعته لإجراء عمليات المصفوفات. فقط عندما نحول اللغة إلى مصفوفات، يمكننا الاستفادة من قدرة GPU المتوازية لتحقيق استنتاج وتدريب فعالين.
3.2 خط الأنابيب الكامل
لنراجع كيفية تدفق البيانات:
- التجزئة: تقطيع النص.
- الفهرسة: تحويل الأجزاء إلى ID.
- التضمين (Embedding): تحويل ID إلى متجهات (للدلالة والضغط).
- التكديس: تجميع المتجهات في مصفوفة (لحساب GPU الفعال).
Step 1: Tokenization
The computer first splits text into small semantic units called tokens. (This demo simplifies tokenization. Real models often use BPE, so a phrase may become one token.)
3.5 فاصل: ما هو "النموذج" بالضبط؟
قبل الحديث عن البنية المحددة، لنفهم أولاً كلمة "نموذج" بشكل مبسط.
في مجال الذكاء الاصطناعي، النموذج (Model) هو في الواقع دالة رياضية معقدة جدًا أو صندوق أسود.
- المدخلات: مجموعة من الأرقام (مثل Token ID أعلاه).
- المعالجة: يحتوي الصندوق الأسود على مليارات المعاملات (يمكن تشبيهها بمليارات أزرار الضبط)، التي تجري عمليات جمع وطرح وضرب وقسمة جنونية على البيانات المدخلة.
- المخرجات: مجموعة أخرى من الأرقام (تمثل نتيجة التنبؤ، مثل احتمالية الكلمة التالية).
لنضرب مثلاً:
يمكنك تخيل النموذج كـ طاهٍ ماهر ذي خبرة واسعة:
- المدخلات (المكونات): تعطيه لحم بقر، بطاطس، طماطم.
- النموذج (عقل الطاهي): بناءً على آلاف الوصفات التي تعلمها (بيانات التدريب)، يحسب بسرعة في ذهنه: تقطيع اللحم، تقشير البطاطس، التحكم في الحرارة...
- المخرجات (الطبق): يقدم لك في النهاية طبق يخنة اللحم بالبطاطس.
ما يسمى بـ التدريب (Training) هو جعل هذا الطاهي يبدأ كمتدرب، ويجرب ويفشل مليارات المرات. إذا كان الطبق مالحًا جدًا، يضبط "زر الملح"، وإذا كان خفيفًا، يضبط "زر الحرارة"، حتى يصبح قادرًا على إعداد أطباق لذيذة باستمرار.
نماذج LLM الحالية هي بمثابة "طاهٍ خارق" قرأ كل كتب البشرية، لكنه لا يطهو الطعام، بل يطهو النصوص.
4. طريق التطور: من RNN إلى Transformer
بعد أن أصبح لدينا البيانات (Tokens) والطاهي (النموذج)، سنرى كيف يفكر هذا الطاهي.
في تاريخ تطور الذكاء الاصطناعي، هناك طريقتان رئيسيتان "للتفكير" (البنية): RNN و Transformer.
4.1 الطريقة القديمة غير الفعالة: RNN (لعبة الهمس)
عندما تعالج النماذج المبكرة (RNN، الشبكات العصبية المتكررة) جملة، فإنها تشبه لعبة الهمس.
طريقة العمل:
- اقرأ الكلمة الأولى "أنا"، واحفظها في الذاكرة، ومررها للخطوة 2.
- اقرأ الكلمة الثانية "أحب"، وادمجها مع الذاكرة السابقة، وحدث المعلومات في الذهن، ثم مررها للخطوة 3.
- اقرأ الكلمة الثالثة "أكل"، وحدث الذاكرة مجددًا...
- ... حتى تنتهي من قراءة آخر كلمة.
هذا يؤدي إلى عيبين قاتلين:
- بطء (لا يمكن التوازي): يجب انتظار الشخص السابق لينهي الهمس قبل أن يبدأ التالي. لا يمكن لـ 100 شخص العمل معًا.
- نسيان (نسيان المسافات الطويلة): عندما تصل الهمسة إلى الشخص رقم 100، قد يكون قد نسي تمامًا ما إذا كان الشخص الأول قال "أنا" أم "أنت". هذا يؤدي إلى عدم ترابط النموذج عند كتابة نصوص طويلة.
4.2 التصميم العبقري الحالي: Transformer (طاولة مستديرة)
في عام 2017، اقترحت Google بنية جديدة تمامًا — Transformer. لقد غيرت القواعد بالكامل، وحولت "لعبة الهمس" إلى طاولة مستديرة.
طريقة العمل: لم يعد Transformer يمرر الكلمات واحدة تلو الأخرى، بل يجلس جميع الكلمات على الطاولة دفعة واحدة.
- رؤية شاملة (حوسبة متوازية): تدخل جميع الكلمات في نفس الوقت، دون طوابير. يكتب الجميع معلوماتهم على ورقة ويضعونها في منتصف الطاولة.
- آلية الانتباه (Attention): هذا هو سلاحها السري. يمكن لكل كلمة مباشرة النظر إلى معلومات أي كلمة أخرى على الطاولة.
- مثلًا، عند قراءة كلمة "هو"، لا يحتاج النموذج لاسترجاع الهمس السابق، بل ينظر مباشرة إلى "القط" السابق، ويفهم فورًا أن "هو = القط".
وهذا يحل مشكلات RNN بشكل مثالي:
- سريع: الجميع ينظر إلى المواد في نفس الوقت، ويمكن لـ GPU العمل بكامل طاقته، بكفاءة عالية جدًا.
- لا نسيان: مهما طالت الجملة، المسافة بين الكلمة الأولى والكلمة رقم 10000 هي "خطوة واحدة"، يمكن النظر إلى أي كلمة وقتما تشاء.
للخلاصة:
- RNN: مثل السير في متاهة، خطوة بخطوة، سهل الضياع.
- Transformer: مثل رؤية الخريطة من الأعلى، نقطة النهاية والبداية واضحة تمامًا.
لماذا لا نزال بحاجة إلى معلومات "الموقع"؟
لأن Transformer يعالج الكل دفعة واحدة، إذا لم نقم بمعالجة خاصة، فلن يتمكن من التمييز بين "أنا أحبك" و "أنت تحبني" (الكلمات نفسها، فقط الترتيب مختلف). لذلك، نعطي كل كلمة رقمًا تسلسليًا (ترميز موضعي)، لنخبر النموذج من في المركز الأول، ومن في المركز الثاني.
تذكير صغير: العديد من نماذج LLM هي ذاتية الانحدار (تتنبأ بالكلمة التالية)، لذا فهي لا تزال تخرج رمزًا تلو الآخر أثناء التوليد؛ ولكن في الحسابات الداخلية لكل خطوة توليد، لا يزال Transformer قادرًا على الاستفادة بشكل أفضل من توازي المصفوفات وتحسينات التخزين المؤقت.
4.3 تقنية سوداء للكفاءة: ذاكرة KV المؤقتة (KV Cache)
ربما سمعت أنه عند توليد نصوص طويلة، كلما تقدمت أكثر، أصبح أبطأ، أو زاد استهلاك ذاكرة الفيديو. هذا عادةً لأن النموذج يحتاج إلى "تذكر" كل المحتوى الذي تم توليده سابقًا.
كيف "يدون Transformer الملاحظات"؟
في آلية الانتباه في Transformer، تولد كل كلمة متجهين Key (K) و Value (V)، لتستخدمهما الكلمات اللاحقة في "الاستعلام".
- عندما يولد النموذج الكلمة رقم 100، يحتاج إلى النظر إلى K و V للكلمات الـ 99 السابقة.
- إعادة حساب K و V للـ 99 كلمة السابقة في كل مرة سيكون إهدارًا كبيرًا!
دور KV Cache:
KV Cache يشبه "دفتر ملاحظات تراكمي".
- لا إعادة حساب: بعد حساب K و V للكلمة الأولى، خزنها.
- احسب الجديد فقط: عند توليد الكلمة الثانية، احسب فقط K و V للكلمة الثانية، ثم ادمجها مع K و V للكلمة الأولى.
- يزداد مع الوقت: مع تقدم الحوار، يصبح "دفتر الملاحظات" هذا (استهلاك ذاكرة الفيديو) أكثر سمكًا.
هذا هو سبب استهلاك حوارات النصوص الطويلة (Long Context) لكميات هائلة من ذاكرة الفيديو — ليس لأن النموذج يكبر، بل لأن دفتر الملاحظات (KV Cache) أصبح سميكًا جدًا.
RNN reads from left to right one word at a time. Watch Memory (h): as the sentence gets longer, early information such as "The" can fade, causing the long-range dependency problem.
5. كشف الأسرار: من "الإكمال" إلى "الحوار"
يعتقد الكثيرون خطأً أن ChatGPT يفهم حقًا ما نقول، لكن غريزته الوحيدة في الحقيقة هي: تخمين الكلمة التالية (Next Token Prediction).
5.1 الغريزة: الإكمال الجنوني
إذا أدخلت إلى النموذج الأساسي (Base Model): "الطقس جميل اليوم"، فقد يكمل: "لنذهب إلى الحديقة." لكن إذا أدخلت: "ما هي عاصمة أمريكا؟"، فقد يكمل: "ما هي عاصمة الصين؟ ما هي عاصمة اليابان؟" (لأنه يقلد تنسيق ورقة الامتحان، بدلاً من الإجابة على السؤال).
5.2 الحيلة: استخدام "النص" للحوار
لتحويله إلى مساعد حواري، ابتكر المهندسون طريقة بارعة: تمثيل الأدوار. نضيف بهدوء بعض العلامات الخاصة (Template) إلى المحتوى المدخل للنموذج، ليعتقد النموذج أنه يكمل "سيناريو حواري".
مثلاً، ما تراه أنت هو:
User: مرحبًا
ما يراه النموذج في الحقيقة هو:
<|user|>مرحبًا<|assistant|>
بمجرد أن يرى النموذج <|assistant|>، يعرف: "أوه، حان دوري للتمثيل كمساعد."
5.3 عرض تفاعلي متعمق
سيأخذك العرض التوضيحي أدناه خطوة بخطوة لترى جوهر LLM. يرجى النقر بالتسلسل على 1. الغريزة -> 2. الحيلة -> 3. المبدأ -> 4. المتقدم، جرب بنفسك!
An LLM’s instinct is completion: it does not naturally understand chat; it predicts the next word from context.
6. من "الهراء" إلى "المساعد الجيد" (Alignment)
مجرد القدرة على الحوار ليست كافية. النموذج الخام قد يعلم الناس صنع القنابل، أو يتحدث بألفاظ بذيئة. لجعله مساعدًا مهذبًا وآمنًا وموثوقًا مثل ChatGPT، نحتاج إلى خطوتين أخيرتين من الصقل:
SFT (الضبط الدقيق بالإرشادات):
- اطلب من خبراء بشريين كتابة العديد من أزواج الأسئلة والأجوبة عالية الجودة، لتعليم النموذج "كيف يتحدث بشكل لائق".
- الهدف: جعل النموذج يفهم التعليمات، وألا يكمل بشكل عشوائي بعد الآن.
- مثال على البيانات (بتنسيق JSON):json
// مثال على بيانات تدريب SFT { "messages": [ { "role": "user", "content": "من فضلك ترجم هذه الجملة إلى الإنجليزية: 'مرحبًا'." }, { "role": "assistant", "content": "Hello." } ] } // تعلم النموذج: عند سماع تعليمات 'ترجمة'، يجب إعطاء النتيجة مباشرة، وليس إكمال 'مرحبًا كيف حالك'
RLHF (التعلم المعزز من الملاحظات البشرية):
- التقييم: دع النموذج يولد عدة إجابات، ويقوم المعلمون البشر بالتقييم (أيها أكثر أمانًا؟ أيها أكثر تهذيبًا؟).
- المكافأة والعقاب: إذا تحدث النموذج جيدًا، يحصل على مكافأة، وإذا تحدث بشكل سيء، يعاقب. ببطء، يتعلم النموذج "مواءمة" القيم الإنسانية (Alignment).
- مثال على البيانات (بتنسيق JSON):json
// مثال على بيانات تفضيل RLHF (DPO/PPO) { "prompt": "كيف تصنع قنبلة؟", "chosen": "آسف، لا يمكنني الإجابة على هذا السؤال.", // الإجابة التي يفضلها البشر (آمنة) "rejected": "أولاً تحتاج إلى..." // الإجابة التي يرفضها البشر (خطيرة) }
في العرض التوضيحي أعلاه، انقر على علامة التبويب الرابعة "متقدم: المواءمة"، لتجربة الفرق الهائل قبل وبعد المواءمة بنفسك.
7. استكشاف متقدم: نماذج التفكير، بنية MoE، وآلية الانتباه الخطي
مع تطور التقنية، اكتشفنا أن مجرد "تخمين الكلمة التالية" قد يكون غبيًا في بعض الأحيان، خاصة عند معالجة المسائل الرياضية والمنطقية. لذا، وُلد جيل جديد من نماذج التفكير (Thinking Models) (مثل OpenAI o1، DeepSeek-R1).
7.1 ما هو "التفكير"؟ (Thinking Models)
عندما يجيب البشر على أسئلة معقدة (مثل أيهما أكبر: 9.11 أم 9.9؟)، لا يجيبون فورًا، بل يفكرون أولاً في أذهانهم. نموذج التفكير هو نموذج تعلم هذه القدرة على التفكير البطيء (System 2).
- التفكير السريع (System 1): حدسي، إجابة فورية. عرضة للخطأ.
- التفكير البطيء (System 2): عن طريق إنتاج "سلسلة أفكار (Chain of Thought)"، استنتاج خطوة بخطوة، ثم إعطاء الإجابة النهائية.
Which is larger, 9.11 or 9.9?
7.2 كشف أسرار التدريب: من "التقليد" إلى "الاستكشاف"
لماذا لم تكن النماذج السابقة تفكر بهذه الطريقة؟ لأن طريقة التدريب تغيرت.
الوضع التقليدي (SFT - التعلم بالتقليد)
- الطريقة: عرض عملية تفكير البشر على النموذج، وجعله يقلد.
- القيود: سقف النموذج هو البيانات البشرية وجودتها. إذا كان البشر أنفسهم لا يستطيعون التفكير بوضوح (مثل المسائل الرياضية الصعبة جدًا)، فلن يستطيع النموذج التعلم أيضًا.
وضع التفكير (RL - التعلم المعزز)
- الطريقة: لا تعطِ بيانات العملية، فقط المُحقق (Verifier) النهائي.
- مثلاً، أعطِ مسألة رياضية، ودع النموذج يجرب بنفسه بشكل عشوائي.
- أخطأ -> عقاب.
- أصاب -> مكافأة.
- لحظة الإدراك (Aha Moment): بعد عشرات الآلاف من المحاولات الذاتية، اكتشف النموذج بدهشة: "إذا كتبت بضع خطوات من الاستنتاج على ورقة المسودة قبل إخراج الإجابة، فإن احتمال حصولي على المكافأة يزداد بشكل كبير!" وهكذا، تم تعزيز وتثبيت هذا النمط السلوكي "فكر أولاً، ثم أجب". هذا يشبه AlphaGo التي تدربت بنفسها ضد نفسها وتجاوزت في النهاية سجلات لعب البشر.
7.3 دليل عملي: تغيير جذري في أسلوب التوجيه (Prompt)
عند استخدام نماذج التفكير (مثل DeepSeek-R1، OpenAI o1)، تحتاج استراتيجية التوجيه الخاصة بك إلى تغيير كامل.
| الميزة | النماذج التقليدية (GPT-4o, Claude 3.5) | نماذج التفكير (R1, o1) |
|---|---|---|
| المنطق الأساسي | System 1 (حدس) | System 2 (منطق) |
| مهارات التوجيه | تحتاج إلى توجيه سلسلة الأفكار (CoT) مثال: "فكر خطوة بخطوة..." | لا تتدخل النموذج لديه سلسلة أفكار مدمجة، والتوجيه البشري قد يشتته |
| وضوح التعليمات | تحتاج إلى تقسيم المهام المعقدة إلى مهام فرعية | أعطِ الهدف النهائي مباشرة، ودع النموذج يقسمه بنفسه |
| السيناريوهات المناسبة | الكتابة الإبداعية، الترجمة البسيطة، الدردشة | الرياضيات المعقدة، إعادة هيكلة الكود، الاستنتاج المنطقي |
⚠️ ملاحظة: كلما كان التدخل أقل مع نماذج التفكير كان أفضل. ما عليك سوى تعريف "ما هي نتيجة المهمة المثالية" بوضوح، ولا تحدد "كيف يجب القيام بذلك".
7.4 الاتجاهات المستقبلية: دمج السرعة والبطء
في المستقبل، قد لا نحتاج بعد الآن للتمييز بين "نموذج التفكير" و "النموذج العادي". يجب أن يكون الذكاء الاصطناعي المثالي مثل البشر، قادرًا على الحوسبة التكيفية (Adaptive Compute):
- عند مواجهة "1+1=؟": يستدعي System 1 فورًا، إجابة فورية.
- عند مواجهة "إثبات فرضية ريمان": ينتقل تلقائيًا إلى System 2، يفكر لثلاثة أيام ثم يجيب.
- تبديل غير محسوس للمستخدم: أنت فقط تطرح السؤال، والنموذج يقرر بنفسه مقدار "الجهد الذهني" الذي سيستخدمه لحله.
7.5 تطور البنية: من "الشامل" إلى "فريق الخبراء" (Dense vs MoE)
مع ازدياد حجم النماذج (مثل GPT-4، DeepSeek-V3)، إذا كان يجب حساب جميع الخلايا العصبية في كل مرة يتم فيها توليد كلمة، ستصبح السرعة بطيئة بشكل لا يطاق. لذا، ظهرت بنية MoE (Mixture of Experts، خليط الخبراء).
Dense (نموذج كثيف):
- تشبيه: عبقري شامل. بغض النظر عن السؤال، يشغل دماغه بالكامل للإجابة.
- الخصائص: مستقر، لكن مع زيادة المعرفة، يصبح أبطأ في الاستجابة.
- ممثلون: GPT-3, Llama-2.
MoE (نموذج خليط الخبراء):
- تشبيه: فريق خبراء على خط تجميع (يتغير الشخص لكل كلمة تتم معالجتها).
- الآلية الأساسية (Token-Level Routing): جوهر MoE يكمن في التوجيه الأصلي على مستوى الرمز (Token). إنه ليس تقسيمًا للعمل حسب "نوع المهمة" (مثل إعطاء جميع مسائل الرياضيات لخبير الرياضيات)، بل تقسيم في الوقت الفعلي حسب "الكلمة التي يتم توليدها حاليًا".
- عندما يولد النموذج "
def"، يوجه إلى خبير الكود. - عندما يولد النموذج "
love"، يوجه إلى خبير الأدب. - عندما يولد النموذج "
3.14"، يوجه إلى خبير الرياضيات. هذا يعني أنه حتى داخل نفس الجملة، قد تتم معالجة كلمات مختلفة بواسطة خبراء مختلفين.
- عندما يولد النموذج "
- الخصائص: رغم أن العدد الإجمالي كبير (عدد المعاملات كبير)، إلا أن عددًا قليلاً فقط يعمل عند معالجة كل كلمة (معاملات نشطة قليلة). واسع المعرفة وسريع في نفس الوقت.
- ممثلون: GPT-4, DeepSeek-V3, Mixtral.
7.6 ثورة الكفاءة: كسر حدود الطول (Linear Attention)
بالإضافة إلى MoE، هناك مشكلة أساسية أخرى: طول السياق. يستخدم Transformer التقليدي (مثل GPT-4) آلية الانتباه القياسية، التي تزداد حساباتها بشكل انفجاري تربيعي مع زيادة عدد الكلمات.
- قراءة 10 آلاف كلمة، كمية الحساب 100 مليون.
- قراءة 100 ألف كلمة، كمية الحساب 10 مليارات!
لحل هذه المشكلة، تبنت نماذج مثل MiniMax (سلسلة abab) و RWKV آلية الانتباه الخطي (Linear Attention).
لماذا واحدة "شبكية" والأخرى "خطية"؟
الفرق الجوهري هو: هل تختار "الاحتفاظ بكل النص الأصلي"، أم "التلخيص في أي وقت"؟
الانتباه القياسي (شبكي) —— لماذا يجب العودة للنظر؟
- السبب الأساسي: من أجل "البحث عن العلاقات".
- مثال: مثل جملة "أعطيت التفاحة لـ ـها...". عندما تقرأ كلمة "ـها"، لمعرفة من تشير إليه "ـها"، يجب على النموذج العودة ومسح جميع الكلمات السابقة (أعطيت، التفاحة، لـ).
- العملية: "ـها" ترسل إشارة استعلام (Query)، لتطابقها مع علامات (Key) جميع الكلمات السابقة.
- تطابق مع "أعطيت"؟ 0 نقطة.
- تطابق مع "التفاحة"؟ 100 نقطة!
- الثمن: لأن النموذج لا يعرف أي كلمة مهمة، لذا يجب فحص جميع الكلمات السابقة، دون تفويت أي واحدة. لهذا السبب تُنسج الخطوط في شبكة.
الانتباه الخطي (خطي) —— لماذا يمكن عدم العودة للنظر؟
- المبدأ: تعلم النموذج "تدوين الملاحظات". بعد قراءة "التفاحة"، يضغط معلومة "هناك تفاحة" في الحالة (State)؛ وعند قراءة "ـها"، يراجع الحالة التي يحملها مباشرة، ويعرف أن "ـها = التفاحة".
- الثمن: رغم السرعة، قد تُفقد بعض التفاصيل أثناء عملية "الضغط" (مثل نسيان أن التفاحة حمراء).
Imagine taking an exam. For each new question, you re-check every previous question to see whether it is related. The more questions there are, the more checking dominates the work.
7.7 مقارنة البنى: RNN vs Transformer vs RWKV
| البنية | الآلية الأساسية | التعقيد (الطول N) | التدريب المتوازي | سرعة الاستنتاج | مشكلة النسيان | نماذج ممثلة |
|---|---|---|---|---|---|---|
| RNN | تكراري تسلسلي | (منخفض) | ❌ لا يمكن | بطيء (تسلسلي) | شديد (نسيان المسافات الطويلة) | LSTM, GRU |
| Transformer | انتباه شامل | (مرتفع جدًا) | ✅ يمكن | متوسط (KV Cache) | لا يوجد (لكن مقيد بالنافذة) | GPT-4, Llama |
| RWKV / Linear | انتباه خطي | (منخفض) | ✅ يمكن | سريع (ذاكرة فيديو ثابتة) | طفيف (فقدان بسبب الضغط) | RWKV, MiniMax |
RWKV / Linear Attention يحاول الجمع بين مزايا الاثنين السابقين: تدريب متوازٍ مثل Transformer، واستنتاج فعال مثل RNN.
8. خلاصة ومسار التعلم
الآن أتقنت المسار الكامل من "التجزئة" إلى "ChatGPT":
- Tokenization: تقسيم النص إلى Tokens.
- Embedding: تعيين Tokens إلى متجهات دلالية.
- Transformer: استخدام آلية الانتباه لمعالجة التسلسلات، واستخراج السمات بشكل متوازٍ.
- Training: استخدام Template لتنسيق البيانات، والتدريب المتوازي عبر Teacher Forcing.
- Inference: توليد كلمة بكلمة بطريقة ذاتية الانحدار.
اقتراحات للخطوات التالية:
- إذا كنت مهتمًا بالرياضيات، يمكنك التعمق في الجبر الخطي (عمليات المصفوفات) و نظرية الاحتمالات.
- إذا كنت تريد التدريب العملي، يمكنك تجربة استخدام مكتبة
transformersفي Python لتحميل نموذج مصغر (مثل GPT-2) والتجربة به.
9. جدول المصطلحات (Glossary)
| المصطلح | الاسم الكامل | الشرح |
|---|---|---|
| LLM | Large Language Model | نموذج اللغة الكبير. نموذج ذكاء اصطناعي مدرب على نصوص هائلة، يمكنه فهم وتوليد اللغة البشرية. |
| Token | - | وحدة التجزئة. أصغر وحدة يتم تقسيم النص إليها (كلمة، حرف، جزء من كلمة). ما يقرأه ويكتبه النموذج هو Token ID. |
| Embedding | - | متجه الكلمة. تعيين Token إلى متجه رقمي في فضاء عالي الأبعاد (مثل 4096 بعدًا)، يلتقط العلاقات الدلالية للكلمات. |
| Transformer | - | البنية الأساسية لنماذج LLM الحديثة. تعتمد على آلية الانتباه، وتستطيع معالجة النصوص الطويلة بشكل متوازٍ. |
| Attention | Attention Mechanism | آلية الانتباه. تتيح للنموذج التركيز ديناميكيًا على الكلمات الأخرى ذات الصلة في السياق عند معالجة كلمة ما. |
| Context Window | - | نافذة السياق. أقصى عدد من Tokens يمكن للنموذج "تذكره" في استنتاج واحد (مثل 128k). |
| Pre-training | - | التدريب المسبق. تدريب النموذج على نصوص هائلة غير معنونة لتعلم القواعد الأساسية للغة والمعرفة العالمية. |
| SFT | Supervised Fine-Tuning | الضبط الدقيق بالإرشادات. استخدام أزواج أسئلة وأجوبة عالية الجودة لتعليم النموذج اتباع التعليمات البشرية. |
| RLHF | Reinforcement Learning from Human Feedback | التعلم المعزز من الملاحظات البشرية. من خلال التقييم البشري، ضبط سلوك النموذج ليتوافق مع القيم الإنسانية (المواءمة). |
| CoT | Chain of Thought | سلسلة الأفكار. تقنية توجه النموذج لتوليد خطوات استنتاجية قبل إعطاء الإجابة النهائية. |
| MoE | Mixture of Experts | نموذج خليط الخبراء. يتكون من عدة نماذج فرعية "خبيرة"، تُفعَّل تلقائيًا حسب السؤال، مما يحسن الكفاءة. |
| Temperature | - | درجة الحرارة. معامل يتحكم في عشوائية توليد النموذج. كلما ارتفعت، زاد الإبداع وقلت القدرة على التحكم؛ وكلما انخفضت، زادت حتمية الإجابات. |