ضغط النص المسترجع هو تنقيح المادة بعد جلبها بحسب سؤال المستخدم. يصف LangChain ذلك باستخراج المعلومات ذات الصلة، أو استبعاد وثائق كاملة. [1] لكن قصر النص وحده لا يثبت أن الدليل المطلوب بقي فيه. نقترح فحص ما يحتاجه الجواب قبل اعتماد النسخة المختصرة.
الخلاصة السريعة
قارن النص الذي وصل بعد الضغط بالأصل وبالسؤال، واحتفظ بالشروط والاستثناءات التي تغير الجواب؛ إذا نقص الدليل، أعد الجزء اللازم أو صرح بالنقص.
- حدد ما يلزم للسؤال؛ الضغط السياقي قد ينقح محتوى الوثيقة أو يستبعدها كاملة، وليس مجرد تصغير ملف التخزين. [1]
- أبق الشرط الذي يقيد المعلومة، ولو كان أقل شبها بكلمات السؤال؛ حذف الاستثناء قد يبدل الجواب.
- راجع النسخة التي وصلت فعلا مع الأصل؛ مادة لم يجلبها الاسترجاع الأول لا تظهر بمجرد تنقيح المواد المتاحة.
- عند نقص الدليل أعد الجزء الضروري أو بين ما لا تعرفه؛ طول أقل أو جواب سلس لا يثبت حفظ المعنى.
ما الذي نضغطه ولأي سؤال؟
نفترض ورقة تعليمات كتبناها لصندوق بطاقات، تحتوي وصف ألوان الغطاء، وترتيب البطاقات، وقاعدة توزيعها. السؤال هو: «هل يمكن توزيع البطاقات الآن؟». نحتاج قاعدة التوزيع وما يقيدها، ولا نحتاج غالبا وصف الزخرفة. المثال نص تخيلي، ولم نشغل ضاغطا أو مساعدا عليه.
هذا اختيار يتعلق بما سيقرأه المجيب. حفظ الورقة في ملف أصغر قد يغير حجم التخزين دون أن يغير عباراتها؛ أما حذف فقرات من المادة المرسلة فيغير المعلومات المتاحة للجواب. لذلك نكتب السؤال بجانب النسخة المختصرة، حتى لا نراجع اختصارا عاما وكأنه أعد لهذا السؤال المحدد.
أي عبارة قصيرة قد تغير القرار؟
في أصلنا الافتراضي: «توزع البطاقات بعد اكتمال الفرز، إلا إذا بقيت بطاقة بلا رمز؛ عندها يؤجل التوزيع حتى تعيين رمزها». ونفترض أن الفرز اكتمل وبقيت بطاقة بلا رمز. نسخة تقول «توزع البطاقات بعد اكتمال الفرز» وحدها ستسمح باستنتاج معاكس للقاعدة الكاملة.
لا نعد الجملة الأخيرة حشوا لأنها لا تكرر كلمة التوزيع كثيرا. هي تحدد الاستثناء والفعل المطلوب عند تحققه. نحتفظ بها مع القاعدة، ونوضح في جواب المثال أن التوزيع يؤجل. لا نضع شرطا جديدا عن لون الغطاء؛ ليس في النص ما يجعل اللون سببا للتأجيل.
هل اكتمل الدليل قبل التنقيح وبعده؟
يصف المصدر ضاغطا يعمل على الوثائق التي أعادها مسترجع أساسي، ومن أمثلته استخراج عبارات مرتبطة بالسؤال. [1] نميز في مراجعتنا بين فقرة لم تجلب أصلا وفقرة جلبت ثم حذفت: في الحالة الأولى نراجع مسار الاسترجاع، وفي الثانية نقارن المادة قبل الضغط وبعده.
نقترح الاحتفاظ بمرجع الورقة وموضع الفقرة إلى جانب النص المختصر. إذا كانت حالة البطاقة بلا رمز في ملاحظة أخرى لم تصل، فالقاعدة وحدها لا تخبرنا هل الاستثناء واقع الآن. نسأل عن الحالة أو نجلب الملاحظة المناسبة؛ لا نخترعها من جودة الصياغة أو اسم الصندوق.
ما الذي نفعله عندما يسقط جزء لازم؟
أعد الاستثناء كاملا، أو أرسل الفقرة المناسبة من الأصل إذا كان اختصارها يلتبس. ثم راجع الجواب على المادة التي وصلت فعلا: هل يقول إن الفرز كاف وحده، أم يربط القرار أيضا بحالة الرمز؟ نحدد النقص الذي أصلحناه بدلا من إعلان سلامة كل الوثائق.
وإذا تعذر الوصول إلى الحالة الحالية، يمكن القول إن التوزيع مسموح بعد الفرز بشرط عدم بقاء بطاقة بلا رمز، وإن تحقق الشرط غير معلوم هنا. هذه صياغة مقترحة للمثال وليست نتيجة اختبار. لا نحول تقليل عدد الكلمات إلى مقياس مضمون لحفظ الدليل أو صحة الإجابة.
المصادر ومتابعة القراءة
- LangChain: Improving Document Retrieval with Contextual Compression (يفتح في نافذة جديدة)langchain.com
أُعدّ هذا المقال بصياغة عربية أصلية بالاستناد إلى المصادر أعلاه، وهو مدخل تمهيدي إلى الموضوع. اقرأ منهجية المحتوى وحدوده.
