مسارات تثبيت نماذج "حزمة تعلّم الآلة" على نظام التشغيل Android

تستفيد جميع ميزات ML Kit تلقائيًا من نماذج تعلُّم الآلة التي درّبتها Google (المعروفة باسم النماذج الأساسية). لا ينطبق هذا الدليل إلا على الطُرز الأساسية. اطّلِع هنا على إرشادات بشأن النماذج المخصّصة.

يمكن تثبيت النماذج في واجهات برمجة تطبيقات ML Kit بإحدى الطرق الثلاث التالية:

  1. غير مجمَّعة: يتم تنزيل النماذج وإدارتها من خلال "خدمات Google Play".
  2. مضمّنة: يتم ربط النماذج بشكل ثابت بتطبيقك في وقت الإنشاء.
  3. تنزيل ديناميكي: يتم تنزيل النماذج عند الطلب.

مسارات التثبيت المتوافقة مع كل واجهة برمجة تطبيقات

يوضّح الجدول أدناه مسارات تثبيت النماذج التي تتيحها كل ميزة من ميزات ML Kit:

غير مجمَّعة مجمَّعة تنزيل المحتوى بشكل ديناميكي
الإصدار 2 من ميزة "التعرّف على النص"
التعرّف على الوجوه
رصد شبكة الوجه
رصد الوضعيات
تقسيم صور السيلفي
المسح الضوئي للرموز الشريطية
تصنيف الصور
رصد الأجسام وتتبُّعها
التعرّف على الحبر الرقمي
الماسح الضوئي للمستندات
تقسيم الموضوعات
الماسح الضوئي للرموز من Google
تحديد اللغة
الترجمة
الرد السريع
استخراج الكيانات

توضّح الأدلة الخاصة بواجهات برمجة التطبيقات خيارات التثبيت المتاحة لواجهة برمجة التطبيقات المحدّدة.

الاختلافات الرئيسية بين خيارات التثبيت

غير مجمَّعة مجمَّعة تنزيل المحتوى بشكل ديناميكي
أين يتم تخزين النماذج؟ يتم تخزينها في "خدمات Google Play" ولا يتم احتسابها ضمن مساحة التخزين التي يستخدمها هذا التطبيق يتم حفظها في مساحة التخزين الخاصة بالتطبيق بعد التثبيت تم الحفظ في مساحة التخزين الخاصة بالتطبيق بعد تنزيل النموذج
كيف يؤثر حجم النموذج في حجم التطبيق؟ لا يساهم في حجم التطبيق تساهم بشكل مباشر في حجم التطبيق لا يساهم في حجم التطبيق، ولكنّه يزيد من مساحة التخزين الخاصة بالتطبيق
متى يتم تعديل النماذج؟ يتم تحديثه تلقائيًا عند إصدار نسخة أحدث يجب تحديث التطبيق لتعديل النموذج يجب تحديث التطبيق لتعديل النموذج
متى يتم تنزيل النماذج؟ يجب تنزيل النماذج قبل استخدامها يتم تضمين جميع النماذج والميزات عند تثبيت التطبيق، وبالتالي يمكن استخدامها على الفور يجب إدارة عمليات تنزيل النماذج وتحديثها وحذفها يدويًا باستخدام واجهة برمجة التطبيقات RemoteModelManager.
متى تتم إزالة النماذج من الجهاز؟ لن تزيل "خدمات Google Play" النموذج من مساحة التخزين إلا إذا تم إلغاء تثبيت جميع التطبيقات التي تعتمد على النموذج. تتم إزالة النماذج من وحدة التخزين الخاصة بالتطبيق عند إلغاء تثبيت التطبيق تتم إزالة النماذج التي تم تنزيلها من وحدة التخزين الخاصة بالتطبيق عند إلغاء تثبيت التطبيق

كيفية الاختيار بين المنتجات المجمّعة وغير المجمّعة

إذا كانت إحدى واجهات برمجة التطبيقات تتيح خيارَي التثبيت المجمَّع وغير المجمَّع، عليك اتّباع ما يلي:

  • استخدِم خيار الحزمة إذا كنت تعطي الأولوية لما يلي:

    • إكمال وظائف الميزة مباشرةً بعد تثبيت التطبيق
    • وظائف الميزة بدون اتصال بالشبكة بعد تثبيت التطبيق
  • استخدِم خيار الحزمة غير المجمّعة إذا كنت تعطي الأولوية لما يلي:

    • حجم التطبيق أصغر
    • تحديثات النماذج المبرمَجة من خلال "خدمات Google Play"

كيفية تنزيل النماذج

عند استخدام خيار النموذج غير المجمَّع، يمكنك تحديد طريقة تنزيل النماذج على الجهاز:

  • يمكنك تفعيل تنزيل النماذج في وقت التثبيت من خلال إضافة بيان إلى ملف AndroidManifest.xml الخاص بتطبيقك. على سبيل المثال، يوضّح مقتطف الرمز البرمجي أدناه كيفية ضبط تطبيقك لتنزيل نموذج "فحص الرموز الشريطية" تلقائيًا بعد تثبيت تطبيقك من "متجر Play":

    <application ...>
          ...
          <meta-data
              android:name="com.google.mlkit.vision.DEPENDENCIES"
              android:value="barcode" >
          <!-- To use multiple models: android:value="barcode,model2,model3" -->
    </application>
    
  • يمكنك طلب التنزيل بشكل صريح من خلال واجهة ModuleInstallClient API في "خدمات Google Play".

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

كيفية تعديل النماذج

لتعديل النماذج عند استخدام النموذج المجمَّع أو خيار النماذج التي يتم تنزيلها بشكل ديناميكي، اتّبِع الخطوات التالية:

  1. عدِّل ملف Gradle الخاص بتطبيقك لاستخدام أحدث مكتبة لبرنامج ML Kit.

    dependencies {
      implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API
    }
    
  2. أعِد إنشاء تطبيقك.

سبب توفير بعض واجهات برمجة التطبيقات لنماذج يتم تنزيلها بشكل ديناميكي

تتضمّن بعض واجهات برمجة التطبيقات في ML Kit عددًا كبيرًا جدًا من خيارات النماذج التي يمكن تجميعها. على سبيل المثال، تتيح ميزة التعرّف على الحبر الرقمي استخدام أكثر من 300 لغة، وليس من الضروري دائمًا تضمين كل اللغات في الميزة أثناء التثبيت. لهذا الغرض، نوفّر خيار التثبيت الثالث الذي يتم فيه تنزيل النماذج عند الطلب بعد التثبيت. في الوقت الحالي، يتوفّر هذا الخيار فقط في التعرّف على الحبر الرقمي والترجمة واستخراج الكيانات.