نماذج اللغة2023متوسط12 دقيقة قراءة

Mistral 7B

Mistral 7B

Jiang, A. Q. · Sablayrolles, A. · Mensch, A. · Bamford, C. · Chaplot, D. S. · de las Casas, D. · Bressand, F. · Lengyel, G. · Lample, G. · Saulnier, L. · Lavaud, L. R. · Lachaux, M.-A. · Stock, P. · Le Scao, T. · Lavril, T. · Wang, T. · Lacroix, T. · El Sayed, W. — arXiv

المشكلة

حتى أواخر 2023، كانت الوصفة المعتمدة لتحسين النماذج اللغوية واحدة: كبِّر النموذج. Llama 2 13B مثلاً احتاج ضعف عدد المعاملات مقارنةً بنسخة 7B، لكن التحسّن في الأداء ظلّ محدوداً. في المقابل، النماذج الأكبر تستهلك ذاكرة GPU أكثر وتحتاج زمن أطول وتكلفة أعلى — وهذا يجعلها غير عملية في كثير من السيناريوهات الحقيقية. ما كان ينقص الساحة هو نموذج يُحقّق أداءً بمستوى 13B أو أفضل وهو بحجم 7B فقط، مع ابتكارات معمارية فعلية تُقلّل .

الإسهام

Mistral 7B نموذج لغوي بسبعة مليارات معامل يتفوّق على Llama 2 13B في جميع المعايير المُقيَّمة، ويتجاوز Llama 1 34B في الاستدلال والرياضيات وتوليد الشيفرات. يعتمد على آليتين أساسيتين: انتباه بنافذة منزلقة (SWA) حجمها 4096 رمزاً توفّر مدى انتباه نظرياً يبلغ نحو 131 ألف رمز عبر 32 طبقة، وانتباه بالاستعلام المُجمَّع (GQA) يتشارك فيه 8 رؤوس مفتاح-قيمة بين 32 رأس استعلام فيُقلّص حجم ذاكرة المفتاح-القيمة أربع مرات ويُسرّع الاستدلال. يُضاف إلى ذلك ذاكرة مؤقتة دوّارة تُثبّت استهلاك الذاكرة بصرف النظر عن طول التسلسل. النسخة المضبوطة للتعليمات تتفوّق على Llama 2 13B Chat في تقييمات MT-Bench وفي التقييمات البشرية معاً.

الأثر

أثبت Mistral 7B أن العلاقة بين الأداء والتكلفة ليست ثنائية البُعد بل ثلاثية: القدرة وتكلفة وتكلفة الاستدلال. وبيّن أن التصميم المعماري المدروس يضغط المعرفة بكفاءة تفوق ما تُوحي به قوانين التوسيع وحدها. مهّد هذا النموذج الطريق لـ Mixtral (امتداده القائم على خليط الخبراء) وأشعل موجة من النماذج المفتوحة عالية . صدر برخصة Apache 2.0 وصار من أوسع النماذج المفتوحة انتشاراً في الإنتاج الفعلي، وأكّد أن نموذجاً صغيراً مصمَّماً بإتقان يستطيع منافسة نماذج أكبر منه بكثير.

تخيّل أمينة مكتبة في مكتبة ضخمة. في الكامل التقليدي تفحص الأمينة كل كتاب على كل رف قبل أن تُجيب عن أيّ سؤال — دقيق لكنه بطيء جداً كلما كبرت المكتبة. أمينة Mistral تعمل بأسلوب مختلف: تحمل نافذة منزلقة — صينية لا تتسع إلا لأقرب 4,096 كتاباً. لكن الحيلة أن كل طابق يُمرّر ملاحظاته إلى الطابق الذي يعلوه. بعد صعود 32 طابقاً تكون قد جمعت معلومات من 131,000 كتاب فعلياً، مع أنها لم تطّلع إلا على 4,096 كتاباً في المرة الواحدة. وبدلاً من أن تحتفظ بدفاتر منفصلة (مفاتيح وقيم) لكل سؤال تتابعه، تتشارك الدفاتر بين مجموعات من الأسئلة — فتوفّر 75% من تكاليف القرطاسية.

المشكلة: نماذج أكبر ومكاسب متضائلة

قبل Mistral 7B كانت الوصفة لتحسين النماذج اللغوية بسيطة ومباشرة: أضف معاملات أكثر. سلسلة Llama 2 تدرّجت من 7 إلى 13 ثم 70 مليار ، وتحسّن الأداء كما هو متوقع. لكن الثمن باهظ — نموذج بـ 13 مليار معامل يستهلك ضعف ذاكرة تقريباً ويُولّد بنصف السرعة مقارنةً بنموذج 7 مليارات. في التطبيقات الفورية كروبوتات المحادثة ومساعدات البرمجة والنشر على الأجهزة الطرفية، هذه التكلفة ليست مجرد إزعاج — بل حاجز فعلي أمام النشر.

صاغت المشكلة في بُعدين: قدرة النموذج مقابل حوسبة التدريب. لكن المهندسين في الميدان يهتمون ببُعد ثالث: تكلفة الاستدلال. فالنموذج الذي يؤدي الأداء نفسه بنصف تكلفة الاستدلال هو عملياً أفضل بمرتين لمن يريد نشره. الرهان الذي بناه Mistral 7B عليه كان واضحاً: الكفاءة المعمارية — لا مجرد التكبير — قادرة على دفع حدود الأداء إلى الأمام.

نظرة على البنية: مُحوِّل بتعديلين ذكيين

في جوهره، Mistral 7B هو قياسي يعمل بنمط ، ويتشارك الهيكل الأساسي مع LLaMA. يعتمد عبر ، و SiLU في كتل ، و لترميز المواقع. يبلغ 32,000 رمز عبر .

ما يُميّز Mistral حقاً هو طريقة حسابه للانتباه. تعديلان ذكيان — و**** — يعملان معاً لتقليص استهلاك الذاكرة وتسريع الاستدلال دون أن يتأثر مستوى الجودة.

افتح في المختبر
استكشف بنية Mistral 7B. انقر على كل مكوّن لتتعرّف على دوره ومعاملاته.
تستيقظ التجربة عند وصولك…

الانتباه بالنافذة المنزلقة: انظر محلياً واعرف شمولياً

في القياسي، كل رمز يستطيع أن ينظر إلى كل رمز آخر في التسلسل. هذا يمنح النموذج قوة تعبيرية عالية، لكن التكلفة باهظة: التعقيد الحسابي ينمو تربيعياً مع طول التسلسل، و تنمو خطياً فتلتهم ذاكرة وحدة المعالجة الرسومية مع السياقات الطويلة.

الانتباه يُغيّر هذه المعادلة: كل رمز لا ينتبه إلا لآخر W رمز سابق (حيث W = 4,096 في Mistral 7B). للوهلة الأولى يبدو هذا تقييداً شديداً — النموذج لا «يرى» إلا 4,096 رمزاً للخلف. لكن المُحوِّل يُكدّس الطبقات فوق بعضها، وكل طبقة تُمرّر المعلومات للأمام. تصوّر الأمر كسباق تتابع: في الطبقة الأولى، الرمز i يرى الرموز من i−W إلى i. في الطبقة الثانية يصل إلى معلومات من i−2W إلى i لأن الطبقة السابقة دمجت المعلومات ضمن نافذتها مسبقاً. بعد k طبقة يصبح الفعّال هو k × W.

مع 32 طبقة وW = 4,096 يصل نطاق الانتباه النظري إلى نحو 131,072 رمزاً — أبعد بكثير من سياق 8,192 رمزاً الذي دُرِّب عليه النموذج. وعملياً يُحقّق Mistral تسريعاً بمقدار الضعف مقارنةً بالانتباه الكامل عند التعامل مع تسلسلات بطول 16 ألف رمز.

افتح في المختبر
اسحب المنزلق لتغيير الطبقة الحالية وشاهد كيف يتّسع نطاق الانتباه الفعّال عبر الطبقات. كل طبقة تضيف W = 4,096 رمز إلى مدى الوصول.
تستيقظ التجربة عند وصولك…
Effective Span(k)=k×W\text{Effective Span}(k) = k \times W
نطاق الانتباه الفعّال بعد k طبقةكل طبقة تمدّ مجال الاستقبال بمقدار W رمز. بعد k = 32 طبقة مع W = 4,096، يستطيع النموذج نشر المعلومات عبر 131,072 رمزاً كحد أقصى — رغم أن كل طبقة بمفردها لا تنتبه إلا لنافذة محلية.

ذاكرة التخزين المؤقت الدوّارة: ذاكرة ثابتة وتسلسلات بلا حدود

ما دام الانتباه بالنافذة المنزلقة لا ينظر إلا لآخر W رمز، فلا داعي للاحتفاظ بمفاتيح وقيم أقدم من ذلك. لهذا يستخدم Mistral بحجم ثابت W: زوج المفتاح-القيمة عند الموضع i يُخزَّن في الفهرس i mod W. حين يتجاوز التسلسل W رمز، تُكتب المدخلات الجديدة فوق القديمة مباشرةً.

النتيجة لافتة: في تسلسل بطول 32 ألف رمز تنخفض ذاكرة المفتاح-القيمة بمقدار 8 مرات مقارنةً بالذاكرة المؤقتة التقليدية — بدون أي تنازل عن جودة النموذج. بمعنى آخر: استهلاك الذاكرة يظلّ ثابتاً مهما طال التسلسل، وهذا شرط جوهري لتقديم سياقات طويلة في بيئات الإنتاج.

cache_pos(i)=imodW\text{cache\_pos}(i) = i \bmod W
فهرسة ذاكرة التخزين المؤقت الدوّارةالمفاتيح والقيم عند الموضع i تُخزَّن في الفهرس i mod W. حين يتجاوز i القيمة W، تُكتب المدخلات الجديدة فوق القديمة عند الموضع (i mod W). الذاكرة المؤقتة لا تتجاوز الحجم W أبداً.
افتح في المختبر
شاهد كيف تُكتب المدخلات الجديدة فوق القديمة مع وصول رموز جديدة. الذاكرة المؤقتة لا تتجاوز الحجم W أبداً مهما طال التسلسل.
تستيقظ التجربة عند وصولك…

الانتباه بالاستعلام المُجمَّع: مفاتيح مشتركة واستنتاج أسرع

في القياسي، كل رأس من الرؤوس الاثنين والثلاثين يحتفظ بمجموعته الخاصة من إسقاطات المفاتيح والقيم. النتيجة أن ذاكرة المفتاح-القيمة تنمو خطياً مع عدد الرؤوس — وهذا عبء ثقيل أثناء حيث تُقرأ الذاكرة المؤقتة في كل خطوة توليد.

الانتباه بالاستعلام المُجمَّع (GQA) يُعيد ترتيب الأمور: يُقسّم 32 رأس استعلام إلى 8 مجموعات، وتتشارك كل مجموعة رأس مفتاح-قيمة واحداً. بدلاً من 32 رأس KV لا نحتاج إلا 8 — تقليص بأربع مرات. تصوّر قاعة اجتماعات فيها 32 شخصاً (استعلامات) لديهم أسئلة، لكن بدلاً من 32 ملفاً مرجعياً منفصلاً هناك 8 ملفات مشتركة فقط. كل أربعة أشخاص يتشاركون ملفاً واحداً. الأسئلة تبقى متنوعة ودقيقة لكن المراجع تُوزَّع بكفاءة.

الفائدة المباشرة مزدوجة: أولاً ذاكرة أقل — ذاكرة المفتاح-القيمة أصغر بأربع مرات، ما يتيح معالجة تسلسلات أطول أو دفعات أكبر على نفس الـ GPU. ثانياً توليد أسرع — قراءة 8 رؤوس KV بدلاً من 32 تُخفّف الضغط على ، وهو عادةً عنق الزجاجة عند التوليد رمزاً بعد رمز.

افتح في المختبر
قارن بين الانتباه متعدد الرؤوس القياسي (32 رأس KV) والانتباه بالاستعلام المُجمَّع (8 رؤوس KV). لاحظ كيف تتشارك كل 4 رؤوس استعلام رأس KV واحداً.
تستيقظ التجربة عند وصولك…

التعبئة المسبقة والتقطيع: معالجة فعّالة للموجّهات

أثناء التوليد الذاتي الانحداري، كل رمز جديد يعتمد على كل ما سبقه — لذا لا بدّ من توليد الرموز واحداً تلو الآخر. لكن الموجّه (prompt) معروف مسبقاً بالكامل، وهذا يفتح الباب للمعالجة المتوازية.

يملأ Mistral ذاكرة المفتاح-القيمة بالموجّه كاملاً قبل أن يبدأ التوليد. وإذا كان الموجّه طويلاً جداً فإنه يُقطَّع إلى شرائح بحجم W (حجم النافذة). كل شريحة تحسب الانتباه على مصدرين: الذاكرة المؤقتة المتراكمة من الشرائح السابقة، والرموز داخل الشريحة الحالية (مع ). بهذا يبقى سقف الذاكرة محدوداً بحجم النافذة مهما طال الموجّه.

مواصفات النموذج

يتكوّن Mistral 7B من محوِّل بـ 32 طبقة، بُعده الخفي 4,096 وبُعد الشبكة الأمامية الخفي 14,336. كل طبقة انتباه تضمّ 32 رأس استعلام و8 رؤوس مفتاح-قيمة (نسبة 4:1 وفق نمط الاستعلام المُجمَّع)، وبُعد كل رأس 128. حجم النافذة المنزلقة يبلغ 4,096 رمز، ويدعم النموذج سياقاً بطول 8,192 رمز. حجم المفردات يبلغ 32,000 رمز.

مقارنةً بـ Llama 2 7B، يختلف التصميم جوهرياً في نقطتين: استخدام الانتباه بالاستعلام المُجمَّع بدلاً من الانتباه متعدد الرؤوس التقليدي، واعتماد الانتباه بالنافذة المنزلقة بدلاً من الانتباه السببي الكامل.

الفكرة في الكود

الانتباه بالنافذة المنزلقة — الآلية الأساسيةpython

مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.

import torch
import torch.nn.functional as F

def sliding_window_attention(Q, K, V, window_size=4096):
    """
    الانتباه بالنافذة المنزلقة: كل استعلام ينتبه فقط
    لآخر `window_size` مفتاح، وليس التسلسل كاملاً.
    """
    seq_len = Q.size(-2)
    # أنشئ قناعاً شريطياً: كل موضع i ينتبه لـ [i-W+1, i]
    positions = torch.arange(seq_len)
    # mask[i,j] = True إذا كان j ضمن نافذة i
    mask = (positions.unsqueeze(0) - positions.unsqueeze(1)).abs() < window_size
    mask = mask & (positions.unsqueeze(0) >= positions.unsqueeze(1))  # سببي

    scores = Q @ K.transpose(-2, -1) / (Q.size(-1) ** 0.5)
    scores = scores.masked_fill(~mask, float('-inf'))
    attn = F.softmax(scores, dim=-1)
    return attn @ V

# الفكرة الجوهرية: التعقيد الحسابي O(n × W) بدلاً من O(n²)
# ذاكرة المفتاح-القيمة ثابتة عند W، ولا تنمو مع طول التسلسل
# بعد k=32 طبقة، مجال الاستقبال الفعّال = k × W ≈ 131 ألف رمز

النتائج: 7 مليارات معامل وأداء يفوق 13 ملياراً

قُيِّم Mistral 7B على مجموعة شاملة من وتفوّق على Llama 2 13B في كل معيار بلا استثناء:

  • MMLU (المعرفة): 60.1% مقابل 55.6% لـ Llama 2 13B — وذلك بنصف عدد المعاملات تقريباً. هذا الأداء يدلّ على أن النموذج يضغط المعرفة بكفاءة عالية.
  • HellaSwag (الفهم العام): 81.3% مقابل 80.7% — يُضاهي نموذجاً أكبر منه بمرتين.
  • GSM8K (الاستدلال الرياضي، 8-shot): 52.2% مقابل 34.3% — قفزة بمقدار 18 نقطة، بل يتجاوز حتى Llama 1 34B.
  • HumanEval (توليد الشيفرات): 30.5% — يقترب من Code-Llama 7B ‏(31.1%) دون أيّ مخصّص للشيفرات. هذا لافت لأن Code-Llama يُضحّي بالأداء العام لصالح البرمجة، بينما Mistral لا يفعل ذلك.
  • ARC-Challenge: 55.5% مقابل 48.8% — تحسّن بـ 7 نقاط في الاستدلال العلمي.

حين نُحوّل هذه الأرقام إلى «أحجام نماذج مكافئة»، نجد أن Mistral 7B يُكافئ أداء نموذج Llama 2 أكبر منه بثلاث مرات في الاستدلال والعلوم، وأكبر بـ 1.9 مرة في معايير المعرفة (وهذا الحدّ الأخير طبيعي لأن 7 مليارات معامل لا تتسع لنفس الكم من المعرفة الواقعية).

افتح في المختبر
قارن أداء Mistral 7B مع Llama 2 7B وLlama 2 13B وCode-Llama 7B عبر المعايير الرئيسية. بدّل بين النماذج لترى فروقات الأداء.
تستيقظ التجربة عند وصولك…

الضبط للتعليمات: Mistral 7B Instruct

لإثبات مرونة Mistral 7B، أجرى المؤلفون عليه باستخدام مجموعات بيانات متاحة للعموم — بلا بيانات مملوكة ولا حيل خاصة. النموذج الناتج Mistral 7B Instruct تفوّق على كل نماذج المحادثة بحجم 7B في معيار MT-Bench وكافأ نماذج 13B.

في تقييم بشري مباشر أمام Llama 2 13B Chat، فضّل المُقيّمون إجابات Mistral 7B Instruct 5,020 مرة مقابل 4,143 لصالح Llama 2 13B Chat. وهذا ملفت: نموذج بنصف عدد المعاملات تقريباً يتفوّق بشرياً في محادثات مفتوحة.

قدّم المؤلفون أيضاً آلية و تعتمد على التأمّل الذاتي. مع موجّه النظام الموصى به، رفض النموذج 100% من الموجّهات الضارة مع بقائه قادراً على الإجابة عن الأسئلة المشروعة التي ترفضها النماذج المفرطة في الحذر — مثل «كيف أُوقف عملية في لينكس».

حواجز الحماية وإدارة المحتوى

اقترح Mistral منهجاً عملياً للسلامة يوازن بين الحذر والفائدة. آلية موجّه النظام تُتيح للمستخدم التحرّك على منحنى باريتو بين المساعدة والسلامة. مع الموجّه الافتراضي لـ Mistral سجّل النموذج 6.58 على MT-Bench (مقابل 6.84 بدون موجّه) — تكلفة طفيفة في مقابل تغطية كاملة للموجّهات الضارة.

أما في إدارة المحتوى، فيستخدم Mistral أسلوب التأمّل الذاتي: يُصنّف النموذج مخرجاته بنفسه ضمن فئات (أنشطة غير مشروعة، محتوى عدائي، نصائح من غير مختصّ) عبر موجّه مُخصّص. بلغت ‏99.4% و ‏95.6% على مجموعة بيانات منسَّقة تجمع موجّهات خصومية وقياسية.

ما أطلقه Mistral 7B

  1. 2023

    Mistral 7B

    7 مليارات معامل تتفوّق على 13 ملياراً في جميع المعايير. الانتباه بالنافذة المنزلقة والانتباه بالاستعلام المُجمَّع يجعلان الاستدلال سريعاً وموفّراً للذاكرة. صدر برخصة Apache 2.0.

  2. 2024

    Mixtral 8×7B — خليط الخبراء

    وسّع بنية Mistral بإضافة 8 كتل خبيرة في الشبكة الأمامية لكل طبقة، مع مُوجِّه يُنشّط خبيرين لكل رمز. الحصيلة: 46.7 مليار معامل إجمالاً لكن 12.9 مليار فقط تنشط لكل رمز. ضاهى أو تفوّق على Llama 2 70B وGPT-3.5 في معايير عديدة.

  3. 2024

    Gemma — نماذج جوجل المفتوحة الفعّالة

    أصدرت جوجل نماذج Gemma بأحجام 2B و7B، مستهدفةً نفس مساحة النماذج الصغيرة الفعّالة التي فتحها Mistral. وأكّدت أن التركيز على كفاءة الاستدلال صار توجّهاً صناعياً عاماً.

  4. 2024

    النماذج المفتوحة بأولوية الكفاءة

    Phi-2 وQwen 1.5 وغيرها سارت على النهج الذي رسمه Mistral: نماذج صغيرة بتحسينات معمارية تُقدّم أداءً يفوق حجمها. انتهى عصر «الأكبر دائماً أفضل».

الإسهام الأعمق لـ Mistral 7B ليس حيلة معمارية بعينها — بل الإثبات العملي أن كفاءة الاستدلال تستحقّ اهتماماً مساوياً لكفاءة التدريب. مجتمع قوانين التوسيع كان يُركّز شبه حصرياً على حوسبة التدريب المُثلى، فجاء Mistral ليُبيّن أن جانب النشر من المعادلة لا يقلّ أهمية. نموذج يُكلّف تدريبه كثيراً لكنه يعمل بتكلفة منخفضة قد يكون أقيم من نموذج يُدرَّب برخص لكنه باهظ التشغيل.

هذه الرؤية شكّلت كل ما جاء بعدها: Mixtral وسّع أطروحة الكفاءة عبر ، والمجتمع الأوسع بدأ يتعامل مع تكلفة الاستدلال كمقياس من الدرجة الأولى إلى جانب ونتائج المعايير.

المرجعJiang, Sablayrolles, Mensch, Bamford, Chaplot, de las Casas, Bressand, Lengyel, Lample, Saulnier, Lavaud, Lachaux, Stock, Le Scao, Lavril, Wang, Lacroix, El Sayed. Mistral 7B. arXiv, 2023.

مصطلحات هذه الورقة