
البحث الوكيل من ميسترال: استبدال RAG التقليدي بحلقة تفاعلية من 5 أدوات لتصفح المستندات
أطلقت شركة Mistral AI رسميًا نظام البحث الوكيل (Agentic Search) ومجموعة الأدوات المفتوحة Mistral Search Toolkit، في خطوة تُعيد رسم معالم تقنيات توليد الاسترجاع المعزز (Retrieval-Augmented Generation / RAG). فبدلاً من إجبار النماذج اللغوية على استنتاج الإجابات من مقتطفات نصية ثابتة ومحدودة ($top-k$ chunks)، يُزود النظام الجديد النموذج بخمس أدوات فحص نشطة ومباشرة مستوحاة من أنظمة الملفات: search وopen وnavigate وread وgrep.
تنقل هذه المعمارية عملية استرجاع المستندات من مجرد مطابقة سلبية لمتجهات التشابه الدلالي، إلى حلقة تصفح استقصائية موجهة بالأهداف داخل المستندات المعقدة. وعلى صعيد الاختبارات المؤسسية، حقق هذا الانتقال قفزة نوعية في دقة معيار FinanceBench من 26.7% إلى 86.0% (بزيادة +59.3 نقطة مئوية)، مع خفض استهلاك الرموز (Tokens) بنسبة 33.7% وتقليص زمن استجابة الاستعلامات (p90) بنسبة 39.6%.
لماذا تفشل أنظمة RAG التقليدية في المستندات المؤسسية المعقدة؟
اعتمدت تطبيقات RAG التقليدية على مدى السنوات الماضية على مسار ثابت: تقطيع المستندات إلى أجزاء صغيرة ذات طول محدد (512 رمزًا مثلاً)، وتوليد متجهات كثيفة (Embeddings) لهذه الأجزاء، ثم إجراء بحث تقريبي عن أقرب المتجهات لمتجه الاستعلام، وحشو تلك الأجزاء المعزولة داخل نافذة سياق النموذج (Context Window).
ورغم كفاءة هذه الطريقة في الأسئلة البسيطة واسترجاع الفقرات المباشرة، إلا أنها تعاني من انهيار هيكلي عند التعامل مع المستندات المؤسسية الكبيرة مثل تقارير الإفصاح المالي (SEC 10-K)، والكتيبات الهندسية، والعقود القانونية، والجداول الممسوحة ضوئيًا:
- الاسترجاع دون استدلال (Retrieval Without Reasoning): يُجبر النموذج على الإجابة استنادًا إلى المقتطفات المختارة في الخطوة الأولى فقط. فإذا أغفلت عملية البحث الأولية حاشية سفلية مهمة أو جلبت جزءًا مجتزأً من جدول مالي، لا يملك النموذج أي آلية للتوقف والتحقق أو طلب قراءة بقية الجدول.
- معضلة حدود التقطيع (The Chunking Boundary Problem): لا تلتزم الجداول المحاسبية والبنود التعاقدية بحدود عدد الرموز العشوائي. فتقطيع تقرير مالي من 10 صفحات إلى أجزاء ذات 500 رمز يؤدي إلى فصل رؤوس الأعمدة عن خلايا الأرقام، وتجريد الإيضاحات المتممة من سياقها المالي الأصلي.
- انعدام التصفح التكراري والتحقق (No Iterative Exploration): تتطلب الأسئلة المالية المعقدة (مثل مطابقة بنود الإنفاق الحكومي عبر سنوات مختلفة) العثور على تقارير فصلية جزئية، ثم تتبع الإحالات إلى التقارير السنوية الشاملة، ومقارنة الجداول عبر عدة مستندات. لا تستطيع خوارزميات البحث المتجهي التقليدية تنفيذ هذا الاستدلال متعدد الخطوات.
مسار RAG التقليدي أحادي التمرير:
[استعلام المستخدم] ──► [توليد المتجهات] ──► [جلب أفضل K مقتطف] ──► [حشو السياق] ──► [هلوسة أو خطأ في الأرقام]
(بلا حلقة تحقق) (جداول مقطوعة وهوامش ضائعة) (سياق جامد)
حلقة البحث الوكيل (AGENTIC SEARCH):
[استعلام المستخدم] ──► [search()] ──► [open(doc_id)] ──► [navigate(section)] ──► [grep(regex)] ──► [read(bounds)]
▲ │
└────────────────────── حلقة تدقيق واستقصاء تكرارية ───────────────────────────┘
أدوات الفحص الخمس: معمارية تشبه نظام الملفات
تستبدل ميسترال نظام التقطيع الجامد بخمس أدوات برمجية واضحة ومستقلة، تُعامل مستودع المستندات كأنه نظام ملفات تفاعلي يستطيع الوكيل تصفحه وفحصه بدقة:
| الأداة | الدالة البرمجية | الوظيفة الهيكلية |
|---|---|---|
search |
search(query, filters) |
تنفيذ بحث هجين دلالي (Vector) ونصي (BM25) عبر فهرس المستودع لتحديد المستندات المرشحة. |
open |
open(doc_id) |
فتح وعاء المستند (ملف PDF، تقرير مالي، جدول ممتد، أو docx) واستعراض شجرة العناوين والهيكل الداخلي. |
navigate |
navigate(doc_id, target) |
التنقل المباشر إلى جدول محدد، أو نطاق صفحات، أو فهرس المحتويات، أو قسم فرعي داخل المستند. |
read |
read(doc_id, start_page, end_page) |
قراءة متصلة وكاملة للمنطقة النصية أو الجدول المحدد ضمن حدوده الهيكلية الصحيحة دون تقطيع. |
grep |
grep(doc_id, pattern) |
مطابقة أنماط وتعبيرات نمطية (Regex) أو كلمات محددة داخل المستند المفتوح للعثور على الأرقام الدقيقة أو المعرفات. |
مقارنة مسار الاستعلام العملي
عند محاولة استخراج إجمالي نفقات الدفاع الوطني لعام 1953 من نشرات الخزانة الأمريكية التاريخية:
- باستخدام RAG التقليدي: يُنفذ النموذج استعلام
search("national defense expenditures monthly 1953")، فيحصل على 10 مقتطفات مبعثرة تغطي الأشهر من يناير إلى يونيو فقط. وبسبب غياب أدوات التوسع، يفشل النموذج أو يخمن النصف المتبقي من العام. - باستخدام Agentic Search:
- يُنفذ النموذج بحث
search()الأولي ليكتشف نقص الأشهر الأخيرة. - يُجري بحثًا مستهدفًا:
search("1953 November December 1954 to date"). - يحدد الفهرس ملف
treasury_bulletin_1954_02.pdfالصفحة 15 (الجدول 3 الذي يحتوي على ملخص أشهر العام كاملة). - يستدعي النموذج دالة
read()للصفحة المحددة، ويقرأ الجدول كاملاً بسياقه المحاسبي، ويحسب المجموع الدقيق (44,463 مليون دولار) بإسناد موثق ومثبت.
- يُنفذ النموذج بحث
النتائج القياسية والتجارب المعيارية
اختبرت ميسترال معمارية Agentic Search على مجموعتي اختبار مؤسسيتين معقدتين باستخدام الإعدادات الافتراضية ودون أي ضبط دقيق مسبق للنماذج (Out-of-the-box)، بمشاركة نموذجي Mistral Medium 3.5 وZ.ai GLM-5.2:
دقة معيار FINANCEBENCH (368 ملف إفصاح مالي، 150 سؤالاً تحليلياً):
RAG التقليدي أحادي التمرير [█████▌ ] 26.7%
حلقة البحث التكراري فقط [███████████████▌ ] 74.0% (+47.3 نقطة مئوية)
حلقة Agentic Search الكاملة [█████████████████ ] 86.0% (+59.3 نقطة مئوية إجمالاً)
دقة معيار OFFICEQA PRO (696 نشرة خزانة، ~89,000 صفحة ممسوحة ضوئياً):
RAG التقليدي أحادي التمرير [█▌ ] 6.3%
إطار Claude Code [████████ ] 41.4%
إطار Mistral Agentic [██████████▌ ] 51.9% (+45.6 نقطة مئوية)
1. معيار FinanceBench (368 ملف إفصاح مالي من هيئة SEC)
يختبر هذا المعيار الإجابة على الأسئلة المالية عبر ملفات 10-K و10-Q بمتوسط 147 صفحة لكل ملف (~53,900 صفحة إجمالاً):
- حلقة البحث التكراري مقابل RAG التقليدي: مجرد تحويل البحث إلى حلقة تكرارية رفع الدقة بمقدار +47.3 نقطة مئوية لنموذج Mistral Medium 3.5 و**+52.6 نقطة مئوية** لنموذج GLM-5.2 (تحسن بنحو 3 أضعاف).
- إضافة أدوات التصفح (
openوnavigateوreadوgrep): أضافت قفزة نوعية أخرى بلغت +8.7 نقطة مئوية لـ Mistral Medium 3.5، لترتفع الدقة الإجمالية إلى 86.0%.
2. معيار OfficeQA Pro (696 نشرة حكومية ممسوحة ضوئيًا)
معيار حسابي صارم يعتمد على وثائق تاريخية غير منسقة وجداول معقدة:
- حقق RAG التقليدي نسبة متدنية بلغت 6.3% فقط بسبب تفكك الجداول.
- قفزت حلقة Agentic Search الكاملة بالنتيجة إلى 51.9% لنموذج GLM-5.2 (+45.6 نقطة مئوية) و+27.1 نقطة لـ Mistral Medium 3.5.
- وعند تثبيت النموذج الأساسي (GLM-5.2)، تفوق إطار عمل ميسترال (51.9%) على إطار Claude Code (41.4%) بفارق +10.5 نقطة مئوية.
اقتصاديات الرموز وسرعة المعالجة (Latency)
تثير حلقات الوكلاء عادةً مخاوف من التضخم المفرط في استهلاك الرموز (Tokens) وزيادة زمن المعالجة، لكن البيانات الفعلية لمنظومة ميسترال أثبتت العكس:
┌────────────────────────────────────────┐
│ مكاسب الكفاءة وزمن الاستجابة │
├────────────────────────────────────────┤
│ • انخفاض زمن الاستجابة p90: من 255s إلى 154s (-39.6%)
│ • انخفاض متوسط زمن الاستجابة: من 108s إلى 71s (-34.3%)
│ • خفض استهلاك الرموز (GLM-5.2): بنسبة 33.7%
│ • خفض استهلاك الرموز (MM 3.5): بنسبة 23.9%
└────────────────────────────────────────┘
- القضاء على التكرار العشوائي للبحث (Search Thrashing): عندما يفتقر الوكيل لأدوات التصفح، فإنه يحاول تعويض نقص السياق بإطلاق استعلامات بحث عريضة ومتكررة، مما يجلب عشرات المقتطفات الضخمة ويُغرق نافذة السياق.
- الفحص الجراحي الدقيق: باستخدام أداتي
openوnavigate، يُجري الوكيل بحثًا أوليًا واحدًا، ثم يتوجه مباشرة إلى الجدول المعني ويقرأ فقط المساحة المطلوبة بدقة، مما خفض الرموز المستهلكة بنسبة 33.7%. - تسريع الإجابة: انخفض زمن الاستجابة للشريحة 90 (p90 Latency) في FinanceBench من 255 ثانية إلى 154 ثانية (تحسن بنسبة 39.6%).
الهيكل التقني: محرك Vespa ومجموعة Search Toolkit
أتاحت ميسترال هذه البنية التحتية عبر حزمة Mistral Search Toolkit والمستودع مفتوح المصدر search-starter-app:
- محرك التخزين الهجين (Vespa): تعتمد المعمارية افتراضيًا على محرك Vespa لإدارة الفهارس الموزعة، حيث يجمع بين متجهات التضمين الكثيفة، وفهارس النصوص المعكوسة (BM25)، والتصفية الهيكلية للمستندات.
- استقلالية النماذج (Model-Agnostic): لا تتطلب أدوات الفحص الخمس أي تدريب مخصص أو أوزان مغلقة؛ إذ تعتمد على استدعاء الدوال القياسي (Tool Calling / Function Calling)، مما يعني أن جودة الاسترجاع ترتقي تلقائيًا كلما تطورت قدرات الاستدلال لدى النموذج اللغوي المستخدم دون تعديل خط الفهرسة.
- خيارات التكامل: تتوفر المنظومة للمطورين عبر مكتبات SDK البرمجية للتكامل المباشر في الأنظمة الخاصة، كما دُمجت افتراضيًا في منصتي Mistral Studio وMistral Vibe.
كيف تبني حلقة استرجاع وكيلة برمجياً؟
يوضح المثال التالي بلغة بايثون كيفية تهيئة أدوات الفحص الخمس وربطها بنموذج ميسترال:
import os
from mistralai import Mistral
client = Mistral(api_key=os.getenv("MISTRAL_API_KEY"))
# تعريف أدوات البحث الوكيل الخمس
tools = [
{
"type": "function",
"function": {
"name": "search",
"description": "البحث في الفهرس عن مقاطع ومستندات مرشحة.",
"parameters": {
"type": "object",
"properties": {
"query": {"type": "string", "description": "نص البحث الدلالي أو الكلمات المفتاحية"},
"filter_year": {"type": "integer", "description": "تصفية حسب السنة المالية"}
},
"required": ["query"]
}
}
},
{
"type": "function",
"function": {
"name": "open_doc",
"description": "فتح وعاء المستند واستعراض شجرته الهيكلية.",
"parameters": {
"type": "object",
"properties": {
"doc_id": {"type": "string", "description": "معرف المستند الفريد"}
},
"required": ["doc_id"]
}
}
},
{
"type": "function",
"function": {
"name": "navigate_section",
"description": "التنقل إلى قسم محدد أو جدول أو نطاق صفحات.",
"parameters": {
"type": "object",
"properties": {
"doc_id": {"type": "string"},
"section_title": {"type": "string"}
},
"required": ["doc_id", "section_title"]
}
}
},
{
"type": "function",
"function": {
"name": "read_viewport",
"description": "قراءة النص والجداول بدقة داخل الحدود المحددة.",
"parameters": {
"type": "object",
"properties": {
"doc_id": {"type": "string"},
"start_page": {"type": "integer"},
"end_page": {"type": "integer"}
},
"required": ["doc_id", "start_page", "end_page"]
}
}
},
{
"type": "function",
"function": {
"name": "grep_pattern",
"description": "مطابقة نصوص وتعبيرات نمطية (Regex) داخل المستند المفتوح.",
"parameters": {
"type": "object",
"properties": {
"doc_id": {"type": "string"},
"pattern": {"type": "string"}
},
"required": ["doc_id", "pattern"]
}
}
}
]
# إطلاق الاستعلام الوكيل
messages = [
{
"role": "user",
"content": "تحقق من نسبة الضرائب الفعلية لشركة أبل في الربع الثالث من تقرير 10-Q الأخير مع ذكر الحاشية المرجعية."
}
]
response = client.chat.complete(
model="mistral-medium-latest",
messages=messages,
tools=tools,
tool_choice="auto"
)
print(response.choices[0].message)
متى تستخدم Agentic Search ومتى تكتفي بـ RAG التقليدي؟
| طبيعة عبء العمل | المعمارية الموصى بها | المبرر الهندسي |
|---|---|---|
| الأسئلة الشائعة والوثائق القصيرة | RAG التقليدي أحادي التمرير | متطلبات زمن استجابة منخفض جداً (<300ms) والإجابة محتواة بالكامل في فقرة واحدة. |
| محركات الإكمال التلقائي فائقة الكثافة | فهارس BM25 / ANN المتجهية | استعلامات تتجاوز 1,000 طلب بالثانية تجعل تكلفة الحلقات التكرارية غير مجدية. |
| تقارير الإفصاح المالي 10-K و 10-Q | البحث الوكيل (Agentic Search) | تقاطع الجداول المتعددة والحواشي المحاسبية يتطلب فحصًا وتحققًا متعدد الخطوات. |
| العقود والاتفاقيات القانونية المعقدة | البحث الوكيل (Agentic Search) | ترابط البنود والتعريفات والإحالات المتبادلة ينهار أمام التقطيع الجامد. |
| الكتيبات الهندسية والمخططات الممسوحة | البحث الوكيل (Agentic Search) | بنيات الجداول والرسومات تتطلب قراءة بصرية ومكانية دقيقة لنطاق محدد. |
دلالات التحول: نهاية عصر التقطيع العشوائي للنصوص
يمثل إعلان ميسترال تحولاً جذرياً في هندسة تطبيقات الذكاء الاصطناعي: لم تعد جودة استرجاع المعلومات مقيدة بخوارزميات تقطيع النصوص، بل بقدرات الاستدلال لدى الوكيل الذكي.
فبعد سنوات من محاولة معالجة إخفاقات RAG بحيل تقطيع معقدة (Parent-Child chunking وSliding Windows)، يُثبت البحث الوكيل أن تحويل الاسترجاع إلى مسألة استخدام أدوات تفاعلية يُلغي الحاجة إلى تلك القيود. ومع انتقال المؤسسات إلى أتمتة المهام الحساسة في القطاعات المالية والقانونية والتقنية، ستصبح أطر التنقل النشطة المعيار الأساسي لاستخبارات المستندات.
تغطيات ذات صلة
- المواصفة القياسية لبروتوكول MCP وخارطة طريق المطورين
- إطلاق حزمة وكلاء Claude رسميًا: Computer Use وSkills API وFiles API
- دليل الهجرة من واجهات OpenAI المهجورة إلى Agents SDK
- التحليل المعماري لنموذج Qwen3.8-Flash-Next