معالجة اللغة الطبيعية2022متوسط14 دقيقة قراءة
Self-Instruct: مواءمة النماذج اللغوية بتعليمات يولّدها النموذج بنفسه
Self-Instruct: Aligning Language Models with Self-Generated Instructions
Wang, Y. · Kordi, Y. · Mishra, S. · Liu, A. · Smith, N. A. · Khashabi, D. · Hajishirzi, H. — ACL
المشكلة
بحلول أواخر 2022، أثبتت النماذج اللغوية المضبوطة بالتعليمات — مثل InstructGPT — قدرة لافتة على تنفيذ تعليمات متنوعة. لكن المشكلة كانت واضحة: بناء هذه النماذج يحتاج كمّاً هائلاً من بيانات التعليمات المكتوبة يدوياً، وهذه البيانات مكلفة ومحدودة الإبداع ومنحازة غالباً نحو مهام معروفة والتلخيص. النتيجة عنق زجاجة حقيقي: قدرة النموذج على مرهونة بتنوع ما كتبه البشر، وكل توسّع يتطلب إنفاقاً أكبر على التوصيف.
الإسهام
Self-Instruct: إطار تمهيد ذاتي يُمكّن نموذجاً لغوياً خاماً من توليد بيانات ضبط التعليمات الخاصة به. الفكرة تبدأ من 175 مهمة بذرية مكتوبة يدوياً فقط، ثم يولّد النموذج بشكل تكراري تعليمات جديدة ويُصنّفها ويُنشئ أمثلة مدخلات ومخرجات ويُصفّي الرديء منها — كل ذلك نفسه. عند التطبيق على GPT-3، أنتج الإطار أكثر من 52 ألف تعليمة متنوعة و82 ألف مثال. لـGPT-3 على هذه البيانات المولَّدة ذاتياً حقّق تحسّناً مطلقاً بنسبة 33% على معيار Super-NaturalInstructions، مقارباً أداء InstructGPT-001 الذي اعتمد على بيانات بشرية خاصة.
الأثر
أثبت Self-Instruct أن النماذج اللغوية تختزن معرفة كافية لتوليد بيانات تعليماتها بنفسها — وهو اكتشاف غيّر مسار المجال بالكامل. ألهم مباشرةً مشروع Stanford Alpaca الذي طبّق الفكرة نفسها على LLaMA وفتح الباب أمام نماذج اتّباع التعليمات مفتوحة المصدر. تحوّل مفهوم توليد التعليمات الاصطناعية إلى تقنية محورية قادت إلى LLaVA للتعليمات متعددة الوسائط وToolformer لتعليمات استخدام الأدوات وحركة RLAIF التي استبدلت التغذية الراجعة البشرية بتغذية يولّدها الذكاء الاصطناعي. جعلت الورقة ضبط التعليمات في متناول أيّ شخص يملك وصولاً لنموذج لغوي قادر عبر واجهة برمجية.
تخيّل معلماً جديداً قرأ كل كتاب في مكتبة المدرسة لكنه لم يقف أمام طلاب قط. يأتيه المدير بملف فيه 175 خطة درس نموذجية ويقول له: «أريدك تصنع آلافاً غيرها.» فيدرس المعلم هذه الأمثلة، ويبدأ يبتكر دروساً في مواد لم تُذكر أصلاً — كتابة إبداعية، فلك، طبخ — يكتب تمارين لكل درس، يرمي ما لا يصلح، ثم يتدرّب على التدريس من هذا المنهج الذي بناه بنفسه حتى يصير معلماً فعّالاً فعلاً.
لم يُخبره أحد ماذا يُدرّس — هو استنتج ذلك وحده من ملاحظة ما يجعل الدرس جيداً. هذا تماماً ما يفعله Self-Instruct مع النموذج اللغوي: يتعلّم بأن يولّد بيانات تدريبه بنفسه انطلاقاً من حفنة صغيرة من المهام البذرية.
عنق الزجاجة: التعليمات البشرية لا تتوسّع
بحلول عام 2022 كانت الوصفة المعتمدة لبناء نماذج قادرة على اتّباع التعليمات واضحة: تأخذ نموذجاً لغوياً مُدرَّباً مسبقاً، تجمع آلاف الأمثلة المكتوبة بشرياً — كل مثال يتكون من تعليمة ومدخل ومخرج — ثم تُجري ضبطاً دقيقاً للنموذج عليها. مشاريع مثل FLAN وT0 وSuper-NaturalInstructions أثبتت أن هذا النوع من الضبط يفتح الباب أمام تعميم مذهل: النموذج يستطيع أداء مهام لم يرَها أثناء ، بشرط واحد — أن تُوصَف له المهمة بلغة طبيعية.
لكن هذا النهج كان له سقف واضح. الموصِّفون البشريون يميلون بطبيعتهم إلى كتابة مهام مألوفة — ، ترجمة، — لأن هذا ما يعرفونه. أما المهام الإبداعية أو غير المعتادة — كتابة شفرة برمجية، تأليف قصيدة، تقمّص شخصية تاريخية — فتبقى ممثّلة تمثيلاً ناقصاً. بكلمات أخرى: خيال الموصِّفين يصير سقف النموذج. والتوسّع يعني توظيف مزيد من الموصِّفين، وهذا مكلف ولا يضمن تنوّعاً أفضل.
حاولت OpenAI حلّ المشكلة جزئياً في InstructGPT بجمع استعلامات المستخدمين الحقيقية، لكن تلك البيانات كانت خاصة وباهظة التوصيف ولا يمكن لأيّ فريق بحثي إعادة إنتاجها. كان المجال يحتاج طريقة لتوليد بيانات تعليمات متنوعة بتكلفة منخفضة وبشكل مفتوح للجميع.
خط أنابيب Self-Instruct: أربع خطوات لتوليد بيانات اصطناعية
الملاحظة المحورية في Self-Instruct بسيطة لكنها عميقة: النموذج اللغوي المُدرَّب مسبقاً «يعرف» فعلاً عدداً ضخماً من المهام من بيانات — المشكلة أنه لم يُنظَّم بعد ليتّبع تعليمات حول هذه المهام. لكن إذا أعطيته بضعة أمثلة عبر مُحكم، يستطيع توليد مهام جديدة كلياً مع مدخلاتها ومخرجاتها — مهام لم يُدرَّب عليها صراحةً قط.
يتكوّن خط الأنابيب من أربع خطوات تدور في حلقة تكرارية. تخيّلها ككرة ثلج تتدحرج من أعلى التل: تبدأ ببذرة صغيرة وتكبر مع كل دورة.
الخطوة 1 — توليد التعليمات. تبدأ العملية بمجمّع مهام يحتوي 175 مهمة كتبها بشر (كل مهمة تتكون من تعليمة ومثال واحد). في كل دورة تُسحب 8 مهام عشوائياً — 6 من المهام البشرية الأصلية و2 من مهام ولّدها النموذج في دورات سابقة — وتُقدَّم كأمثلة لحثّ النموذج اللغوي على ابتكار تعليمة جديدة. هذا المزج بين الأمثلة البشرية والآلية يحافظ على الجودة ويُعزّز التنوع في آن واحد.
الخطوة 2 — تحديد نوع المهمة. ليست كل المهام من صنف واحد. مهام التصنيف — كـتحليل المشاعر — لها مجموعة صغيرة ثابتة من التسميات، بينما مهام — ككتابة المقالات — تُنتج نصاً مفتوحاً. يُحدّد خط الأنابيب نوع كل تعليمة جديدة باستخدام يضم 12 مثالاً تصنيفياً و19 مثالاً غير تصنيفي. هذا التمييز مهم لأن كل نوع يحتاج استراتيجية مختلفة لتوليد أمثلة التدريب.
الخطوة 3 — توليد الأمثلة. لكل تعليمة، يولّد النموذج أزواج مدخل-مخرج — وهي أمثلة التدريب الفعلية. في المهام غير التصنيفية يُستخدم منهج المدخل أولاً: يُولَّد المدخل ثم المخرج. لكن مهام التصنيف تعاني من مشكلة انحياز عند التوليد بهذه الطريقة — مثلاً: مدقّق نحوي سيولّد في الغالب جملاً صحيحة لأن هذا ما تميل إليه النماذج اللغوية طبيعياً. الحل هو منهج المخرج أولاً: تُولَّد تسميات الفئات أولاً، ثم يُولَّد مدخل يناسب كل تسمية. هذا يضمن توزيعاً متوازناً بين الفئات.
الخطوة 4 — التصفية. تحدث مراقبة الجودة على محورين. المحور الأول هو التنوع: لا تُضاف تعليمة جديدة إلى المجمّع إلا إذا كان تشابهها بمقياس مع كل تعليمة موجودة أقل من 0.7. المحور الثاني هو الصلاحية: تُستبعد الأمثلة التي يكرّر فيها المخرج المدخل، أو تكون التعليمة طويلة جداً أو قصيرة جداً، أو تشير إلى قدرات لا يملكها النموذج كمعالجة الصور. كذلك تُحذف أي تعليمة تحتوي كلمات من قبيل «صورة» أو «رسم».
حلقة التمهيد الذاتي: من 175 بذرة إلى 52 ألف مهمة
السرّ في Self-Instruct أن خط الأنابيب تكراري. المهام المولَّدة التي تجتاز التصفية تُعاد إلى مجمّع المهام، فتسحب الدورة التالية من مجموعة أغنى وأكثر تنوعاً. هذا يخلق حلقة تغذية ذاتية إيجابية: تنوّع أكبر في المجمّع يُنتج مهاماً أكثر إبداعاً، وهذه بدورها تزيد تنوّع المجمّع — وهكذا دواليك.
انطلاقاً من 175 مهمة بذرية، ولّد خط الأنابيب 52,445 تعليمة مصحوبة بـ82,439 مثال مدخل-مخرج. منها 11,584 صُنّفت كمهام تصنيف و40,861 كمهام غير تصنيفية. متوسط طول التعليمة نحو 16 كلمة، والمدخلات 13 كلمة، والمخرجات 19 كلمة.
التكلفة الإجمالية لتوليد كامل هذه عبر واجهة GPT-3 كانت نحو 600 دولار — وهي نسبة ضئيلة مما سيكلّفه التوصيف البشري بهذا الحجم. أما الضبط الدقيق لـGPT-3 على البيانات الناتجة فكلّف 338 دولاراً إضافية.
الجودة والتنوع: ما مدى جودة البيانات المولَّدة ذاتياً؟
السؤال الطبيعي هنا: هل البيانات التي يولّدها النموذج بنفسه ستكون متكررة أو رديئة؟ فحص المؤلفون الجانبين بعناية.
التنوع: غطّت التعليمات المولَّدة طيفاً واسعاً من أنواع المهام. عند تحليل بنية الفعل-والاسم وجدوا أن أكثر 20 فعلاً جذرياً شيوعاً ومفعولاتهم لا يُشكّلون سوى 14% من إجمالي التعليمات — أي أن 86% تستخدم صياغات أقل شيوعاً. المهام تتراوح بين الكتابة الإبداعية و والمسائل الرياضية وتأليف رسائل البريد والتصنيف والعصف الذهني المفتوح. كذلك وجدوا أن التعليمات المولَّدة تبتعد بشكل واضح عن البذور الـ175: معظمها يملك تشابه ROUGE-L منخفضاً مع أقرب بذرة، ما يؤكد أن النموذج يبتكر مهاماً جديدة فعلاً وليس مجرد إعادة صياغة.
الجودة: أجرى المؤلفون مراجعة يدوية لـ200 تعليمة عشوائية ووجدوا أن 92% تصف مهاماً صالحة، و79% تملك مدخلات مناسبة، و58% تملك مخرجات صحيحة بالكامل. إجمالاً، 54% من العيّنات كانت سليمة في الحقول الثلاثة. صحيح أن هذا يعني أن قرابة نصف البيانات فيه خلل ما، لكن المؤلفين وجدوا أن حتى الأمثلة الصحيحة جزئياً — التي تمتلك البنية السليمة مع محتوى غير مثالي — لا تزال تُقدّم إشارة تدريب مفيدة لتعليم النماذج اتّباع التعليمات.
المدخل أولاً أم المخرج أولاً: استراتيجيتان لتوليد الأمثلة
من الأفكار العملية المهمة في هذه الورقة إدراك أن أنواع المهام المختلفة تحتاج استراتيجيات توليد مختلفة. لنأخذ مثالاً ملموساً: مهمة كشف الأخطاء النحوية. إذا طلبت من النموذج اللغوي أن يولّد جملة مدخل أولاً، سيميل تلقائياً إلى كتابة جمل صحيحة نحوياً — لأن هذا ما تفعله النماذج اللغوية بطبيعتها. والنتيجة مجموعة بيانات منحازة بشدة نحو فئة «لا خطأ».
الحل هو منهج المخرج أولاً لمهام التصنيف. بدلاً من أن نقول للنموذج «ولّد مدخلاً ثم صنّفه»، نقول «هذه التسميات المحتملة — نحوي وغير نحوي — الآن ولّد مدخلاً لكل تسمية.» هذا يفرض تغطية متوازنة لجميع الفئات.
أما المهام غير التصنيفية — كتابة المقالات، توليد الشفرات، — فمنهج المدخل أولاً يعمل بشكل ممتاز. يولّد النموذج مدخلاً معقولاً (مثل موضوع لمقال)، ثم يُنتج المخرج المقابل (المقال نفسه). هذا يُحاكي الطريقة الطبيعية التي تُستخدم بها هذه المهام عملياً.
الإطار الرسمي: بيانات التعليمات كتعريفات للمهام
لنصغ الفكرة رسمياً. بيانات التعليمات هي مجموعة تعليمات ، كل تعليمة تُعرّف مهمة بلغة طبيعية. لكل مهمة مثال واحد أو أكثر من أزواج المدخل والمخرج . الهدف أن يتعلّم النموذج تحقيق الشرط التالي:
أما ضمان التنوع فيتم عبر عتبة ROUGE-L التي ترفض أي تعليمة جديدة يتجاوز تشابهها مع التعليمات الموجودة حداً معيناً:
النتائج: تقليص الفجوة مع البيانات الخاصة
قيّم المؤلفون Self-Instruct في إطارين: تلقائية و متخصص.
معيار Super-NaturalInstructions. عند إجراء ضبط دقيق لـGPT-3 على البيانات المولَّدة ذاتياً (المسمّى GPT3)، قفز مقياس ROUGE-L من 6.8 إلى 39.9 — أي تحسّن مطلق قدره 33.1 نقطة. هذا يقترب جداً من أداء InstructGPT-001 الذي سجّل 40.8 واعتمد على بيانات بشرية خاصة. بل تفوّق GPT3 على GPT-3 المضبوط على بيانات T0 (37.9)، رغم أن جمع بيانات T0 تطلّب جهداً بشرياً كبيراً.
التقييم البشري على 252 مهمة جديدة. أعدّ المؤلفون 252 تعليمة عملية تغطي مجالات كالبريد الإلكتروني والبرمجة والترفيه والإنتاجية. قيّم خبراء الاستجابات وفق سلّم رباعي: A مُرضية، B أخطاء طفيفة، C أخطاء جوهرية، D غير ذات صلة. تفوّق GPT3 على جميع النماذج المُدرَّبة على بيانات تعليمات عامة. والفارق مع InstructGPT-001 لم يتجاوز 5% عند احتساب التقييمين A وB معاً كنتائج مقبولة.
التوسّع والجودة. تحسّن الأداء باطّراد مع زيادة البيانات المولَّدة، لكن المكاسب استقرّت عند نحو 16 ألف تعليمة. وعند استبدال مخرجات النموذج بمخرجات InstructGPT-003 — وهو شكل من — تحسّن الأداء بنسبة 10% إضافية، ما يدل على أن هناك مجالاً كبيراً لتحسين النتائج بمجرد رفع جودة المخرجات.
استراتيجية الحثّ: كيف يولّد النموذج مهاماً جديدة
قالب الحثّ المستخدم لتوليد التعليمات بسيط بشكل يُدهشك. كل ما يحدث هو أن النموذج يرى قائمة بمهام موجودة ويُطلب منه إكمال النمط. السبب في نجاح هذا الأسلوب أن GPT-3 تدرّب على كمّ هائل من النصوص تشمل أوصاف مهام وشروحات تعليمية، فيستطيع تعميم نمط «هذه بعض المهام، ولّد مزيداً على شاكلتها».
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
# يرى النموذج 8 مهام موجودة ثم يولّد مهاماً جديدة
prompt = """Come up with a series of tasks:
Task 1: {تعليمة_مسحوبة_1}
Task 2: {تعليمة_مسحوبة_2}
Task 3: {تعليمة_مسحوبة_3}
Task 4: {تعليمة_مسحوبة_4}
Task 5: {تعليمة_مسحوبة_5}
Task 6: {تعليمة_مسحوبة_6}
Task 7: {تعليمة_مسحوبة_7}
Task 8: {تعليمة_مسحوبة_8}
Task 9:"""
# 6 مهام من البذور البشرية + 2 من مهام مولَّدة سابقاً
# يولّد النموذج تعليمات جديدة حتى يتوقفتحليل التوسّع: بيانات أكثر، جودة أعلى
استكشف المؤلفون محورين للتحسين: زيادة كمية البيانات وتحسين جودتها.
على محور الكمية، يتحسّن الأداء باطّراد من 175 تعليمة (البذور فقط) حتى نحو 16 ألف تعليمة، ثم تستقر المكاسب. هذه النتيجة تتّسق مع ما وجدته أبحاث أخرى في ضبط التعليمات: بضعة آلاف من التعليمات المتنوعة تكفي لتعليم النموذج البنية المطلوبة، والمزيد بنفس مستوى الجودة لا يُضيف كثيراً.
على محور الجودة، أجرى المؤلفون تجربة تقطير معرفي: أبقوا التعليمات والمدخلات كما هي لكن استبدلوا مخرجات GPT-3 بمخرجات من InstructGPT-003 — نموذج أقوى بكثير. النتيجة: تحسّن الأداء بنحو 10 نقاط مئوية. الرسالة هنا واضحة: القيمة الحقيقية لخط الأنابيب تكمن في توليد تعليمات ومدخلات متنوعة، أما المخرجات فيمكن تحسينها باستخدام نموذج معلّم أقوى.
الأثر الأوسع: جعل ضبط التعليمات في متناول الجميع
قبل Self-Instruct، كان بناء نموذج يتّبع التعليمات يتطلب أحد مسارين مكلفين: إما الوصول إلى بيانات خاصة باهظة (كاستعلامات مستخدمي OpenAI)، أو تنظيم حملة ضخمة (كالمهام الـ1,600+ في Super-NaturalInstructions). فتح Self-Instruct مساراً ثالثاً: دع النموذج يولّد بيانات تدريبه بنفسه. هذا التحوّل كان جذرياً لثلاثة أسباب.
أولاً، جعل ضبط التعليمات متاحاً للجميع. أيّ شخص يملك وصولاً لواجهة نموذج لغوي قادر يستطيع توليد مجموعة بيانات تعليماته الخاصة بنحو 600 دولار — بلا منصة تعهيد ولا موصِّفين خبراء ولا بيانات خاصة.
ثانياً، نقل مركز الثقل من حجم الجهد البشري إلى جودة تصميم البذور. المهام البذرية الـ175 أهم من أيّ مثال فردي مولَّد لأنها ترسم توزيع ما سيُنتَج لاحقاً. وتصميم 175 بذرة جيدة أسهل بمراحل من كتابة 50 ألف تعليمة يدوياً.
ثالثاً، كشف أن النماذج اللغوية المُدرَّبة مسبقاً تختزن معرفة بالمهام أكبر بكثير مما يوحي به أداؤها في وضع . المعرفة مخزّنة في الأوزان — كل ما تحتاجه هو استنباطها بـموجِّه مناسب ثم تنظيمها عبر الضبط الدقيق.
الإرث: ثورة البيانات الاصطناعية
2022
Self-Instruct (هذه الورقة)
أثبتت أن GPT-3 الخام يستطيع توليد بيانات تعليماته ذاتياً من 175 بذرة، منتجاً 52 ألف تعليمة بنحو 600 دولار ومقارباً أداء InstructGPT-001.
2023
Stanford Alpaca
طبّق منهج Self-Instruct على نموذج LLaMA من Meta، مولّداً 52 ألف تعليمة عبر GPT-3.5-Turbo بتكلفة 500 دولار فقط. وأنتج أول نموذج مفتوح المصدر واسع الانتشار قادر على اتّباع التعليمات.
2023
LLaVA — توسيع Self-Instruct إلى عدة وسائط
وسّعت فكرة Self-Instruct إلى المهام البصرية-اللغوية بتوليد بيانات تعليمات لفهم الصور. أثبتت أن مبدأ التمهيد الذاتي يصلح لما هو أبعد من النص.
2023
Toolformer — بيانات استخدام أدوات مولَّدة ذاتياً
طبّق التمهيد الذاتي لتعليم النماذج استخدام أدوات خارجية كالآلات الحاسبة ومحركات البحث والواجهات البرمجية، عبر توليد توصيفات استخدام الأدوات من النموذج نفسه.
2023
RLAIF: التغذية الراجعة الاصطناعية تحلّ محل البشرية
أثبت الذكاء الاصطناعي الدستوري والأبحاث المرتبطة أن تسميات التفضيل المولَّدة آلياً تستطيع أن تحلّ محل الموصِّفين البشريين في RLHF، ممدّدةً مبدأ التوليد الذاتي من التعليمات إلى إشارات التغذية الراجعة.
زرع Self-Instruct بذرة — بالمعنى الحرفي — نمت لتصير واحدة من أكثر الأفكار تأثيراً في الذكاء الاصطناعي الحديث: أن النماذج اللغوية تستطيع تعليم نفسها. ما بدأ كتجربة بـ600 دولار و175 مهمة مكتوبة يدوياً صار اليوم الأساس الذي يبني عليه مجتمع المصادر المفتوحة نماذج اتّباع التعليمات. الإسهام الأهم لهذه الورقة ليس خط الأنابيب بعينه، بل إثبات أن عنق زجاجة البيانات يمكن كسره بالنموذج نفسه.
المرجعWang, Kordi, Mishra, Liu, Smith, Khashabi, Hajishirzi. Self-Instruct: Aligning Language Models with Self-Generated Instructions. ACL, 2023.
مصطلحات هذه الورقة
- الضبط التعليميInstruction Tuning
- التمهيد الذاتيBootstrapping
- البيانات الاصطناعيةSynthetic Data
- الضبط الدقيقFine-Tuning
- النمط القليل العيّناتFew-Shot
- التعلم في السياقIn-Context Learning
- التصنيفClassification
- معيار روج الإحصائيROUGE
- النموذج اللغويLanguage Model
- التوليد الآليGeneration
- النص التوجيهي (الـمُحفّز)Prompt
- المهمة اللاحقةDownstream Task
- تعزيز البياناتData Augmentation
- تقطير المعرفةKnowledge Distillation
- نقل بدون تدريبZero-Shot Transfer