همه ویژگیهای ML Kit بهطور پیشفرض از مدلهای یادگیری ماشین آموزشدیده توسط Google (معروف به مدلهای پایه) استفاده میکنند. این راهنما فقط برای مدلهای پایه قابلاجرا است. برای راهنمایی درباره مدلهای سفارشی، اینجا را ببینید.
مدلها در میاناهای برنامهسازی کاربردی ML Kit را میتوان به یکی از سه روش زیر نصب کرد:
- جداشده: مدلها ازطریق «خدمات Google Play» بارگیری و مدیریت میشوند.
- بستهبندیشده: مدلها در زمان ساخت بهصورت ایستا به برنامه شما پیوند داده میشوند.
- بارگیری پویا: مدلها درصورت درخواست بارگیری میشوند.
مسیرهای نصب پشتیبانیشده برای هر میانای برنامهسازی کاربردی
جدول زیر نشان میدهد که کدام مسیرهای نصب مدل توسط هر ویژگی ML Kit پشتیبانی میشود:
| جداشده | دستهبندیشده | بارگیریشده بهصورت پویا | |
| تشخیص نوشتار نسخه ۲ | ✅ | ✅ | |
| تشخیص چهره | ✅ | ✅ | |
| تشخیص مش چهره | ✅ | ||
| تشخیص حالت | ✅ | ||
| بخشبندی سلفی | ✅ | ||
| اسکن رمزینه | ✅ | ✅ | |
| برچسبگذاری تصویر | ✅ | ✅ | |
| تشخیص و ردیابی اشیا | ✅ | ||
| تشخیص جوهر دیجیتال | ✅ | ||
| اسکنر سند | ✅ | ||
| بخشبندی سوژه | ✅ | ||
| کدخوان Google | ✅ | ||
| شناسایی زبان | ✅ | ✅ | |
| ترجمه | ✅ | ||
| پاسخ هوشمند | ✅ | ✅ | |
| استخراج نهاد | ✅ |
راهنماهای مختص API نشان میدهند کدام گزینههای نصب برای API موردنظر دردسترس است.
تفاوتهای اصلی بین گزینههای نصب
| بستهبندینشده | دستهبندیشده | بارگیری پویا | |
| مدلها کجا ذخیره میشوند؟ | در «خدمات 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>میتوانید ازطریق Google Play Services ModuleInstallClient API درخواست بارگیری صریح کنید.
اگر بارگیری مدل در زمان نصب را فعال نکنید یا درخواست بارگیری صریح نداشته باشید، مدل در اولین باری که ویژگی را اجرا میکنید بارگیری خواهد شد. تا زمانی که بارگیری تکمیل نشود، درخواستهای استنتاج ناموفق خواهد بود.
نحوه بهروز کردن مدلها
برای بهروزرسانی مدلهایتان هنگام استفاده از مدل بستهای یا گزینه مدلهای بارگیریشده پویا:
فایل gradle برنامهتان را بهروز کنید تا از جدیدترین کتابخانه کارخواه ویژگی ML Kit استفاده کند.
dependencies { implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API }برنامهتان را بازسازی کنید.
چرا برخیاز میاناهای برنامهسازی کاربردی مدلهای بارگیریشده پویا ارائه میدهند
برخیاز میاناهای برنامهسازی کاربردی ML Kit گزینههای مدل بسیار زیادی برای بستهبندی دارند. برای مثال، تشخیص جوهر دیجیتال از بیشاز ۳۰۰ زبان پشتیبانی میکند و همیشه لازم نیست همه زبانها را درطول نصب در این ویژگی قرار دهید. برای این منظور، گزینه سوم نصب را ارائه میدهیم که در آن مدلها پساز نصب بهصورت درخواستی بارگیری میشوند. درحالحاضر، فقط تشخیص جوهر دیجیتال، ترجمه و استخراج نهاد این گزینه را دارند.