تُرجمت هذه الصفحة آليًا. هل لاحظت خطأً؟ساعد في تحسينها.
Skip to content

مرجع محرك الذكاء الاصطناعي

تقوم حزمة @snapotter/ai بتنسيق الأدوات الأصلية وأوقات تشغيل Python لعمليات ML المحلية. تستخدم معظم أدوات ML Python sidecar المستمر لبدء التشغيل الدافئ السريع. OCR منفصل عمدا: يستدعي fast ثنائي Tesseract الأصلي، بينما يستخدم balanced وbest JSONL dispatcher المستمر المخصص والمثبت على جيل RapidOCR النشط غير القابل للتغيير ضمن /data/ai/v3. يحمل كل طلب generation lease. أثناء الترقية، يقوم SnapOtter بتشغيل smoke test على المرشح قبل التنشيط، ويتحول تلقائيًا إلى dispatcher الجديد، ثم يستنزف الجيل القديم قبل garbage collection.

يتم اكتشاف NVIDIA CUDA تلقائيًا ويتم استخدامه في أوقات التشغيل التي تدعمه. يستخدم OCR CPU على كل مضيف، بما في ذلك الأنظمة التي تحتوي على وحدات معالجة الرسومات NVIDIA، مع تجنب CUDA واقتران برنامج التشغيل لهذه الأداة.

تسريع وحدة معالجة الرسومات المدمجة من Intel/AMD عبر VA-API أو Quick Sync أو OpenCL غير مدعوم لاستدلال الذكاء الاصطناعي حاليًا. تعيين /dev/dri داخل حاوية لا يسرّع أدوات Python الجانبية هذه ما لم تتوفر وحدة معالجة رسومات NVIDIA قادرة على تشغيل CUDA.

19 أداة ذكاء اصطناعي تعمل عبر Python الجانبية موزّعة على أربع طرائق (صورة، وصوت، وفيديو، ومستند)، بالإضافة إلى أداتين ذواتَي قدرات ذكاء اصطناعي اختيارية. تعمل جميع النماذج محليًا، ولا حاجة للإنترنت بعد التنزيل الأولي للنموذج.

توافق OCR الكوري

يدعم Fast OCR اللغات auto وen وde وes وfr وzh وja، لكنه لا يدعم الكورية (ko). تتطلب الكورية حزمة OCR الدقيقة ومستوى balanced أو best. تعمل الحزمة على حاويات Linux amd64 وarm64 الرسمية، بما في ذلك مضيفات NVIDIA حيث يبقى OCR على CPU. تُرجع الأنظمة غير المدعومة خطأ توافق صريحاً ولا تعود بصمت إلى fast. كما يُرفض طلب Korean مع fast أو الاسم القديم tesseract قبل وضعه في قائمة الانتظار، مع FEATURE_INCOMPATIBLE والسبب fast-korean-unsupported.

البنية المعمارية

Node.js Tool Route
      |
      v
 @snapotter/ai bridge.ts
      | (stdin/stdout JSON + stderr progress events)
      v
 +-- Native Tesseract + Ghostscript (fast image/PDF OCR)
 |
 +-- Isolated OCR runtime (persistent JSONL dispatcher)
 |     `-- RapidOCR + ONNX Runtime CPU + pinned PP-OCR models
 |
 `-- Python dispatcher (persistent process, "ai" profile)
      |
      |-- remove_bg.py        (rembg / BiRefNet)
      |-- upscale.py          (RealESRGAN)
      |-- inpaint.py          (LaMa ONNX)
      |-- outpaint.py         (LaMa canvas expansion)
      |-- detect_faces.py     (MediaPipe)
      |-- face_landmarks.py   (MediaPipe landmarks)
      |-- enhance_faces.py    (GFPGAN / CodeFormer)
      |-- colorize.py         (DDColor)
      |-- noise_removal.py    (SCUNet / tiered denoising)
      |-- red_eye_removal.py  (landmark + color analysis)
      |-- restore.py          (scratch repair + enhancement + denoising)
      |-- transcribe.py       (faster-whisper speech-to-text)
      +-- install_feature.py  (on-demand bundle installer)

يستبدل ملف تعريف موزّع "docs" منفصل قائمةَ السماح الخاصة بالذكاء الاصطناعي بنصوص معالجة المستندات (doc_pagecount، doc_health، doc_flatten، doc_redact، doc_text، doc_to_word، doc_metadata، doc_html_pdf) ويتجاوز عمليات استيراد التعلم الآلي الثقيلة.

المهل الزمنية: 300 ثانية افتراضيًا؛ وتحصل قراءة النصوص (OCR) وإزالة الخلفية بـ BiRefNet على 600 ثانية.

حزم الميزات

تُحزَّم نماذج الذكاء الاصطناعي حسب حزمة التبعيات المشتركة، وليس أرشيفًا واحدًا لكل أداة. يمكن لحزمة الميزات أن تُفعّل عدة أدوات عندما تستخدم العائلة نفسها من النماذج، أو حزم Python (wheels)، أو المكتبات الأصلية. يبقي هذا صورة Docker الخاصة بالإصدار أصغر ويتجنب تخزين نسخ مكررة من نماذج تنعيم الخلفية، واكتشاف الوجوه، وقراءة النصوص، والترميم، والكلام نفسها.

تشحن صورة Docker التطبيقَ إضافةً إلى وقت التشغيل المشترك. تُنزَّل أرشيفات النماذج الكبيرة عند الطلب إلى وحدة التخزين الدائمة /data/ai، ثم تُعاد استخدامها من قِبل كل أداة تحتاجها. إذا كانت الحزمة مثبّتة بالفعل لأن أداة أخرى احتاجتها، فإن تفعيل أداة جديدة معتمدة عليها لا يُعيد تنزيل تلك الحزمة.

تتطلب معظم أدوات الذكاء الاصطناعي حزمة ميزات واحدة أو أكثر قبل أن تتمكن من التشغيل. تقوم واجهة المستخدم الإدارية بتثبيت تلك عن طريق الأداة من خلال POST /api/v1/admin/tools/:toolId/features/install، الذي يحل قائمة الحزم الكاملة، ويتخطى الحزم المثبتة بالفعل، ويضع التنزيلات المفقودة فقط في قائمة الانتظار. على سبيل المثال، تمكين صورة جواز السفر في قائمة انتظار المثيلات الجديدة background-removal وface-detection؛ تمكينه بعد تثبيت بالفعل قوائم الانتظار إزالة الخلفية فقط face-detection. OCR هو الاستثناء لأن fast لا يحتاج إلى حزمة؛ قم بتثبيت وقت التشغيل الدقيق الاختياري من خلال واجهة المستخدم أو POST /api/v1/admin/features/ocr/install.

الحزمةالحجممجموعة التبعيات المشتركةالأدوات التي تستخدمها
background-removal4-5 GBتنعيم الخلفية rembg / BiRefNetremove-background, passport-photo, transparency-fixer, background-replace, blur-background
face-detection200-300 MBاكتشاف الوجوه والمعالم في MediaPipeblur-faces, red-eye-removal, smart-crop
object-eraser-colorize1-2 GBالرسم الداخلي/الخارجي بـ LaMa و DDColorerase-object, colorize, ai-canvas-expand
upscale-enhance5-6 GBRealESRGAN و GFPGAN / CodeFormer وإزالة التشويشupscale, enhance-faces, noise-removal
photo-restoration4-5 GBمسار إصلاح الخدوش والترميمrestore-photo
ocr~208-234 MiB تنزيل / ~409-488 MiB مثبتةاختياري RapidOCR 3.9.1، ONNX Runtime 1.20.1، ونماذج PP-OCR المثبتةocr وocr-pdf (balanced وbest فقط)
transcription~600 MBنماذج تحويل الكلام إلى نص faster-whispertranscribe-audio, auto-subtitles

أدوات ذات تبعيات عبر عدة حزم:

الأداةالحزم المطلوبةالسبب
passport-photobackground-removal، face-detectionيزيل الخلفية، ثم يستخدم معالم الوجه لتأطير القص وفق قواعد صور جواز السفر والهوية.
enhance-facesupscale-enhance، face-detectionيكتشف الوجوه قبل تشغيل تحسين GFPGAN أو CodeFormer على مناطق الوجه المحددة.

تتوفر الأداة فقط عند تثبيت جميع الحزم المطلوبة، باستثناء OCR: تظل طبقة fast المضمنة متاحة بدون حزمة OCR الاختيارية. عمليات التثبيت الجزئية صالحة ويتم التعامل معها بشكل متزايد: تتم إعادة استخدام الحزم المثبتة، وتظهر الحزم المفقودة كتنزيلات، ويتم تشغيل عمليات التثبيت الموضوعة في قائمة الانتظار واحدًا تلو الآخر حتى لا يتم تعديل بيئة Python المشتركة بشكل متزامن.

التثبيت الدقيق لوقت تشغيل OCR

تعد حزمة OCR الدقيقة بمثابة وقت تشغيل خاص بالمنصة لحاوية Linux amd64 أو Linux arm64 الرسمية. يستخدم الإصدار amd64 Python 3.12؛ يستخدم الإصدار arm64 Python 3.11. يعمل كلا الإصدارين على تشغيل RapidOCR من خلال ONNX Runtime's CPUExecutionProvider، لذا فإن نفس الحزمة تعمل على وحدة المعالجة المركزية (CPU) فقط ومضيفي NVIDIA Docker. يتطلب وقت التشغيل الدقيق ما لا يقل عن 4 GiB من الذاكرة الفعالة: الحد الأقصى للحاوية التي تم تكوينها cgroup، خلاف ذلك الذاكرة المضيفة. يتم رفض النظام الموجود أسفل الحد الأدنى من التوافق الموقع قبل التنزيل. لا ينطبق هذا المتطلب على Fast OCR المدمج. تم رفض إصدارات Bare-metal لأنه لا يمكن استنتاج libc و Python ABI بشكل آمن؛ يظل OCR السريع متاحًا عندما يوفر المضيف Tesseract و Ghostscript.

يكون المنتج الاختياري حوالي 208-234 MiB مضغوطًا و409-488 MiB مستخرجًا، اعتمادًا على البنية. يربط الفهرس الموقع عدد البايتات المضغوطة والمستخرجة بدقة والذي يفرضه المثبت. يضيف Tesseract المدمج حوالي 25 MiB إلى الصورة الرسمية ولا يحتاج إلى ملفات في /data/ai.

يجلب التثبيت عبر الإنترنت فهرس الإصدار الموقع والمحتوى المحدد الذي يتناوله النظام الأساسي الحالي. يتحقق SnapOtter من توقيع فهرس Ed25519، وحجم القطعة الأثرية، وملخص SHA-256، وملخصات النموذج، والمسارات، وأوضاع الملفات، و smoke test المرحلي قبل تنشيط الجيل الجديد ذريًا. يؤدي التثبيت الفاشل إلى ترك الجيل السليم السابق نشطًا.

للتثبيت الهوائي، قم بتحميل كل من ocr-runtime-index.json الخاص بالإصدار وأرشيف وقت تشغيل OCR المطابق إلى POST /api/v1/admin/features/import باستخدام حقول متعددة الأجزاء تسمى index وarchive. يطبق الاستيراد دون اتصال نفس عمليات التحقق من التوقيع والتجزئة والاستخراج والتوافق واختبار الدخان مثل التثبيت عبر الإنترنت؛ يتم رفض الأرشيف الذي لا يحتوي على الفهرس الموقع الموثوق به.


إزالة الخلفية

مسار الأداة: remove-background
النموذج: rembg مع BiRefNet (الافتراضي) أو متغيرات U2-Net

المعاملالنوعالافتراضيالوصف
modelنص-متغير النموذج (تجاوز اختياري)
backgroundTypeنص"transparent"أحد: transparent، color، gradient، blur، image
backgroundColorنص-لون سداسي عشري لخلفية موحّدة
gradientColor1نص-لون التدرّج الأول
gradientColor2نص-لون التدرّج الثاني
gradientAngleرقم-زاوية التدرّج بالدرجات
blurEnabledمنطقي-تفعيل تأثير طمس الخلفية
blurIntensityرقم (0-100)-شدة الطمس
shadowEnabledمنطقي-تفعيل الظل المُسقَط على الموضوع
shadowOpacityرقم (0-100)-تعتيم الظل
outputFormatنص-تنسيق الإخراج: png أو webp أو avif
edgeRefineعدد صحيح (0-3)-مستوى تنقيح الحواف
decontaminateمنطقي-إزالة تسرّب الألوان من الحواف

استبدال الخلفية

مسار الأداة: background-replace
النموذج: rembg / BiRefNet (مشترك مع remove-background)

يزيل الخلفية ويستبدلها بلون موحّد أو تدرّج لوني.

المعاملالنوعالافتراضيالوصف
backgroundType"color" | "gradient""color"وضع الخلفية
colorنص"#ffffff"لون الخلفية السداسي العشري (عندما يكون backgroundType هو color)
gradientColor1نص-لون التدرّج السداسي العشري الأول
gradientColor2نص-لون التدرّج السداسي العشري الثاني
gradientAngleعدد صحيح (0-360)180زاوية التدرّج بالدرجات
featherعدد صحيح (0-20)0نصف قطر تنعيم الحواف
format"png" | "webp""png"تنسيق الإخراج

طمس الخلفية

مسار الأداة: blur-background
النموذج: rembg / BiRefNet (مشترك مع remove-background)

يطمس الخلفية مع إبقاء الموضوع حادًا.

المعاملالنوعالافتراضيالوصف
intensityعدد صحيح (1-100)50شدة الطمس
featherعدد صحيح (0-20)0نصف قطر تنعيم الحواف
format"png" | "webp""png"تنسيق الإخراج

تحسين دقة الصورة

مسار الأداة: upscale
النموذج: RealESRGAN (مع الرجوع إلى Lanczos عند عدم التوفر)

المعاملالنوعالافتراضيالوصف
scaleرقم2عامل تحسين الدقة
modelنص"auto"متغير النموذج
faceEnhanceمنطقيfalseتطبيق مرور تحسين الوجه بـ GFPGAN
denoiseرقم0قوة إزالة التشويش
formatنص"auto"تجاوز تنسيق الإخراج
qualityرقم95جودة الإخراج (1-100)

قراءة النصوص (OCR) / استخراج النص

مسار الأداة: ocr
النماذج: Tesseract (fast)؛ RapidOCR مع نماذج PP-OCRv6 الصغيرة (balanced)؛ الطرازات المتوسطة PP-OCRv6 مع تسجيل متغير مُعاير (best)

المعاملالنوعالافتراضيالوصف
quality"fast" | "balanced" | "best"متحركعند حذف quality وengine، يختار SnapOtter أعلى مستوى متاح بالترتيب: best ثم balanced ثم fast. لا تختار اللغة الكورية fast أبداً؛ بل تستخدم best ثم balanced، أو تُرجع خطأ تثبيت أو توافق لوقت التشغيل الدقيق.
languageنص"auto"اللغة: auto، en، de، fr، es، zh، ja، ko
enhanceمنطقيةتعتمد على الطبقةتحسين التباين المحلي. سريع يطبقه مباشرة؛ تحافظ الطبقات الدقيقة على المتغير فقط عندما يؤدي تسجيل المعايرة إلى تحسين OCR. الإعدادات الافتراضية للأفضل
engineخيط-الاسم المستعار للتوافق مهمل. تعيين tesseract إلى fast وقيمة paddleocr القديمة إلى balanced؛ لا يتم تحميل PaddlePaddle

إرجاع النص المستخرج بالإضافة إلى بيانات تعريف المصدر: المحرك، والجودة المطلوبة والفعلية، والجهاز، والموفر، وحالة التدهور، والتحذيرات، وإصدارات وقت التشغيل/الطراز الدقيقة عند الاقتضاء. طلبات الجودة الصريحة لا تعود أبدًا إلى مستوى آخر. في حالة عدم توفر balanced أو best، تقوم API بإرجاع FEATURE_NOT_INSTALLED أو FEATURE_INCOMPATIBLE بدلاً من تشغيل fast بصمت.

قراءة نصوص PDF

مسار الأداة: ocr-pdf
النماذج: نظام الطبقات نفسه المستخدم في قراءة نصوص الصور

يستخرج النص من مستندات PDF الممسوحة ضوئيًا باستخدام قراءة النصوص المدعومة بالذكاء الاصطناعي، صفحة بصفحة.

المعاملالنوعالافتراضيالوصف
quality"fast" | "balanced" | "best"متحركعند حذف quality وengine، يختار SnapOtter أعلى مستوى متاح بالترتيب: best ثم balanced ثم fast. لا تختار اللغة الكورية fast أبداً؛ بل تستخدم best ثم balanced، أو تُرجع خطأ تثبيت أو توافق لوقت التشغيل الدقيق.
languageنص"auto"اللغة: auto، en، de، fr، es، zh، ja، ko
pagesنص"all"تحديد الصفحات: "all"، "1-3"، "1,3,5"
enhanceمنطقيةتعتمد على الطبقةتحسين التباين المحلي. سريع يطبقه مباشرة؛ تحافظ الطبقات الدقيقة على المتغير فقط عندما يؤدي تسجيل المعايرة إلى تحسين OCR. الإعدادات الافتراضية للأفضل
engineخيط-الاسم المستعار للتوافق مهمل. تعيين tesseract إلى fast وقيمة paddleocr القديمة إلى balanced؛ لا يتم تحميل PaddlePaddle

تنطبق نفس قاعدة عدم الرجوع إلى الإصدار السابق على PDF OCR. يتم تنقيط صفحات PDF قبل التعرف عليها، ويمكن لطلب واحد تحديد 50 صفحة على الأكثر.

طمس الوجوه / المعلومات الشخصية

مسار الأداة: blur-faces
النموذج: اكتشاف الوجوه بـ MediaPipe

المعاملالنوعالافتراضيالوصف
blurRadiusرقم (1-100)30نصف قطر طمس غاوس
sensitivityرقم (0-1)0.5عتبة ثقة الاكتشاف

تحسين الوجه

مسار الأداة: enhance-faces
النماذج: GFPGAN، CodeFormer

المعاملالنوعالافتراضيالوصف
model"auto" | "gfpgan" | "codeformer""auto"نموذج التحسين
strengthرقم (0-1)0.8قوة التحسين
sensitivityرقم (0-1)0.5عتبة اكتشاف الوجه
onlyCenterFaceمنطقيfalseتحسين الوجه الأكثر مركزية فقط

التلوين بالذكاء الاصطناعي

مسار الأداة: colorize
النموذج: DDColor (مع الرجوع إلى OpenCV DNN)

يحوّل الصور بالأبيض والأسود أو ذات التدرّج الرمادي إلى ألوان كاملة.

المعاملالنوعالافتراضيالوصف
intensityرقم (0-1)1.0قوة تشبّع الألوان
model"auto" | "ddcolor" | "opencv""auto"متغير النموذج

إزالة التشويش

مسار الأداة: noise-removal
النموذج: SCUNet (مسار إزالة تشويش متدرّج)

المعاملالنوعالافتراضيالوصف
tier"quick" | "balanced" | "quality" | "maximum""balanced"طبقة المعالجة
strengthرقم (0-100)50قوة إزالة التشويش
detailPreservationرقم (0-100)50مقدار التفاصيل المراد الحفاظ عليها؛ القيمة الأعلى تُبقي نسيجًا أكثر
colorNoiseرقم (0-100)30قوة تقليل تشويش الألوان
formatنص"original"تنسيق الإخراج: original، png، jpeg، webp، avif، jxl
qualityرقم (1-100)90جودة ترميز الإخراج

إزالة العين الحمراء

مسار الأداة: red-eye-removal

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

المعاملالنوعالافتراضيالوصف
sensitivityرقم (0-100)50عتبة اكتشاف البكسل الأحمر
strengthرقم (0-100)70قوة التصحيح
formatنص-تجاوز تنسيق الإخراج (اختياري)
qualityرقم (1-100)90جودة الإخراج

ترميم الصور

مسار الأداة: restore-photo

مسار متعدد الخطوات للصور القديمة أو التالفة: اكتشاف الخدوش/التمزقات وإصلاحها، وتحسين الوجه، وإزالة التشويش، والتلوين الاختياري.

المعاملالنوعالافتراضيالوصف
scratchRemovalمنطقيtrueاكتشاف الخدوش والتمزقات وإصلاحها
faceEnhancementمنطقيtrueتطبيق مرور تحسين الوجه
fidelityرقم (0-1)0.7قوة تحسين الوجه (الأعلى = أكثر تحفظًا)
denoiseمنطقيtrueتطبيق مرور إزالة التشويش
denoiseStrengthرقم (0-100)25قوة إزالة التشويش
colorizeمنطقيfalseالتلوين بعد الترميم
colorizeStrengthرقم (0-100)85شدة التلوين

صورة جواز السفر

مسار الأداة: passport-photo
النماذج: معالم الوجه بـ MediaPipe + إزالة الخلفية بـ BiRefNet

سير عمل من مرحلتين: التحليل (اكتشاف الوجه + إزالة الخلفية) ثم التوليد (القص، وتغيير الحجم، والتبليط). يدعم أكثر من 37 دولة عبر 6 مناطق.

المرحلة 1: التحليل

POST /api/v1/tools/image/passport-photo/analyze

يقبل ملف صورة (متعدد الأجزاء). يُرجِع بيانات معالم الوجه، ومعاينة بترميز base64، وأبعاد الصورة.

المرحلة 2: التوليد

POST /api/v1/tools/image/passport-photo/generate

يقبل جسم JSON يحتوي على نتائج المرحلة 1 إضافةً إلى إعدادات التوليد:

المعاملالنوعالافتراضيالوصف
jobIdنص(مطلوب)معرّف المهمة من المرحلة 1
filenameنص(مطلوب)اسم الملف الأصلي من المرحلة 1
countryCodeنص(مطلوب)رمز الدولة ISO (مثل US، GB، IN)
documentTypeنص"passport"نوع المستند
bgColorنص"#FFFFFF"لون الخلفية السداسي العشري
printLayoutنص"none"تخطيط الطباعة: none، 4x6، a4، letter
maxFileSizeKbرقم0الحد الأقصى لحجم الملف بالكيلوبايت (0 = بلا حد)
dpiرقم (72-1200)300دقة الإخراج DPI
customWidthMmرقم-عرض مخصص بالمليمتر (يتجاوز مواصفات الدولة)
customHeightMmرقم-ارتفاع مخصص بالمليمتر (يتجاوز مواصفات الدولة)
zoomرقم (0.5-3)1عامل التكبير
adjustXرقم0تعديل الموضع الأفقي
adjustYرقم0تعديل الموضع الرأسي
landmarksكائن(مطلوب)المعالم من المرحلة 1
imageWidthرقم(مطلوب)عرض الصورة من المرحلة 1
imageHeightرقم(مطلوب)ارتفاع الصورة من المرحلة 1

محو الأجسام (الرسم الداخلي)

مسار الأداة: erase-object
النموذج: LaMa عبر ONNX Runtime

يُرسَل القناع كـجزء ملف ثانٍ (اسم الحقل mask)، وليس بترميز base64. تشير البكسلات البيضاء في القناع إلى المناطق المراد محوها. يُرسَل الإعدادان format وquality كحقول نموذج علوية المستوى.

المعاملالنوعالافتراضيالوصف
fileملف(مطلوب)الصورة المصدر (متعددة الأجزاء)
maskملف(مطلوب)صورة القناع (متعددة الأجزاء، اسم الحقل mask، الأبيض = محو)
formatنص"auto"تنسيق الإخراج: auto، png، jpg، jpeg، webp، tiff، gif، avif، heic، heif، jxl
qualityعدد صحيح (1-100)95جودة الإخراج

مُسرَّع بـ CUDA عند توفر وحدة معالجة رسومات NVIDIA.

توسيع اللوحة بالذكاء الاصطناعي

مسار الأداة: ai-canvas-expand
النموذج: الرسم الخارجي القائم على LaMa

يوسّع لوحة الصورة في أي اتجاه ويملأ المناطق الجديدة بمحتوى مولّد بالذكاء الاصطناعي يطابق الصورة الموجودة.

المعاملالنوعالافتراضيالوصف
extendTopعدد صحيح0البكسلات المراد تمديدها في الأعلى
extendRightعدد صحيح0البكسلات المراد تمديدها على اليمين
extendBottomعدد صحيح0البكسلات المراد تمديدها في الأسفل
extendLeftعدد صحيح0البكسلات المراد تمديدها على اليسار
tier"fast" | "balanced" | "high""balanced"طبقة الجودة
formatنص"auto"تنسيق الإخراج: auto، png، jpg، jpeg، webp، tiff، gif، avif، heic، heif، jxl
qualityعدد صحيح (1-100)95جودة الإخراج

يجب أن يكون اتجاه تمديد واحد على الأقل أكبر من 0.

القص الذكي

مسار الأداة: smart-crop
النموذج: اكتشاف الوجوه بـ MediaPipe (وضع الوجه فقط)

المعاملالنوعالافتراضيالوصف
modeنص"subject"استراتيجية القص: subject، face، trim
strategy"attention" | "entropy""attention"استراتيجية وضع الموضوع
widthعدد صحيح-عرض الإخراج
heightعدد صحيح-ارتفاع الإخراج
paddingعدد صحيح (0-50)0نسبة الحشو حول الموضوع
facePresetنص"head-shoulders"التأطير المُعَدّ مسبقًا عند mode=face
sensitivityرقم (0-1)0.5عتبة اكتشاف الوجه
thresholdعدد صحيح (0-255)30عتبة اكتشاف الخلفية (وضع التشذيب)
padToSquareمنطقيfalseحشو النتيجة المُشذَّبة إلى مربع
padColorنص"#ffffff"لون الخلفية للحشو المربّع
targetSizeعدد صحيح-الحجم المستهدف للإخراج المحشو (بالبكسل)
qualityعدد صحيح (1-100)-جودة الإخراج

تُقبَل القيم القديمة mode وهي attention وcontent وتُعيَّن إلى subject وtrim على التوالي.

الإعدادات المسبقة للوجه:

الإعداد المسبقالأفضل لِـ
closeupلقطات الرأس
head-shouldersصور الملف الشخصي
upper-bodyLinkedIn / رسمي
half-bodyالجزء العلوي الكامل من الجسم

نسخ الصوت

مسار الأداة: transcribe-audio
النموذج: faster-whisper

يحوّل الكلام إلى نص. يدعم تنسيقات إخراج النص العادي و SRT و VTT.

المعاملالنوعالافتراضيالوصف
languageنص"auto"اللغة: auto، en، de، fr، es، zh، ja، ko، id، th، vi
outputFormat"txt" | "srt" | "vtt""txt"تنسيق الإخراج

الترجمات التلقائية

مسار الأداة: auto-subtitles
النموذج: faster-whisper (يستخرج الصوت من الفيديو، ثم ينسخه)

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

المعاملالنوعالافتراضيالوصف
languageنص"auto"اللغة: auto، en، de، fr، es، zh، ja، ko، id، th، vi
format"srt" | "vtt""srt"تنسيق ملف الترجمة للإخراج

مُصلِح شفافية PNG

مسار الأداة: transparency-fixer
النموذج: تنعيم BiRefNet عالي الدقة (بدقة 2048x2048)

يصلح ملفات PNG "الشفافة الزائفة" حيث أُزيلت الخلفية لكنها تركت وراءها هُدبًا، أو هالات، أو عيوبًا شبه شفافة. يستخدم نموذج التنعيم عالي الدقة من BiRefNet لإنتاج قناة ألفا نظيفة، ثم يطبّق معالجة إزالة هُدب قابلة للتهيئة لإزالة تلوث الألوان على طول الحواف.

سلسلة الرجوع عند نفاد الذاكرة (OOM): إذا تجاوز تنعيم BiRefNet عالي الدقة الذاكرة المتاحة، ترجع الأداة تلقائيًا إلى birefnet-general، ثم إلى u2net.

المعاملالنوعالافتراضيالوصف
defringeرقم (0-100)30قوة إزالة هُدب الحواف لإزالة تلوث الألوان
outputFormat"png" | "webp""png"تنسيق صورة الإخراج
removeWatermarkمنطقيfalseتطبيق معالجة مسبقة لإزالة العلامة المائية (مرشّح وسيط)
bash
curl -X POST http://localhost:1349/api/v1/tools/image/transparency-fixer \
  -H "Authorization: Bearer <token>" \
  -F "file=@fake-transparent.png" \
  -F 'settings={"defringe":30,"outputFormat":"png"}'

أدوات ذات قدرات ذكاء اصطناعي اختيارية

الأدوات التالية ليست أدوات Python جانبية لكنها تستخدم ميزات الذكاء الاصطناعي عند تفعيل خيارات معينة.

تحسين الصورة

مسار الأداة: image-enhancement
المحرك: قائم على التحليل (المدرج التكراري والإحصاءات في Sharp)

يحلّل الصورة ويطبّق تصحيحات تلقائية للتعريض، والتباين، وتوازن الأبيض، والتشبّع، والحدة، والتشويش. يدعم أوضاعًا خاصة بالمشهد.

المعاملالنوعالافتراضيالوصف
mode"auto" | "portrait" | "landscape" | "low-light" | "food" | "document""auto"وضع المشهد لضبط التصحيحات
intensityرقم (0-100)50قوة التصحيح الإجمالية
corrections.exposureمنطقيtrueتطبيق تصحيح التعريض
corrections.contrastمنطقيtrueتطبيق تصحيح التباين
corrections.whiteBalanceمنطقيtrueتطبيق تصحيح توازن الأبيض
corrections.saturationمنطقيtrueتطبيق تصحيح التشبّع
corrections.sharpnessمنطقيtrueتطبيق تصحيح الحدة
corrections.denoiseمنطقيtrueتطبيق إزالة التشويش
deepEnhanceمنطقيfalseتفعيل إزالة التشويش بالذكاء الاصطناعي عبر SCUNet (يتطلب حزمة upscale-enhance)

تتوفر نقطة نهاية تحليل إضافية عند POST /api/v1/tools/image/image-enhancement/analyze تُرجِع التصحيحات المكتشفة دون تطبيقها.

تغيير الحجم المدرك للمحتوى (نحت الأطراف)

مسار الأداة: content-aware-resize
المحرك: ثنائي caire بلغة Go (ليس Python، لا فائدة من وحدة معالجة الرسومات)

يغيّر حجم الصور بذكاء عن طريق إزالة الأطراف منخفضة الطاقة، مع الحفاظ على المحتوى المهم.

المعاملالنوعالافتراضيالوصف
widthرقم-العرض المستهدف
heightرقم-الارتفاع المستهدف
protectFacesمنطقيfalseحماية مناطق الوجه المكتشفة (يتطلب حزمة face-detection)
blurRadiusرقم (0-20)4طمس مسبق لحساب الطاقة
sobelThresholdرقم (1-20)2عتبة حساسية الحواف
squareمنطقيfalseفرض إخراج مربّع