تقنية

التقطيع حسب العناوين: الحفاظ على بنية الوثيقة

عنوان يوم الرسم يتفرع إلى قسمين لكل منهما عنوان الأدوات وفقرة مختلفة
رسم يوضح انتماء فقرتين ذواتي عنوان متكرر إلى قسمين مختلفين.

التقطيع حسب العناوين يبدأ بتحديد الأقسام التي ينتمي إليها النص. في كتيبنا الافتراضي يتكرر عنوان «الأدوات» تحت الرسم بالقلم والرسم بالفرشاة. نريد حفظ مكان كل فقرة في هذه البنية، كي لا ينتقل وصف الفرشاة إلى جواب عن القلم. وجود العناوين لا يضمن وحده اكتمال المادة التي يحتاجها السؤال.

الخلاصة السريعة

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

  • ينفذ مقسم Markdown في LangChain تتبع مستويات العناوين المحددة وحفظ معلوماتها مع النص؛ ليس مجرد عد كلمات ثابت. [1]
  • احتفظ بالقسم الأعلى عند تكرار عنوان فرعي، وراجع أن مسار العناوين يطابق الأصل.
  • افحص هل بقي العنوان في نص المقطع أم حفظ كمعلومة منفصلة، ثم تحقق مما يصل للنموذج فعلا. [1]
  • راجع طول القسم والشروط التي يحيل إليها؛ التقسيم عند عنوان لا يضمن سياقا كاملا أو حدا مناسبا لكل طلب.

أي حدود نختار من بنية النص؟

يتتبع تنفيذ MarkdownHeaderTextSplitter مستويات العناوين المحددة، ويحدث معلومات القسم عند الانتقال إلى عنوان مساو أو أعلى مستوى. هذا وصف للتنفيذ المقروء، لا قاعدة لجميع المقسمات. [1]

نتخيل كتيبا بعنوان «يوم الرسم»، وفيه قسم للرسم بالقلم وقسم للرسم بالفرشاة. تحت كل قسم عنوان «الأدوات»، ثم فقرة خاصة به. نختار هذه المستويات للبنية التعليمية. لا نقطع كلمة الأدوات أينما ظهرت في جملة؛ نميز العنوان في المستند عن كلمة عادية في الفقرة.

كيف نميز عنوانا فرعيا يتكرر؟

مسار الفقرة الأولى هو يوم الرسم، ثم الرسم بالقلم، ثم الأدوات. ومسار الثانية يستبدل القلم بالفرشاة. إذا حفظنا الاسم الأخير فقط، لم نعرف أي مجموعة أدوات تصف الفقرة. إبقاء المسار يعيننا على مراجعة هوية المقطع، ولا يضيف أدوات لم يذكرها الكتيب.

افترض أن السؤال عن أدوات الرسم بالقلم، بينما وصلت فقرة الفرشاة. راجع علاقة النص بالقسم قبل طلب صياغة أطول. وقد يكون الخطأ في العنوان المعد يدويا أو في استخراج المستند، لا في النموذج وحده. المثال من تأليفنا؛ لم نستخرج ملفا أو نقس نتائج المقسم هنا.

هل يظهر العنوان في النص الذي يصل؟

في التنفيذ الموثق، يوجد خيار لإزالة العناوين من محتوى المقطع مع تتبع معلوماتها، وخيار لإبقائها في المحتوى. فصل مكان الحفظ عن النص المقدم مهم عند فحص الطلب. [1]

اقترح أن تعرض لنفسك المقطع المعد للبحث والمادة التي ترسل للإجابة. قد يكون مسار «الرسم بالقلم» محفوظا، لكن الطلب يحتوي فقرة بلا مسار. افحص طريقة تمريره إذا كان ضروريا للسؤال. ولا تعالج ذلك بإضافة عنوان من التخمين؛ ارجع إلى البنية الصحيحة في الأصل.

أين تنتهي فائدة العنوان؟

إذا امتد قسم الأدوات صفحات، فحدوده البنيوية لا تقيس طوله بالوحدات التي تسمح بها الأداة. قد تحتاج تقسيمه أيضا، مع الحفاظ على مساره. وإذا قالت الفقرة «راجع التجهيز العام قبل البدء»، فالعنوان لا يحمل محتوى التجهيز العام تلقائيا؛ نحتاج الجزء الذي يبين الشرط المطلوب.

للمراجعة المقترحة، اختر سؤالا عن كل فرع، وآخر يحتاج شرط التجهيز المشترك. تحقق من المقاطع التي وصلت ومن مصدر العبارات في الجواب. لا نستنتج أن كل عنوان يحدد موضوعا نقيا أو أن هذا الإعداد أفضل من غيره في موادك. نوضح علاقة البنية بحدود المقاطع، دون تقديم نتيجة اختبار أداء.

المصادر ومتابعة القراءة

  1. LangChain MarkdownHeaderTextSplitter implementation (يفتح في نافذة جديدة)raw.githubusercontent.com

أُعدّ هذا المقال بصياغة عربية أصلية بالاستناد إلى المصادر أعلاه، وهو مدخل تمهيدي إلى الموضوع. اقرأ منهجية المحتوى وحدوده.