نافذة السياق مقابل طول السياق
غالبًا ما يُستخدم المصطلحان نافذة السياق وطول السياق باعتبارهما مترادفين. وعندما يميّز أحد المصادر بينهما، تكون النافذة هي السعة القصوى، ويكون الطول هو الكمية المستخدمة حاليًا.
وهذا يترك ثلاثة أرقام يجدر الفصل بينها:
- الحد الأقصى لنافذة السياق: السعة المُعلَن عنها لنموذج أو نقطة نهاية.
- طول السياق الحالي: الرموز التي تشغل طلبًا واستجابةً محددين.
- السياق القابل للاستخدام بشكل موثوق: الكمية التي يستطيع النموذج استخدامها بكفاءة لمهمتك.
الرقم الثالث ليس مواصفة ثابتة. فهو يعتمد على النموذج والمهمة وموضع التفاصيل المهمة ومقدار المادة غير ذات الصلة التي تنافس على انتباه النموذج.
كيف تعمل نافذة السياق
يجمع التطبيق المادة اللازمة للطلب. وقد يشمل ذلك:
- تعليمات النظام والمطوّر
- رسائل المستخدم والمساعد السابقة
- الرسالة الحالية
- مقاطع مسترجعة أو مستندات مرفقة
- أوصاف الأدوات ونتائجها
- التنسيق ورموز التحكم الخاصة
يحوّل مُرمِّز هذه المادة إلى رموز يعالجها النموذج. ثم يُولّد نموذج اللغة الكبير استجابته رمزًا واحدًا في كل مرة. ويصبح كل رمز مُولَّد جزءًا من التسلسل المتاح عند إنتاج الرمز التالي، ولذلك تحتاج المخرجات إلى مساحة أيضًا.
في دورة لاحقة من المحادثة، يرسل التطبيق عادةً المادة السابقة المختارة مرة أخرى. وقد يُبقي السجل كاملًا، أو يحذف الدورات القديمة، أو يسترجع المقاطع ذات الصلة فقط، أو يستبدل المادة الأقدم بملخص. ويمكن لميزة ذاكرة منفصلة تخزين المعلومات بين الطلبات، لكن ذلك التخزين ليس نافذة السياق نفسها. يجب إدخال المعلومات في السياق الحالي قبل أن يتمكن النموذج من استخدامها.
يختلف السلوك عند بلوغ الحد. فقد ترفض واجهة برمجة التطبيقات طلبًا يتجاوز الحجم المسموح. وقد يزيل منتج محادثة أقدم مادة أو يلخّصها. وقد تتوقف عملية التوليد عند الوصول إلى حد معين. راجع توثيق النموذج ونقطة النهاية المحددين لمعرفة التفاصيل الدقيقة.
مثال تطبيقي
لنفترض أن نموذجًا لديه نافذة سياق مشتركة افتراضية تبلغ 12,000 رمز:
- التعليمات المخفية: 700 رمز
- تعريفات الأدوات: 800 رمز
- سجل المحادثة والمستندات المحتفظ بها: 6,500 رمز
- الطلب الحالي: 1,000 رمز
إجمالي المُدخَلات هو 9,000 رمز. ويتبقى 3,000 رمز كحد أقصى للاستجابة.
ولنفترض الآن أن نقطة النهاية تفرض حدًا منفصلًا للمخرجات يبلغ 2,000 رمز. رغم بقاء 3,000 رمز في النافذة المشتركة، لا يمكن للاستجابة استخدام أكثر من 2,000 رمز. والحد العملي هو أي قيد واجب التطبيق يتم بلوغه أولًا.
إذا ضغط التطبيق سجل المحادثة البالغ 6,500 رمز في ملخص من 1,500 رمز، ينخفض عدد رموز المُدخَلات إلى 4,000. وهذا يوفّر مساحة أكبر، لكنه لا يعني أن نافذة السياق أصبحت أكبر. بل أصبح تمثيل المادة السابقة مختلفًا وأصغر، واختفت من الطلب التفاصيل التي حُذفت من الملخص.
لماذا تهم نوافذ السياق؟
تحدّد النافذة مقدار المادة المصدرية التي يمكن للنموذج أخذها في الاعتبار دفعة واحدة. ويؤثر ذلك في إمكانية إرسال عقد طويل في طلب واحد، أو الحفاظ على اتساق محادثة ممتدة، أو تزويد مساعد برمجي بقدر كافٍ من مستودع برمجي لحل مشكلة.
كما تؤثر في تخطيط المخرجات. فقد يؤدي ملء السعة المتاحة تقريبًا بالمُدخَلات إلى ترك مساحة قليلة جدًا للإجابة. وغالبًا ما تحجز التطبيقات ميزانية للمخرجات قبل تحديد مقدار السجل أو النص المسترجع الذي ستدرجه.
للسياق الأكبر تكاليف أيضًا. فعادةً ما تستغرق المُدخَلات الأطول وقتًا وقدرة حوسبية أكبر لمعالجتها، وتتقاضى كثير من واجهات برمجة التطبيقات رسومًا بحسب عدد الرموز. وقد يجعل السياق غير ذي الصلة تحديد الأدلة المفيدة أصعب. وليس أفضل طلب بالضرورة هو الأكثر امتلاءً؛ بل هو الذي يحتوي على قدر كافٍ من المادة ذات الصلة مع ترك مساحة للاستجابة المطلوبة.
النافذة الأكبر ليست ذاكرة أفضل
تقيس نافذة السياق السعة، لا الذاكرة الدائمة أو المعرفة أو الذكاء. فقد يتمكن النموذج من قبول مقطع ما دون أن يستخدم كل جزء منه بالكفاءة نفسها.
أظهرت دراسات مضبوطة للسياق الطويل أن أداء النماذج قد يكون أفضل عندما تكون المعلومات ذات الصلة قريبة من البداية أو النهاية، مقارنةً بوجود المعلومات نفسها مدفونة في المنتصف. وتختلف النتائج باختلاف النموذج والمهمة، لكن الدرس العملي ثابت: الحد الأقصى المُعلَن يوضح ما يمكن أن يتسع له السياق، لا ما سيتذكره النموذج أو يستدل عليه بشكل مثالي.
ولا يغيّر التخزين المؤقت للمطالبات هذا الفرق. فقد يقلل العمل أو التكلفة عند إعادة استخدام بادئة، لكن المادة المخزنة مؤقتًا قد تظل محسوبة ضمن سعة سياق النموذج.
وتختلف نافذة السياق أيضًا عن حد المعرفة. فن نافذة السياق تحد ما هو متاح أثناء هذه الاستجابة. أما حد المعرفة فيصف الحد الزمني للمعلومات التي تعلّمها النموذج أثناء التدريب.
إلى أين بعد ذلك؟
استخدم ما الرمز في الذكاء الاصطناعي؟ لفهم كيفية احتساب النص ضمن الحد. واستخدم ما نموذج LLM؟ لوضع نافذة السياق ضمن عملية النموذج التي تُولّد رمزًا واحدًا في كل مرة. وللتعرّف على الحد الذي يُخلَط غالبًا مع سعة السياق، اقرأ نافذة السياق مقابل حد المعرفة.