عن المشروع
يدمج paperless-paddle-ocr أداة PaddleOCR PP-OCRv6 مع paperless-ngx كعامل خارجي. يستعلم دوريًا من واجهة paperless API عن المستندات المطابقة لوسم إدخال قابل للتهيئة، ويحجزها بوسم معالجة، وينزّل الملفات، ويعرض صفحات PDF كصور باستخدام PyMuPDF، ويشغّل OCR، ثم يرسل النص المستخرج عبر PATCH إلى محتوى المستند. تحصل المستندات المكتملة على وسم إخراج، بينما تحصل حالات الفشل على وسم خطأ.
صُمم المشروع للاستخدام على وحدة المعالجة المركزية، ويوفر خلفيات PaddlePaddle وONNX Runtime وOpenVINO الاختيارية لأجهزة Intel. تُقدَّم التهيئة عبر متغيرات البيئة، بما في ذلك عنوان URL الخاص بـ paperless ورمز API، ولغة OCR، وفئة النموذج، وDPI، وفاصل الاستعلام الدوري، وعدد الخيوط، ووسوم المعالجة، وسلوك إعادة المعالجة، ووضع التشغيل التجريبي. يمكن تشغيله باستمرار كخدمة خلفية أو تنفيذ تمريرة واحدة.
يوثّق النشر باستخدام Docker Compose وأمر Docker عادي. تعمل الصورة بمستخدم غير جذري، وتتضمن فحصًا صحيًا، وتدعم linux/amd64 وlinux/arm64. تغطي سير عمل التطوير المحلي فحص Ruff، وفحص أنواع mypy، وpytest مع استبدال تبعيات OCR الثقيلة.
يتواصل العامل مع paperless-ngx فقط عبر واجهة HTTP API الخاصة به، ولا يتضمن شفرة مصدر paperless-ngx أو PaddleOCR. وهو مخصص لوحدة المعالجة المركزية فقط بحكم التصميم، ولم يُختبر تحت الحمل بمجموعات كبيرة جدًا من المستندات المطابقة، وتعتمد نتائج OCR على جودة المسح الضوئي، وفئة النموذج، وإعدادات DPI. المستودع مرخّص بموجب MIT.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.