دليل بسيط لفهم آلية توليد النصوص في النماذج اللغوية الكبيرة
دليل بسيط لفهم العينات الحديثة في نماذج اللغات الكبيرة (LLMs) مقدمة نماذج اللغات الكبيرة (LLMs) تعمل بأخذ جزء من النص (مثل دعوة المستخدم) وحساب الكلمة التالية. بشكل أكثر تقنية، تتعامل هذه النماذج مع عناصر تسمى الرموز (tokens)، وهي تمثل أجزاء الكلمات. تقوم النماذج بمرجعية هذه الرموز أثناء التدريب والإنتاج (عملية توليد النص). سنشرح هنا لماذا يتم استخدام الرموز وكيف تختار النماذج الكلمات التالية عند توليد النص. لماذا الرموز؟ ربما تكون فكرة استخدام قاموس من الكلمات أو الحروف أول ما يتبادر إلى الذهن، ولكننا نستخدم أجزاء الكلمات (sub-words) لأسباب عديدة: لماذا ليس الحروف؟: النماذج لديها حد أقصى لعدد الرموز التي يمكنها معالجتها في آن واحد (نافذة السياق). باستخدام تجزئة الحروف، حتى كمية متوسطة من النص ستؤدي إلى زيادة كبيرة في طول التسلسل. هذا يتطلب حسابات ذات كلفة أعلى ويصعب على النموذج فهم العلاقات بين الحروف. لماذا ليس الكلمات الكاملة؟: استخدام قاموس لكلمات كاملة سيجعل المصفوفة التضمينية كبيرة وكثيرة الكلفة. كما أنه سيواجه صعوبة في التعامل مع الكلمات الجديدة أو النادرة. بينما يمكن لتجزئة الكلمات أن تمثل الكلمات الجديدة بدمج الرموز الموجودة مسبقًا. كيف تولد النماذج النص؟ عملية توليد النص في LLMs تتضمن خطوتين رئيسيتين: التوقع: يحسب النموذج توزيع الاحتمالات على جميع الرموز المحتملة التالية في القاموس. الاختيار: يجب على النموذج اختيار رمز واحد من هذا التوزيع لإضافته إلى النص النامي. خطوة التوقع ثابتة وتتحدد بمعلمات النموذج بعد التدريب. أما خطوة الاختيار (العينة) فهي حيث تحدث العملية. يمكن استخدام طرق مختلفة للعينة لجعل النص أكثر تنوعًا وجاذبية. طرق العينة درجة الحرارة (Temperature) تفكر في هذا كـ "مفتاح الإبداع" في نموذجك. عند درجات حرارة منخفضة (قرب 0)، يصبح النموذج حذرًا وقابلًا للتنبؤ - يختار دائمًا الكلمة الأكثر احتمالًا. عند درجات حرارة مرتفعة (0.7-1.0)، يصبح النموذج أكثر إبداعًا ويقبل المخاطرة. يمكن أن يختار الكلمة الثالثة أو الرابعة بدلاً من الخيار الأول دائمًا. عند درجات حرارة أعلى من 1.0، يصبح النموذج جامحًا وغير مستقر، ما لم يتم استخدامه مع طرق عينة أخرى (مثل Min-P). غرامة الوجود (Presence Penalty) تعمل هذه العقوبة على تشجيع النموذج من تكرار أي رمز ظهر سابقًا، بغض النظر عن عدد مرات ظهوره. على سبيل المثال، إذا ظهر اسم "تيم" مرة واحدة، فإنه يحصل على تشجيع طفيف من الظهور مرة أخرى، سواء كان ذلك مرة واحدة أو عشر مرات. غرامة التكرار (Frequency Penalty) تشجع هذه العقوبة على تكرار الرموز بناءً على عدد مرات ظهورها سابقًا. الرمز الذي ظهر ثلاث مرات سيكون أقل احتمالًا أن يظهر مرة أخرى. غرامة التكرار (Repetition Penalty) تعمل بشكل مختلف بعض الشيء: تفرض عقوبات على الرموز في الدعوة والنص المولود، مع معاملة القيم الإيجابية والسالبة بشكل مختلف. تساعد في كسر الحلقات التكرارية لكنها قد تقلل من التجانس عند القيم العدوانية. عدم تكرار الذات (DRY) تعمل هذه الطريقة على الكشف عن الأنماط التكرارية (n-grams) في النص. إذا لاحظت أنك كتبت شيئًا مثل "كان يا ما كان" سابقًا، فإنها تثني عن الاستمرار في هذا النمط. كلما زاد طول النمط، زاد التشجيع على تجنبه. تساعد في الحفاظ على تنوع النص وتجنب الحلق التكراري. أعلى K (Top-K) بدلًا من اعتبار جميع الكلمات المحتملة التالية (والتي قد تصل إلى عشرات الآلاف)، يضيق النموذج دائرة الاختيار إلى K الكلمات الأكثر احتمالًا. إذا كان K هو 40، فسيختار النموذج فقط من الـ40 كلمة الأكثر احتمالًا. هذا يمنع النموذج من اختيار كلمات شديدة الغرابة بينما يحافظ على بعض العشوائية. أعلى P (Top-P) بدلًا من اختيار عدد ثابت من الخيارات مثل Top-K، يعمل Top-P على اختيار أصغر مجموعة من الكلمات التي تتجاوز نسبة الثقة P. إذا كان P هو 0.9، فسيتضمن النموذج فقط القدر الكافي من الكلمات الأكثر احتمالًا لتحقيق نسبة ثقة تراكمية تبلغ 90%. الحد الأدنى P (Min-P) يحدد هذه الطريقة مستوى جودة نسبيًا بناءً على أفضل خيار. على سبيل المثال، إذا كنت في مطعم وأراد صديقك اختيار أكثر الأطباق شعبية، فقد تقرر أن تختار الأطباق التي تحظى بنسبة شعبية تبلغ 20% على الأقل من أعلى نسبة شعبية. أعلى N سيجما (Top-N-Sigma) يحدد هذا النموذج عتبة إحصائية للخيارات بناءً على الانحراف المعياري. إذا كان النموذج متأكدًا من خيارات قليلة، فيبقى مركزًا عليها. عندما يكون هناك خيارات متعددة معقولة، يتيح المزيد من التنوع دون تضمين الخيارات السيئة حقًا. عينة ذيلية مجانية (Tail-Free Sampling - TFS) تعمل هذه الطريقة على تحليل انحناء التوزيع الاحتمالي لتحديد بداية الذيل. تركز على النقاط حيث يبدأ التوزيع في التسطح، مما يشير إلى الانتقال من الخيارات الجيدة إلى الذيل الطويل من الخيارات الوسطى. قطع Eta (Eta Cutoff) تعمل على ضبط مستوى الجودة بناءً على التأكد أو الضبابية. عندما يكون النموذج متأكدًا من الخيار القادم (أي عند انخفاض الانتروبيا)، تصبح العتبة أكثر صرامة. عندما يكون النموذج غير متأكد (أي عند ارتفاع الانتروبيا)، تصبح العتبة أكثر مرونة. العينة النموذجية المحلية (Locally Typical Sampling) تعمل على اختيار الكلمات الأكثر "طبيعية" بدلاً من الأكثر احتمالًا. توازن بين الاحتمالية والتنوع، مما يجعل النص يبدو أكثر طبيعية وبعيدًا عن التكرار. العينة التربيعية (Quadratic Sampling) تعمل على تشكيل التوزيع الاحتمالي بأكمله باستخدام تحويلات رياضية تجعل الفجوة بين الخيارات عالية الاحتمال والخيارات المنخفضة أكبر أو أصغر بناءً على الثقة. العينة الميروستاتية (Mirostat Sampling) تعمل كthermostat متكيف للنصوص المولدة، حيث تقوم بضبط مستوى المفاجأة أو عدم الاستقرار بشكل ديناميكي. إذا كانت النصوص الأخيرة متكررة جدًا، تسمح بمزيد من الخيارات المفاجئة. إذا كانت النصوص فوضوية، تشدد القيود. العينة الباعثية (Dynamic Temperature Sampling) تضبط قيمة درجة الحرارة بناءً على انتروبيا التوزيع الاحتمالي الحالي. عندما يكون النموذج متأكدًا (منخفضة الانتروبيا)، يستخدم درجة حرارة أعلى لإدخال المزيد من التنوع. عندما يكون النموذج غير متأكد (مرتفعة الانتروبيا)، يستخدم درجة حرارة أقل للحفاظ على التركيز والتجانس. البحث الشجري (Beam Search) يشبه البحث في عدة مسارات على الخريطة لتحديد أفضل المسارات الكلية. بدلاً من اختيار خيار واحد في كل خطوة، يحافظ البحث الشجري على عدة مسارات "موازية" ويقيم باستمرار أيها يعد الأكثر وعودًا. يتم استخدامه لضمان النتائج الأكثر توقعًا، ولكنه مكلف ولا يُستخدم كثيرًا في الوقت الحاضر. العينة التباينية (Contrastive Search) توازن بين احتمالية الكلمات وتجنّب الأنماط التكرارية. تكافئ التنوع بشكل صريح بدلاً من مجرد ضبط العشوائية. ترتيب العينة في العديد من مكتبات LLMs، يتم تطبيق هذه الطرق في تسلسل محدد: توليد الرموز الأولية: ينتج النموذج رموزًا غير محسوبة لجميع الرموز في القاموس. تطبيق فلاتر الرموز: إزالة الرموز التي لا ينبغي الأخذ بها بعين الاعتبار. تطبيق العقوبات: تطبيق غرامات التكرار والتردد والوجود. تطبيق طرق النمط: مثل DRY للكشف عن الأنماط التكرارية. تطبيق تدرج درجة الحرارة: قد يتم تطبيق درجة الحرارة في بداية أو نهاية المراحل، حسب التنفيذ. تطبيق طرق تشكيل التوزيع: مثل Top-K، Top-P، Min-P، إلخ. اختيار الرمز النهائي: بعد جميع التعديلات، يتم اختيار رمز من التوزيع الاحتمالي الناتج. تأثيرات وتفاعلات العينة الترتيب الذي يتم فيه تطبيق طرق العينة له آثار جادة على توليد النص. على سبيل المثال: درجة الحرارة قبل أو بعد الفلترة: تطبيق درجة الحرارة قبل الفلترة قد يسمح لبعض الرموز الخارجية بتصبح محتملة بما يكفي للبقاء، بينما تطبيق الفلترة أولاً يضمن عدم وجود رموز خارجية. العقوبات قبل أو بعد الطرق الأخرى: تطبيق العقوبات قبل الطرق الأخرى يقلل من احتمالات الرموز المستخدمة مسبقًا، مما يتيح للخيارات الجديدة الفرصة للظهور. موضع DRY: إذا تم تطبيق DRY في بداية السلاسل، فإنه يقلل من تكرار الأنماط مبكرًا. إذا تم تطبيقها في النهاية، فإنها تمنع تكرار الأنماط بشكل نسبي. تقييم الحدث من قِبل مختصين يُعتبر تطبيق طرق العينة بشكل صحيح أمرًا حاسمًا لتحسين جودة النصوص المولدة من LLMs. يؤكد الخبراء على أن التوازن بين التنوع والتجانس يعتمد بشكل كبير على اختيار الطرق المناسبة وترتيبها الجيد. تعتبر طرق مثل DRY وMirostat مفيدة للغاية في تجنب الأنماط التكرارية وتحسين الجودة الطبيعية للنصوص. نبذة تعريفية عن الشركة ذات الصلة شركات مثل OpenAI وGoogle تستخدم هذه الطرق المتقدمة في نماذجها لتحسين جودة التوليد. على سبيل المثال، نموذج ChatGPT من OpenAI يستخدم مزيجًا من طرق العينة بما في ذلك DRY وMirostat لضمان نتائج متنوعة ومتصلة، مما يجعل التفاعل مع المستخدمين أكثر طبيعية وإثراءً.
