همه ویژگیهای کیت ML به طور پیشفرض از مدلهای یادگیری ماشینی آموزش دیده توسط Google (معروف به مدلهای پایه) استفاده میکنند. این راهنما فقط برای مدل های پایه قابل اجرا است. برای راهنمایی در مورد مدل های سفارشی اینجا را ببینید.
مدلهای موجود در APIهای ML Kit را میتوان به یکی از سه روش زیر نصب کرد:
- Unbundled: مدل ها از طریق خدمات Google Play دانلود و مدیریت می شوند.
- بستهبندی شده: مدلها در زمان ساخت بهصورت ایستا به برنامه شما مرتبط میشوند.
- دانلود پویا: مدل ها در صورت تقاضا دانلود می شوند.
مسیرهای نصب پشتیبانی شده برای هر API
جدول زیر نشان می دهد که کدام مسیرهای نصب مدل توسط هر ویژگی ML Kit پشتیبانی می شود:
تفکیک شده | همراه | به صورت پویا دانلود شده است | |
تشخیص متن نسخه 2 | ✅ | ✅ | |
تشخیص چهره | ✅ | ✅ | |
تشخیص مش چهره | ✅ | ||
تشخیص پوس | ✅ | ||
تقسیم بندی سلفی | ✅ | ||
اسکن بارکد | ✅ | ✅ | |
برچسب گذاری تصویر | ✅ | ✅ | |
تشخیص و ردیابی اشیاء | ✅ | ||
تشخیص جوهر دیجیتال | ✅ | ||
اسکنر اسناد | ✅ | ||
تقسیم بندی موضوعی | ✅ | ||
اسکنر کد گوگل | ✅ | ||
شناسایی زبان | ✅ | ✅ | |
ترجمه | ✅ | ||
پاسخ هوشمند | ✅ | ✅ | |
استخراج موجودیت | ✅ |
راهنماهای مخصوص API نشان می دهد که کدام گزینه های نصب برای API داده شده در دسترس هستند.
تفاوت های کلیدی بین گزینه های نصب
تفکیک شده | همراه | به صورت پویا دانلود شده است | |
مدل ها کجا ذخیره می شوند؟ | در سرویسهای Google Play قرار دارد و در فضای ذخیرهسازی استفاده شده توسط این برنامه به حساب نمیآید | پس از نصب در حافظه مخصوص برنامه ذخیره می شود | پس از دانلود مدل در حافظه مخصوص برنامه ذخیره شد |
اندازه مدل چگونه بر اندازه برنامه تأثیر می گذارد؟ | به اندازه برنامه کمک نمی کند | به طور مستقیم به اندازه برنامه کمک می کند | به اندازه برنامه کمک نمی کند، اما فضای ذخیره سازی خاص برنامه را افزایش می دهد |
چه زمانی مدل ها به روز می شوند؟ | هنگامی که نسخه جدیدتر منتشر می شود، به طور خودکار به روز می شود | برای بهروزرسانی مدل، باید برنامه را بهروزرسانی کنید | برای بهروزرسانی مدل، باید برنامه را بهروزرسانی کنید |
مدل ها چه زمانی دانلود می شوند؟ | مدل ها باید قبل از استفاده دانلود شوند | همه مدل ها و ویژگی ها در هنگام نصب برنامه گنجانده می شوند، بنابراین بلافاصله قابل استفاده هستند | دانلودها، بهروزرسانیها و حذفهای مدل باید بهصورت دستی با استفاده از RemoteModelManager API مدیریت شوند. |
چه زمانی مدل ها از دستگاه حذف می شوند؟ | خدمات Google Play تنها در صورتی مدل را از فضای ذخیرهسازی حذف میکند که همه برنامههای وابسته به مدل حذف نصب شوند | وقتی برنامه حذف نصب شود ، مدلها از فضای ذخیرهسازی مخصوص برنامه حذف میشوند | وقتی برنامه حذف نصب شود ، مدلهای دانلود شده از حافظه مخصوص برنامه حذف میشوند |
نحوه انتخاب بین بستهبندیشده و بدون بستهبندی
اگر یک API از هر دو گزینه نصب همراه و بدون بسته پشتیبانی می کند:
اگر اولویت دارید از گزینه bundled استفاده کنید:
- عملکرد ویژگی را بلافاصله پس از نصب برنامه کامل کنید
- قابلیت عملکرد بدون اتصال به شبکه پس از نصب برنامه
اگر اولویت دارید از گزینه unbundled استفاده کنید:
- اندازه برنامه کوچکتر
- به روز رسانی خودکار مدل توسط خدمات Google Play
چگونه مدل ها را دانلود کنیم
هنگام استفاده از گزینه مدل unbundled، می توانید تعیین کنید که چگونه می خواهید مدل ها در دستگاه بارگیری شوند:
میتوانید با افزودن یک اعلامیه به فایل
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 }
برنامه خود را بازسازی کنید
چرا برخی از API ها مدل های دانلود شده پویا را ارائه می دهند
برخی از ML Kit API گزینههای مدل بسیار زیادی برای بستهبندی دارند. به عنوان مثال، تشخیص جوهر دیجیتال از بیش از 300 زبان پشتیبانی میکند و همیشه لازم نیست که هر زبانی را در طول نصب در داخل ویژگی قرار دهید. برای این منظور، گزینه نصب سوم را ارائه می دهیم که در آن مدل ها پس از نصب به صورت درخواستی دانلود می شوند. در حال حاضر، فقط تشخیص جوهر دیجیتال ، ترجمه و استخراج نهاد این گزینه را دارند.