كل المشاريع/UOH AI CHATBOT

نظرة عامة

أرادت University of Haripur (جامعة هاريبور) مساعدًا يجيب عن أسئلة الطلاب والموظّفين المتعلّقة بموادّها هي — الأدلّة التعريفية واللوائح والإعلانات والوثائق الأكاديمية — دون أن يضطرّ إنسانٌ إلى الإجابة عن السؤال نفسه مئة مرّة في الأسبوع. وكان المتطلّب الذي صاغ كلّ ما بعده أن يجيب من الوثائق، وأن يستطيع أن يقول من أين جاء الجواب.

فكانت الحصيلة خدمةً معزَّزةً بالاسترجاع بُنيت واجهةً برمجية لا تطبيقَ محادثة. تُرفع الوثائق وتُقسَّم وتُضمَّن وتُفهرَس؛ ويسترجع السؤالُ المقاطعَ التي تخصّه حقًّا، فيُركّب نموذجٌ لغويّ الجواب من تلك المقاطع وحدها، حاملًا معه مرجع المصدر. ويحيط بذلك ما يجعله قابلًا للتشغيل: ثماني عشرة نقطة نهاية لإدارة متن الوثائق، ومفتاحُ مشرفٍ على كلّ تعديل، ومحدِّدٌ لمعدّل الطلبات، ثمّ — وهذا غير معتاد — القدرةُ على سرد مقطعٍ بعينه وتحريره وحذفه، حتى يُصحَّح المقطع الرديء دون إعادة استيعاب الوثيقة كلّها.

بُني في نافذةٍ من أسبوع واحد في فبراير 2025، بالاشتراك مع مطوّرٍ ثانٍ، بطلبٍ من الجامعة.

التحدي

لمساعدِ استرجاعٍ يعمل فوق وثائق مؤسّسةٍ ثلاثُ مشكلاتٍ لا يُظهرها عرضٌ تجريبيّ أبدًا.

الجواب لا بدّ أن يكون قابلًا للتتبّع. فأن يُخبر روبوتُ محادثةٍ واثقٌ طالبًا بموعدٍ نهائيّ خاطئ لسداد الرسوم مشكلةٌ مؤسّسية حقيقية. ولا يكفي أن يكون النموذج مؤسَّسًا على الوثائق — بل يجب أن يحمل الجوابُ المرجعَ معه، ومعنى ذلك أن يبقى المرجع حيًّا عبر المسار كلّه: فالمقطع لا بدّ أن يتذكّر من أيّ وثيقةٍ ومن أيّ موضعٍ فيها جاء، ولا بدّ أن تكون تلك الذاكرة قائمةً بعدُ لحظةَ التوليد.

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

ومتون الوثائق تَبلى، وإعادةُ الاستيعاب أداةٌ فظّة. فلا ينبغي لفقرةٍ واحدة خاطئة أو عتيقة في دليلٍ تعريفيّ طويل أن تُوجب حذف فهرس الوثيقة كلّه وإعادة بنائه — لكنّ الجراحة على مستوى المقطع الواحد هي بعينها ما يجعله مسارُ RAG الساذج مستحيلًا، لأنّه يعامل الفهرس على أنّه يُكتب مرّةً واحدة.

تصميم النظام

كيف يعمل

01/04
01

الوثيقة تصير متنًا قابلًا للبحث

مسارُ الاستيعاب — والموضعان اللذان يأبى فيهما أن يفعل الخطأ.

  1. 1تُبصَم الوثيقة المرفوعة كاملةً وصفحةً صفحة، وتُردّ إن كان محتواها مفهرسًا سلفًا
  2. 2ويُستخرج النصّ كتلةً كتلة مع حفظ أرقام الصفحات، ثمّ يُطبَّع
  3. 3ويُقسَّم النصّ نوافذَ متداخلة تنتهي عند حدود الجُمَل
  4. 4ويُضمَّن كلُّ مقطع ويُكتب في المجموعة المتّجهية، مع إعادة محاولةٍ كي لا يترك عطلٌ عابر ثقبًا في الفهرس
  5. 5وتُسجَّل هويّة الوثيقة وعددُ مقاطعها وبصماتُها على الجانب العلائقيّ ليستدلّ عليها المشغّلون
02

السؤال يصير جوابًا مؤسَّسًا على الوثائق

مسارُ الطلب الواحد، وكيف يبقى المرجع حيًّا عبره.

  1. 1يُضمَّن السؤال ويُطابَق على المجموعة، مع إمكان قصره على وثيقةٍ واحدة
  2. 2وتُعاد المقاطع الخمسة الأعلى مطابقةً ببياناتها الوصفية، وتُجمَع مراجعها وتُنقّى من التكرار
  3. 3وتُجمَع المقاطع في كتلة سياقٍ تُسلَّم إلى النموذج مع موجّهٍ يحصره في ذلك السياق
  4. 4ويُركَّب الجواب بدرجة حرارةٍ منخفضة ويُعاد ومرجعُ المصدر مُلحقٌ به
03

المقطع الخاطئ يُصحَّح

القدرةُ التي لا يستطيع فهرسٌ يُكتب مرّةً واحدة أن يقدّمها.

  1. 1يسرد المشغّل مقاطع الوثيقة المعنيّة
  2. 2ويُحرَّر المقطع الخاطئ في مكانه أو يُحذف وحده
  3. 3ويبقى سائر فهرس الوثيقة دون مساس — بلا إعادة استيعاب
  4. 4وتدفع التسويةُ معجمَ التسميات المُعلَن في المخزن العلائقيّ إلى مقاطع الجانب المتّجهيّ
04

متن الوثائق يبقى قابلًا للإدارة

كيف يبقى تنظيم متن الوثائق عملًا تشغيليًّا لا عملًا هندسيًّا.

  1. 1كلُّ استدعاءٍ يُعدِّل يحمل مفتاح المشرف، ويُتحقَّق منه قبل أن يُكتب شيء
  2. 2وتُدار الوثائق والتصنيفات والبيانات الوصفية للمقاطع عبر سطح الواجهة البرمجية نفسه
  3. 3ويجلس محدِّدُ معدّلٍ متدحرج للطلبات في الدقيقة أمام مسار الاستعلام فلا ينفلت حجم الطلبات
  4. 4ويكشف التوثيقُ التفاعليّ للواجهة البرمجية أداةَ التخويل، فيصير السطح صالحًا للاستعمال دون عميلٍ منفصل

أبرز الميزات

  • إجاباتٌ مؤسَّسة على الوثائق — يُركّبها النموذج من المقاطع المسترجَعة وحدها، بدرجة حرارةٍ منخفضة عن قصد
  • مراجعُ المصدر محمولةٌ من أوّل المسار إلى آخره، مُنقّاةٌ من التكرار ومُلحقةٌ بالجواب حتى يمكن التحقّق منه
  • ثماني عشرة نقطة نهاية موزّعة على سبع مجموعات مسارات — الرفع، والسرد، وإنشاء المقاطع وقراءتها وتحديثها وحذفها، والتصنيفات، والبيانات الوصفية، والتسوية، والاستعلام
  • تحريرٌ وحذفٌ على مستوى المقطع الواحد، فيصير إصلاحُ المقطع الخاطئ استدعاءً واحدًا بدل إعادة استيعابٍ كاملة
  • استيعابٌ محصَّنٌ من التكرار — بصماتُ محتوًى للملفّ كلّه ولكلّ صفحة، تحت قيد تفرّد
  • تقطيعٌ متداخل يراعي حدود الجُمَل، مع حفظ أرقام الصفحات عبر استخراجٍ مُهيكل
  • تصميمُ مخزنَين — مجموعةٌ متّجهية للاسترجاع، ومخزنٌ علائقيّ للبيانات الوصفية التشغيلية — مع نقاط نهايةٍ للتسوية تُعيد الجانب المتّجهيّ إلى موافقة التسميات التي يُعلنها المخزن العلائقيّ
  • مفتاحُ مشرفٍ على كلّ تعديل، ومحدِّدُ معدّلٍ متدحرج للطلبات في الدقيقة، وأداةُ التخويل ظاهرةٌ في التوثيق التفاعليّ للواجهة البرمجية نفسها

Outcomes

  • سلّمتُ للجامعة مساعدَ استرجاعٍ عاملًا في بناءٍ استغرق أسبوعًا واحدًا، واجهةً برمجية لا صفحةَ محادثةٍ واحدة، حتى يمكن تضمينه في أيّ موضع
  • وجعلتُ الإجابات قابلةً للتحقّق لا مؤسَّسةً على الوثائق فحسب — فمرجعُ المصدر يبقى حيًّا عبر الاستيعاب والاسترجاع والتوليد، ويعود ملتصقًا بالجواب
  • وجعلتُ متن الوثائق قابلًا للصيانة: فالمقطع الواحد يُسرد ويُصحَّح ويُزال دون إعادة استيعاب وثيقته
  • وجعلتُ إعادة الرفع آمنةً بالتصميم — فبصمُ المحتوى تحت قيد تفرّد يعني أنّ الوثيقة الواحدة لا يمكن أن تُفهرَس مرّتين
  • وفصلتُ تخزين الاسترجاع عن التخزين التشغيليّ كي لا يؤدّي أحدهما عمل الآخر أداءً رديئًا، وشحنتُ معه نقاط نهايةٍ للتسوية تعالج ما يستلزمه ذلك التصميم من انحراف
  • ووضعتُ مفتاح مشرفٍ على كلّ تعديل، ومحدِّدَ معدّلٍ متدحرج أمام مسار الاستعلام، وأظهرتُ أداةَ التخويل في التوثيق التفاعليّ للواجهة البرمجية نفسها

أعمال أخرى

MVP100Hours preview
منصّة نموّ بالذكاء الاصطناعي

MVP100Hours

منصّة مدعومة بالذكاء الاصطناعي تمتدّ من العميل المحتمل حتى إتمام الصفقة — من رصد صامت للزوّار إلى تواصل صوتي ذاتي التشغيل بالذكاء الاصطناعي

عرض المشروع