عبدالله خطاطبة

I build products with AI

WhatsApp
Skip to content
All gifts
GuideinstagramNov 2, 20263 min read

دليل Unlimited OCR من Baidu

أداة مجانية ومفتوحة المصدر بتحوّل المستندات الممسوحة وملفات PDF لنص مرتّب.

Unlimited OCR من Baidu موديل مجاني برخصة MIT بيقرأ كل صفحات المستند بطلب واحد بدل ما يقطّعه صفحات. الدليل: شو هي، ليش مميزة، كيف تجرّبها بدون جهاز قوي، وكيف تشغّلها على جهازك خطوة خطوة.

شو هي؟

OCR بيقرأ المستند كامل

— شو هي؟

  • أداة مجانية مفتوحة المصدر

    بتحوّل المستندات الممسوحة بالسكانر وملفات PDF لنص مرتّب.

  • المستند كامل بطلب واحد

    بتبعتلها كل صفحات المستند مرة وحدة، فبتستفيد من سياق الصفحات ببعض، بدل ما تقطّعه صفحة صفحة. والناتج بيرجع بنفس ترتيب الصفحات.

ليش مميزة؟

أربع نقاط

  • للملفات الطويلة

    مصمّمة للمستندات الطويلة، مع طريقة بتخلّي استهلاك الذاكرة شبه ثابت مهما زاد طول المستند.

  • بتشتغل على جهازك

    بتحمّل الموديل وتشغّله عندك، فملفاتك ما بتطلع لسيرفر.

  • رخصة MIT

    مجانية ومسموحة للاستخدام التجاري.

  • حجم معقول

    الموديل حوالي 3.3 مليار بارامتر، ومتعدد اللغات حسب صفحته.

1

Unlimited-OCR على GitHub

الكود الرسمي من Baidu. رخصة MIT.

github.com
2

الموديل على Hugging Face

Unlimited OCR 2، النسخة الحالية.

huggingface.co
3

الموديل على ModelScope

نفس الموديل على ModelScope.

modelscope.cn

جرّبها بدون تركيب

الخطوة الأسهل

4

ديمو Unlimited OCR 2

جرّب الأداة من المتصفح قبل ما تركّب أي إشي.

huggingface.co

شغّلها على جهازك

أربع خطوات

⚠️ قبل ما تبلّش

الأداة بتحتاج Python 3.10 وكرت شاشة NVIDIA. الـREADME جرّبوها على كرت A800 بذاكرة 80GB، وما حدّدوا أصغر كرت بيكفي. فلو كرتك صغير، جرّب الديمو أول.

1

Step 1

ركّب المكتبات

بالتيرمنال، ويفضّل ببيئة Python افتراضية. هاي نفس النسخ اللي اختبروها.

pip install torch==2.13.0 torchvision pillow transformers==4.52.1 huggingface-hub==0.36.0 \
  tokenizers==0.21.4 addict==2.4.0 einops==0.8.2 easydict==1.13
2

Step 2

حمّل الموديل مرة وحدة

أول تشغيل بينزّل الموديل من Hugging Face. الخيار trust_remote_code بيشغّل كود من صفحة الموديل، فاعتمد على المصدر الرسمي بس.

import torch
from transformers import AutoModel, AutoTokenizer

model_name = "baidu/Unlimited-OCR-2"
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModel.from_pretrained(model_name, trust_remote_code=True, use_safetensors=True,
                                  torch_dtype=torch.bfloat16).eval().cuda()
3

Step 3

جهّز صفحات المستند كصور

الموديل بياخد صور الصفحات. لو عندك PDF حوّله لصور أول، والـREADME بيستعمل مكتبة PyMuPDF لهالشي (pip install pymupdf).

import fitz  # PyMuPDF

def pdf_to_images(pdf_path, dpi=300):
    doc = fitz.open(pdf_path)
    image_paths = []
    for i, page in enumerate(doc):
        image_path = f"page_{i + 1:04d}.png"
        page.get_pixmap(matrix=fitz.Matrix(dpi / 72, dpi / 72)).save(image_path)
        image_paths.append(image_path)
    doc.close()
    return image_paths

pages = pdf_to_images("your_doc.pdf")
4

Step 4

اقرأ كل الصفحات بطلب واحد

بتمرّر الصفحات بترتيبها، والناتج فيه جزء لكل صفحة بنفس الترتيب.

text, num_tokens = model.infer_multi(tokenizer, image_files=pages,
                                     output_path="output/multi", save_results=True)

لمين مفيدة؟

حالتين

  • المحامين والمحاسبين

    اللي عندهم عقود وتقارير مالية ممسوحة، وبدهم نص يقدروا يبحثوا فيه.

  • اللي بيبني نظام بحث أو RAG

    بتوفّر عليك خطوة تجهيز ملفات الـPDF الممسوحة قبل ما تدخل النظام.

نصيحة

قبل ما تعتمد على النتيجة

  • جرّب الأداة على مستند من عندك قبل ما تعتمد عليها
  • راجع الأرقام والجداول بعينك بالمستندات المهمة، لأن أي OCR ممكن يغلط
  • ما ترفع مستندات حساسة لأي ديمو عام، شغّلها على جهازك

جرّبها أول شي على الديمو، وبعدين شغّلها على جهازك لو معك كرت شاشة NVIDIA. وراجع النص الناتج قبل ما تعتمد عليه بشغل مهم.

جرّبت تقرا مستند؟

تابعني عشان أكثر

كل يوم بنزّل محتوى يساعدك تبني بالذكاء الاصطناعي.

تواصل معي على إنستغرام— عبدالله AI

Get the next guide by email

One email per new video. No spam, unsubscribe anytime.

More gifts