الوحدة 2 — تحضير مجموعة بيانات التعليمات
القاعدة القاسية التي تعلّمها الجميع بالطريق الصعب: جودة النتيجة تساوي جودة البيانات، لا أكثر. ألفا زوج نظيف يتفوّقان على مئة ألف زوج ملوّث، وميزانية أسبوع كامل على البيانات تُوفّر ثلاث دورات تدريب لاحقة. هذه الوحدة تُبنى حول ألفَي زوج التفريغ/المحضر من الفلم الأحمر.
الصيغة الحوارية القياسية
المعيار الفعلي في 2026 هو صيغة messages المستعملة من قِبَل OpenAI و
Anthropic ومكتبة transformers. كلّ مثال قائمة رسائل بأدوار محدّدة:
example = {
"messages": [
{"role": "system", "content": "أنت مساعد يكتب محاضر اجتماعات منظّمة."},
{"role": "user", "content": "التفريغ التالي:\n\n<نصّ التفريغ>"},
{"role": "assistant", "content": "# محضر الاجتماع\n\n## الحاضرون\n..."},
]
}
الدور system يُثبّت السلوك العام، والدور user يقدّم المدخل، والدور
assistant يحوي الجواب المرجعي. النموذج يُدرَّب على توقّع رموز رسالة
assistant فقط: الخسارة تُقنَّع (masked) على رموز النظام والمستخدم.
قالب النموذج
كلّ نموذج مفتوح له قالب محادثة (chat_template) يُحوّل قائمة الرسائل
إلى سلسلة نصّية مع رموز خاصّة، مثل <|im_start|> و<|im_end|> عند
النماذج المشتقّة من ChatML. هذا القالب مُخزَّن في الـtokenizer ولا
يجوز أبدًا اختراعه يدويًّا:
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("mistralai/Mistral-7B-Instruct-v0.3")
text = tokenizer.apply_chat_template(
example["messages"],
tokenize=False,
add_generation_prompt=False,
)
أخطاء القالب أشيع أسباب التدريب الفاسد: النموذج يتعلّم صيغة رموز غير
التي يستعملها عند الاستدلال، فيُنتج مخرجات غريبة أو يتوقّف حيث لا ينبغي.
تحقّق دائمًا من نصّ مثال واحد بعد apply_chat_template قبل إطلاق التدريب.
الجودة قبل الكمّية
في مشروع 2023 على LIMA، أظهرت شركة Meta أنّ ألف مثال منتقًى يدويًّا يعطي نتائج أفضل من عشرات آلاف الأمثلة المُتَولَّدة تلقائيًّا. سبب ذلك: كلّ مثال رديء يُعلّم النموذج شيئًا خاطئًا يبقى في الأوزان.
معايير جودة يجب فرضها:
- الاتّساق: كلّ محضر في مجموعة التدريب يحترم البنية نفسها (نفس العناوين، نفس ترتيب الأقسام). أيّ استثناء يُضعف الإشارة.
- الاكتمال: لا محضر يقول «راجع الملف المرفق» — النموذج لا يمتلك الملف، فيتعلّم إنتاج مخرجات غير مفيدة.
- الدقّة الوقائعية: القرارات المذكورة في المحضر يجب أن تظهر فعلًا في التفريغ. محضر يخترع مهامّ لا وجود لها يُعلّم النموذج الهلوسة.
التنوّع وإزالة المكرّرات
تنوّع الأمثلة يمنع فرط التخصيص على شكل واحد. اجتماعات قصيرة وطويلة، تقنية وإدارية، بلغتين إن كان الفريق ثنائيّ اللغة. إذا كانت 80% من الأمثلة اجتماعات مبيعات، فسيصبح النموذج ضعيفًا في محاضر الفريق التقني.
المكرّرات كارثة صامتة. تفريغ يتشابه مع آخر بنسبة 90% يُعطي النموذج انطباعًا كاذبً ا بأنّه رأى الحالة مرّتين، فيُثقل وزنها. الحلّ العملي:
from datasketch import MinHash, MinHashLSH
lsh = MinHashLSH(threshold=0.85, num_perm=128)
for i, doc in enumerate(documents):
mh = MinHash(num_perm=128)
for token in doc.split():
mh.update(token.encode("utf-8"))
lsh.insert(f"doc-{i}", mh)
كلّ زوج يتجاوز عتبة التشابه 0.85 يُحتفظ منه بمثال واحد فقط.
التقسيم تدريب/تحقّق
القسمة الصارمة إلى تدريب وتحقّق حاسمة. مع ألفَي زوج، تقسيم 90/10 معقول: 1800 للتدريب، 200 للتحقّق. لا تُخلط المجموعتان أبدًا، ولا يُختار التحقّق عشوائيًّا بعد اكتمال التدريب.
انتباه إلى التسريب الزمني: إذا كانت الاجتماعات مسلسلة (مشاريع مستمرّة عبر أسابيع)، فتقسيم عشوائي يضع اجتماعًا متأخّرًا في التدريب واجتماعًا مبكّرًا من المشروع نفسه في التحقّق، فيحصل تسريب معلوماتي. القسمة الصحيحة هنا زمنية: كلّ اجتماعات ما قبل تاريخ معيّن في التدريب، كلّ اجتماعات ما بعده في التحقّق.
التوليد التخليقي ومخاطره
من المغري توليد آلاف الأمثلة الإضافية باستعمال نموذج كبير (GPT-4 مثلًا) لتوسيع مجموعة التدريب. هذا ممكن لكن مع تحفّظات جوهرية:
- انهيار النموذج: تدريب نموذج على مخرجات نموذج آخر يميل إلى فقدان التنوّع تدريجيًّا. الأمثلة المتولّدة تشبه بعضها أكثر من الأمثلة البشرية.
- إعادة إنتاج التحيّزات: أخطاء النموذج المولِّد تدخل بذمّة صمت في مجموعة التدريب.
- الحقوق: مخرجات بعض النماذج التجارية تُمنَع تعاقديًّا لاستعمالها في تدريب نماذج منافسة.
القاعدة: التوليد التخليقي مقبول كـتكميل، لا كأساس. نسبة أمانة معقولة: 70% أمثلة بشرية، 30% مولَّدة ومراجَعة يدويًّا.
إذا نجحت مجموعة التحقّق بعد ساعة تدريب واحدة، فهذا في الغالب تسريب، لا تعلّم. راجع القسمة قبل الاحتفال.
الخلاصة
- الصيغة الحوارية
messagesبأدوارsystem/user/assistantهي المعيار الفعلي، والقالب الرسمي للنموذج يجب استخدامه بلا اختراع. - الجودة تسبق الكمّية: ألفا مثال نظيف يتفوّقان على مئة ألف مثال ملوّث.
- إزالة المكرّرات وتنوّع الأمثلة يمنعان تحيّز النموذج نحو شكل واحد.
- التقسيم تدريب/تحقّق يجب أن يكون زمنيًّا حين تكون البيانات متسلسلة، والتوليد التخليقي مقبول كتكميل لا كأساس.
في الوحدة التالية: كلفة الضبط الكامل ولماذا لم يعد سبيلًا افتراضيًّا في عالم النماذج بسبعة مليارات معامل.