تعلّمنا في مقال الدور وسلسلة التفكير كيف نضبط مَن يتكلّم وكيف يفكّر. هنا نعالج المشكلة الأصعب: كيف نجعل إجابة النموذج موثوقة؟
كل استراتيجية من الثلاث تعالج نوعًا مختلفًا من الفشل:
الاتّساق الذاتي
النموذج يعرف الطريق، لكنه يخطئ فيه أحيانًا. الحلّ: عدّة مسارات تفكير ثم تصويت.
RAG
النموذج لا يعرف مصادرك، أو معرفته قديمة. الحلّ: استرجاع المصادر ثم التوليد منها.
ReAct
المهمّة متعدّدة الخطوات ولا تُعرف مسبقًا. الحلّ: حلقة فكّر، ثم نفّذ، ثم لاحظ.
الاستراتيجية الأولى: الاتّساق الذاتي (Self-Consistency)#
جعلنا النموذج يفكّر خطوة بخطوة، لكن ماذا لو كانت خطواته نفسها خاطئة هذه المرة؟ التوليد احتمالي: قد يسلك مسارًا سليمًا مرة ومسارًا معطوبًا مرة أخرى.
الفكرة البسيطة العبقرية: لا تسأله مرة واحدة. اسأله عدّة مرات بمسارات مستقلّة، ثم خذ الإجابة الأكثر تكرارًا. الاستدلال الصحيح يميل إلى التقارب، أمّا الأخطاء فتتشتّت في اتجاهات مختلفة.
مثال: تسعير مشروع ترجمة#
عقد ترجمة من 40 ألف كلمة بسعر 0.08 دولار للكلمة. طلب العميل خصمًا بنسبة 10٪، ويتحمّل المكتب رسوم تحويل بنسبة 3٪ من صافي المبلغ بعد الخصم. كم يستلم المكتب فعليًّا؟
ثلاثة مسارات تتّفق
- القيمة: 40,000 × 0.08 = 3,200 دولار.
- بعد الخصم: 3,200 × 0.90 = 2,880 دولارًا.
- بعد رسوم التحويل: 2,880 × 0.97 = 2,793.60 دولارًا.
مساران يخطئان بطريقتين مختلفتين
- مسار طرح النسبتين معًا من الأصل: 3,200 × 0.87 = 2,784 دولارًا.
- مسار نسي رسوم التحويل: 2,880 دولارًا.
خطآهما مختلفان، فلا تتكوّن منهما أغلبية؛ وهذا بالضبط سبب نجاح التصويت.
لماذا يعمل؟ الحدس الإحصائي
للمسألة إجابة صحيحة واحدة، لكن طرق الخطأ لا نهائية. حين تولّد عدّة مسارات، تتّفق المسارات السليمة على الرقم نفسه بينما تتفرّق المعطوبة كلٌّ في اتجاه. الأغلبية إذن ليست «ديمقراطية»، بل كاشف تقارب. وقد أظهرت ورقة Wang وزملائه (2022) أن هذا يرفع الدقّة بفروق ملموسة على مقاييس الاستدلال الحسابي مقارنةً بمسار واحد.
الاستراتيجية الثانية: التوليد المعزّز بالاسترجاع (RAG)#
التصويت يُصلح الاستدلال، لكنه لا يُصلح الجهل. لو لم يكن النموذج يعرف المصطلح المعتمد في مؤسستك، فخمسة مسارات ستتّفق على الخطأ نفسه. الحلّ ليس أن «يتذكّر» أكثر، بل ألّا يعتمد على ذاكرته أصلًا: نُحضر له المصادر الصحيحة لحظة السؤال، ونلزمه بالإجابة منها وحدها. هذا هو RAG: استرجاع ثم توليد.
السؤال
«ما المقابل المعتمد لدينا لمصطلح indemnity؟ وما القاعدة المتّبعة؟»
تحويله إلى متّجه
يُمثَّل السؤال رقميًّا في فضاء المعنى، كما مُثّلت كل مقاطع المستندات من قبل.
البحث في الفهرس
تُقاس المسافة بين متّجه السؤال ومتّجهات المقاطع، وتُسترجع الأقرب معنًى لا الأكثر تطابقًا في الكلمات.
حقن المقاطع
تُوضع المقاطع المسترجعة في سياق الأمر مع تعليمات صريحة بالالتزام بها.
توليد بالمصادر
يجيب النموذج من المقاطع وحدها، ويذكر مصدر كل معلومة.
لنفترض أن قاعدة المعرفة تحوي خمسة مقاطع: مسرد المؤسسة المعتمد، ودليل الأسلوب، ومحضر اجتماع تسويق، وملاحظات المراجع اللغوي، وسياسة الإجازات. محرّك الاسترجاع الجيد يتجاهل مقطعَي التسويق والإجازات تمامًا، لأن الاسترجاع يقوم على القرب الدلالي لا على مطابقة الكلمات.
دون RAG: من ذاكرة النموذج
«indemnity تعني الضمان أو التعويض.» إجابة عامة تخلط بين مفهومين، ولا تستند إلى أي قاعدة معتمدة لديك.
مع RAG: من مصادرك
«المقابل المعتمد: التعويض، ويُفضَّل «شرط التعويض» إذا ورد عنوانًا لبند [المسرد، الإصدار 4]. لا يُترجم «ضمانًا» تجنّبًا للالتباس مع warranty؛ فالأول يعوّض ضررًا وقع، والثاني يضمن صفة أو أداءً [ملاحظات المراجع]. وعند وروده أول مرة يُذكر الأصل الإنجليزي بين قوسين [دليل الأسلوب، القسم 3.2].»
الاستراتيجية الثالثة: التفكير والتصرّف معًا (ReAct)#
RAG يجلب المصادر مرة واحدة قبل الإجابة. لكن ماذا لو لم يكن النموذج يعرف مسبقًا ما الذي يحتاج إلى البحث عنه؟ ماذا لو احتاج أن يبحث، فيقرأ، فيكتشف أنه يحتاج بحثًا آخر؟
هنا يأتي ReAct (Reasoning + Acting): يتناوب النموذج بين فكرة يخطّط بها، وفعل ينفّذه بأداة، وملاحظة يقرأ بها النتيجة، ثم يقرّر خطوته التالية. وهذا بالضبط تعريف الوكيل (Agent).
تتبّع الحلقة: مراجعة بند في عقد#
المهمّة: «راجع البند السابع في عقد العميل: هل مدّة الإخطار المذكورة تطابق سياستنا المعتمدة؟ وما المقابل الصحيح لمصطلحه؟»
فكرة
أحتاج أولًا إلى قراءة نص البند السابع، لا تخمينه.
فعل: قارئ المستندات
فتح العقد واستخراج البند السابع.
ملاحظة
البند ينصّ على إخطار مدّته 15 يومًا، ويستخدم مصطلح termination for convenience.
فكرة
أحتاج إلى سياسة المؤسسة لأعرف المدّة المعتمدة.
فعل: البحث في قاعدة المعرفة
استرجاع سياسة الإنهاء.
ملاحظة
السياسة تشترط إخطارًا لا يقل عن 30 يومًا.
فعل: البحث في المسرد
المقابل المعتمد: «الإنهاء للملاءمة».
النتيجة
البند مخالف للسياسة (15 يومًا مقابل 30)، مع المقابل المعتمد للمصطلح، ومسار كامل قابل للتدقيق.
الفرق الجوهري عن سلسلة التفكير: كل «ملاحظة» هنا تأتي من العالم الخارجي لا من داخل النموذج؛ فهو لا يخمّن مدّة الإخطار بل يقرؤها فعليًّا.
لماذا التناوب تحديدًا؟
لو فكّر فقط دون أدوات لظلّ حبيس معرفته القديمة وقد يهلوس. ولو نفّذ أفعالًا دون تفكير لتاه عند أول نتيجة غير متوقّعة. الجمع بينهما يعطي التآزر الذي وصفته ورقة Yao وزملائه: الأفكار تساعده على وضع الخطّة وتحديثها ومعالجة الاستثناءات، والأفعال تربطه بمصادر خارجية تصحّح مساره. والنتيجة أثر مقروء يمكنك تدقيقه خطوة خطوة.
متى تستخدم أيًّا منها؟ مصفوفة القرار#
القاعدة الأولى: شخِّص نوع الفشل أولًا، ثم اختر العلاج. الاستراتيجية الخاطئة تكلّفك مالًا وزمنًا بلا فائدة.
| الاستراتيجية | تعالج | استخدمها حين | لا تستخدمها حين | التكلفة |
|---|---|---|---|---|
| الاتّساق الذاتي | تذبذب الاستدلال | توجد إجابة واحدة قابلة للتحقّق: حساب، أو تصنيف، أو استخلاص بند | المهام الإبداعية أو المفتوحة | من 3 إلى 5 أضعاف |
| RAG | الجهل والهلوسة | يجب أن تستند الإجابة إلى مستنداتك: مسرد، أو سياسة، أو عقد | المهمّة لا تحتاج معرفة خارجية، كإعادة صياغة نص أمامك | استدعاء واحد مع فهرسة |
| ReAct | العجز عن التحقّق | المهمّة متعدّدة الخطوات وتحتاج إلى أدوات | المهمّة بسيطة أحادية الخطوة | بعدد الدورات |
الأقوى: أن تدمج الثلاث#
ليست بدائل متنافسة بل طبقات متكاملة. هكذا يبدو نظام مراجعة عقود احترافي:
الطبقة الأولى: RAG
ثبّت المعرفة: احقن المسرد المعتمد ودليل الأسلوب والسياسة في السياق، وألزم النموذج بذكر مصدر كل حكم.
الطبقة الثانية: ReAct
امنحه أدوات القراءة: البحث في العقد، وفتح السياسة، وحساب المدد. كل خطوة تُوثَّق في أثر قابل للتدقيق.
الطبقة الثالثة: الاتّساق الذاتي
على البنود الحرجة فقط (المبالغ والمدد والغرامات): كرّر الاستدلال ثلاث مرات، وإن اختلفت النتائج فارفعها إلى مراجعة بشرية.
هذه الاستراتيجيات لا تجعل النموذج «يفهم»، بل تجعل مخرجه قابلًا للتدقيق: التصويت يكشف عدم اليقين، وRAG يربط كل ادّعاء بمصدر، وReAct يترك أثرًا مقروءًا لكل خطوة. المسؤولية النهائية تبقى بشرية، لكن صارت لديك أدلّة لا انطباعات.
المعمل العملي: ابنِ الثلاث على Dify#
Playground وAI Studio ممتازتان لضبط الأمر الواحد، لكنهما لا تُظهران «خط الأنابيب». أمّا هنا فنحن في مستوى المعمارية: عُقد ومصادر وأدوات وحلقات. لذلك ننتقل إلى Dify، المنصّة مفتوحة المصدر لبناء تطبيقات النماذج بلوحة مرئية. المفاهيم نفسها تنتقل حرفيًّا إلى n8n أو LangGraph أو Flowise أو الكود الخام.
اختر التطبيق
أنشئ قاعدة المعرفة
من تبويب Knowledge ارفع المسرد ودليل الأسلوب (PDF أو Markdown أو TXT). تتولّى Dify التقطيع والتضمين والفهرسة.
اضبط التقطيع بوعي
مقطع أكبر يعني سياقًا أوفر ودقّة استرجاع أقل. للمسارد والبنود القصيرة اختر مقاطع صغيرة، وللمواد التفسيرية الطويلة اختر أكبر مع تداخل بسيط. هذا القرار وحده يحدّد نصف جودة نظامك.
أضف عقدة Knowledge Retrieval
في تطبيق Chatflow اسحب العقدة واربطها بقاعدتك، وابدأ بـ Top-K = 3 مع عتبة تشابه.
ألزم النموذج بالمصادر
في عقدة LLM اجعل السياق مخرج الاسترجاع، واكتب صراحةً: أجب من المقاطع فقط، واذكر المصدر، وقل «غير موجود» عند غياب الدليل.
اختبر الاسترجاع لا الإجابة وحدها
افحص أيّ المقاطع استُرجعت فعلًا. إن كانت خاطئة فالمشكلة في التقطيع أو الفهرسة، لا في صياغة الأمر.
أنشئ تطبيق Workflow
اختر نوع Workflow (أو Chatflow للمحادثة)، لتنفتح لوحة العُقد المرئية.
اسحب عقدة Agent واختر ReAct
من Agent Strategy اختر ReAct، وثبّتها من Marketplace إن لم تظهر. البديل Function Calling أدقّ وأسرع للمهام المحدّدة، لكن ReAct أوضح تعليميًّا لأنه يُظهر التفكير.
عرّف الدور والأدوات
اكتب تعليمات الوكيل بلغة طبيعية، واجعل قاعدة معرفتك أداة متاحة؛ عندئذ يقرّر الوكيل متى يبحث (وهذا ما يسمّى Agentic RAG).
افحص أثر الاستدلال
بعد التشغيل افتح السجلات: الأثر خطوة بخطوة (فكرة، ثم أداة، ثم ملاحظة) وعدد الدورات. هذا دليلك المهني عند مراجعة أي مخرج.
اضبط الحواجز
حدّد سقفًا للدورات (6 مثلًا)، وابدأ بأدوات القراءة فقط.
أنشئ ثلاثة فروع متوازية
من عقدة البداية اربط ثلاث عُقد LLM بالأمر نفسه والنموذج نفسه. تنفّذ Dify الفروع معًا فلا يتضاعف الزمن.
ارفع Temperature فوق الصفر
أهم خطوة وأكثرها إغفالًا: بـ Temperature = 0 تخرج المسارات متطابقة ويفقد التصويت معناه. اجعلها نحو 0.7.
ادمج المخرجات
أضف عقدة Variable Aggregator لتوحيد مخرجات الفروع في متغيّر واحد.
أضف عقدة الحَكَم
عقدة LLM أخيرة تقارن الإجابات: إن اتّفق اثنان فأكثر اعتمدت الرقم وذكرت عدد المتّفقين، وإن اختلفت جميعها كتبت: «يتطلّب مراجعة بشرية».
قارن الإجابات الثلاث المرفقة. - إن اتّفق اثنان فأكثر على رقم واحد فاعتمده، واذكر عدد المتّفقين. - إن اختلفت جميعها فاكتب: «يتطلّب مراجعة بشرية»، واذكر الإجابات الثلاث.
واجهات Dify تتطوّر بسرعة؛ إن اختلف اسم زرّ عمّا هنا فابحث عن وظيفته لا عن اسمه، وراجع التوثيق الرسمي.
اختبر فهمك#
اختبر فهمك
قال زميل: «سأستخدم الاتّساق الذاتي كي يعرف النموذج مصطلحاتنا المعتمدة». ما التشخيص الصحيح؟
إن كان النموذج لا يعرف المسرد، فستتّفق المسارات على الخطأ نفسه وتمنحه ثقة زائفة.
اختبر فهمك
كيف يعرف محرّك RAG أيّ المقاطع يسترجع؟
يُحوَّل كل مقطع إلى متّجه، ويُحوَّل السؤال كذلك، ثم تُسترجع الأقرب معنًى.
اختبر فهمك
ما الفرق الجوهري بين «الملاحظة» في ReAct و«الخطوة» في سلسلة التفكير؟
سلسلة التفكير تفكّر، وReAct يفكّر ويتحقّق.
اختبر فهمك
عميل يشكو من أن مراجعة العقود «تخترع مواد قانونية أحيانًا، وتحسب الغرامات خطأً أحيانًا أخرى». ما الخطة الأدقّ؟
هما عطلان مختلفان: هلوسة معرفية تعالَج بالاسترجاع، وتذبذب استدلالي يعالَج بالتصويت. وابدأ بالأبسط وقِس قبل إضافة طبقة.