الكتابات/blog/2026/06
Blog25 يونيو 2026·6 دقيقة

Mistral OCR 4: دليل المطور لذكاء المستندات

بناء خطوط معالجة ذكية للمستندات باستخدام Mistral OCR 4. يشمل الصناديق المحيطة وتصنيف الكتل ودرجات الثقة والإخراج المنظم JSON والاستضافة الذاتية.

أصدرت شركة Mistral AI النسخة الرابعة من محرك التعرف الضوئي على النصوص (OCR 4) في 24 يونيو 2026، لتحوّل محرك استخراج المستندات إلى منصة متكاملة لذكاء المستندات. المستجدات الرئيسية هي الصناديق المحيطة (Bounding Boxes) وتصنيف الكتل المحددة الأنواع ودرجات الثقة على مستوى الكلمة — وهي ميزات تحوّل محرك استخراج النص الخام إلى خط بيانات منظمة جاهز للاسترجاع المعزز (RAG) وسير عمل الوكلاء الذكيين وعمليات الامتثال في القطاعات المنظّمة.

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

ما الجديد في OCR 4

كانت الإصدارات السابقة من Mistral OCR تستخرج النصوص والجداول فقط. تضيف النسخة الرابعة ثلاث ميزات هيكلية حاسمة لأنظمة الإنتاج:

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

تصنيف الكتل — يُقسَّم كل صفحة إلى 13 نوعاً من الكتل: text وtitle وlist وtable وimage وequation وcaption وcode وreferences وaside_text وheader وfooter وsignature. يستطيع التطبيق تصفيتها حسب النوع وتوجيه المعادلات نحو عارض LaTeX أو استخراج الجداول فقط للتصدير دون أي معالجة إضافية.

درجات الثقة المضمّنة — متاحة على مستوى الصفحة أو الكلمة. أي كلمة بدرجة ثقة أقل من الحد المقبول تُشغّل خطوة مراجعة بشرية بدلاً من انتشار الأخطاء بصمت في السجلات اللاحقة.

يدعم النموذج الآن 170 لغة موزعة على 10 مجموعات لغوية، بما فيها دعم متخصص للغة العربية وسائر النصوص الشرق أوسطية، مما يجعله خياراً قوياً لسير العمل متعددة اللغات في منطقة الشرق الأوسط وشمال أفريقيا.

الإعداد

ثبّت حزمة Python أو Node.js:

pip install mistralai
npm install @mistralai/mistralai

اضبط مفتاح API كمتغير بيئة:

export MISTRAL_API_KEY="your_key_here"

الاستخراج الأساسي

أبسط استدعاء يعالج ملف PDF عبر رابط URL ويُعيد نصاً منسقاً بصيغة Markdown:

Python

import os
from mistralai import Mistral
 
client = Mistral(api_key=os.environ["MISTRAL_API_KEY"])
 
result = client.ocr.process(
    model="mistral-ocr-latest",
    document={
        "type": "document_url",
        "document_url": "https://example.com/invoice.pdf"
    },
    table_format="markdown"
)
 
for page in result.pages:
    print(f"الصفحة {page.index}:\n{page.markdown}\n")

TypeScript

import Mistral from "@mistralai/mistralai";
 
const client = new Mistral({ apiKey: process.env.MISTRAL_API_KEY! });
 
const result = await client.ocr.process({
  model: "mistral-ocr-latest",
  document: {
    type: "document_url",
    documentUrl: "https://example.com/invoice.pdf"
  },
  tableFormat: "markdown"
});
 
for (const page of result.pages) {
  console.log(`الصفحة ${page.index}:\n${page.markdown}\n`);
}

لرفع ملف محلي، ارفعه أولاً عبر Files API ثم أشر إلى الرابط الذي يُعيده:

with open("contract.pdf", "rb") as f:
    upload = client.files.upload(
        file={"file_name": "contract.pdf", "content": f},
        purpose="ocr"
    )
 
result = client.ocr.process(
    model="mistral-ocr-latest",
    document={"type": "document_url", "document_url": upload.url}
)

استخراج الكتل المصنفة

فعّل include_blocks=True للحصول على قائمة منظمة من العناصر المصنفة لكل صفحة، يحمل كل منها صندوقه المحيط ومحتواه النصي:

result = client.ocr.process(
    model="mistral-ocr-latest",
    document={"type": "document_url", "document_url": url},
    include_blocks=True
)
 
for page in result.pages:
    for block in page.blocks:
        if block.type == "equation":
            print(f"معادلة عند {block.bounding_box}: {block.text}")
        elif block.type == "table":
            print(f"جدول عند {block.bounding_box}")
        elif block.type == "signature":
            print(f"توقيع مكتشف عند {block.bounding_box}")

إحداثيات الصندوق المحيط منسّقة نسبةً إلى أبعاد الصفحة، مما يجعلها قابلة للتطبيق على أي دقة عرض. هذا يُبسّط إضافة تظليل فوق المستند الأصلي في عارض PDF أو واجهة ويب.

درجات الثقة وبوابة المراجعة البشرية

تتيح درجات الثقة على مستوى الصفحة بناء خطوط مراجعة انتقائية. تصفية الصفحات ضعيفة الجودة قبل المعالجة اللاحقة:

result = client.ocr.process(
    model="mistral-ocr-latest",
    document={"type": "document_url", "document_url": url},
    confidence_scores_granularity="page"
)
 
THRESHOLD = 0.80
 
for page in result.pages:
    page_score = page.confidence_scores.get("overall", 1.0)
    if page_score < THRESHOLD:
        print(f"الصفحة {page.index} تحتاج مراجعة: ثقة {page_score:.2f}")

للعقود القانونية والسجلات الطبية والبيانات المالية، يضمن هذا النمط أن عمليات المسح منخفضة الجودة تُكتشف عند الاستقبال وليس بعد أشهر في عمليات التدقيق.

وضع Document AI: إخراج JSON منظم

يقبل وضع Document AI مخططاً مخصصاً من JSON ويُعيد بيانات منظمة مباشرةً، مما يلغي الحاجة إلى خطوة استخراج LLM منفصلة. هذا هو أسرع مسار من ملف PDF إلى سجل قاعدة بيانات:

invoice_schema = {
    "type": "object",
    "properties": {
        "vendor_name": {"type": "string"},
        "invoice_number": {"type": "string"},
        "total_amount": {"type": "number"},
        "currency": {"type": "string"},
        "line_items": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "description": {"type": "string"},
                    "quantity": {"type": "number"},
                    "unit_price": {"type": "number"}
                }
            }
        }
    }
}
 
result = client.ocr.process(
    model="mistral-ocr-latest",
    document={"type": "document_url", "document_url": invoice_url},
    document_annotation_schema=invoice_schema
)
 
data = result.document_annotation
print(f"فاتورة #{data['invoice_number']}: {data['total_amount']} {data['currency']}")

يكلّف وضع Document AI خمسة دولارات لكل ألف صفحة — دولار إضافي فوق OCR الأساسي — لكنه يلغي خطوة استدلال LLM كاملة في معظم خطوط الاستخراج المنظم، مما يجعله أوفر تكلفةً على مستوى خط الإنتاج.

الاستضافة الذاتية لسيادة البيانات

تتوفر OCR 4 في حاوية واحدة (single container) للمؤسسات التي لا يمكنها توجيه المستندات الحساسة إلى نقاط نهاية سحابية خارجية. هذا مهم بشكل خاص لـ:

  • المؤسسات المالية في منطقة الشرق الأوسط وشمال أفريقيا الخاضعة لمتطلبات إقامة البيانات بموجب الهيئة الوطنية لحماية المعطيات الشخصية (INPDP) في تونس أو نظام حماية البيانات الشخصية (PDPL) في المملكة العربية السعودية
  • المستشفيات والعيادات التي تعالج السجلات الطبية
  • المكاتب القانونية التي تتعامل مع وثائق سرية
  • الجهات الحكومية التي تشترط معالجة المستندات محلياً

تعمل الحاوية محلياً فلا يغادر أي محتوى للمستند شبكتك. تواصل مع فريق Mistral المؤسسي للحصول على صورة الحاوية وشروط الترخيص.

هيكل التسعير

الوضعAPI القياسيBatch API
OCR الأساسي4 دولار / ألف صفحة2 دولار / ألف صفحة
Document AI5 دولار / ألف صفحة2.50 دولار / ألف صفحة

لسير العمل عالية الحجم — رقمنة أرشيفات الوثائق ومعالجة آلاف الفواتير يومياً — يُقدّم Batch API بسعر دولارين لكل ألف صفحة ميزة تنافسية مقارنةً بمزودي OCR التقليديين.

مثال خط إنتاج كامل

خط معالجة فواتير مدمج يجمع فحص الثقة مع الاستخراج المنظم:

def process_invoice(pdf_url: str) -> dict | None:
    client = Mistral(api_key=os.environ["MISTRAL_API_KEY"])
 
    # المرحلة 1: فحص سريع لمستوى الثقة
    ocr = client.ocr.process(
        model="mistral-ocr-latest",
        document={"type": "document_url", "document_url": pdf_url},
        confidence_scores_granularity="page"
    )
 
    scores = [p.confidence_scores.get("overall", 1.0) for p in ocr.pages]
    avg_confidence = sum(scores) / len(scores)
 
    if avg_confidence < 0.75:
        queue_for_human_review(pdf_url)
        return None
 
    # المرحلة 2: استخراج منظم للمستندات عالية الجودة فقط
    result = client.ocr.process(
        model="mistral-ocr-latest",
        document={"type": "document_url", "document_url": pdf_url},
        document_annotation_schema=invoice_schema
    )
 
    return result.document_annotation

يُبقي هذا النهج ذو المرحلتين تكاليف Document AI منخفضة عبر تشغيل الاستخراج المنظم على المستندات عالية الجودة فقط، بينما تنتقل الوثائق ضعيفة الثقة إلى طابور المراجعة البشرية.

المعايير القياسية

تحقق OCR 4 نسبة فوز 72% في اختبارات التفضيل البشري العمياء عبر أكثر من 600 مستند حقيقي في أكثر من 12 لغة. على المعايير الآلية:

  • OlmOCRBench: 85.20 (أعلى درجة في الفئة)
  • OmniDocBench: 93.07
  • Crawl Multilingual: 0.98 عبر جميع مجموعات اللغات العشر

الخطوات التالية

Mistral OCR 4 متاحة اليوم عبر وحدة تحكم Mistral API وAmazon SageMaker وMicrosoft Azure Foundry، مع تكامل Snowflake قادم قريباً. يتضمن Getting Started Cookbook الرسمي سير عمل كاملة للصناديق المحيطة والتصنيف. ندوة إنتاجية حول معالجة الدُفعات عالية الإنتاجية وتكامل RAG مجدولة في 7 يوليو 2026.

للفرق التي تستخدم بالفعل نماذج Mistral للنص، تضيف OCR 4 طبقة استيعاب المستندات التي تعمل بنفس SDK ومفتاح API — مما يتيح خطوط فهم مستندات شاملة دون إضافة مورد جديد إلى مجموعتك التقنية.