در 3 ژوئن 2020، تغییراتی را در ML Kit for Firebase ایجاد کردیم تا APIهای روی دستگاه را بهتر از APIهای مبتنی بر ابر متمایز کنیم. مجموعه فعلی APIها اکنون به دو محصول زیر تقسیم شده است:
محصول جدیدی که به سادگی ML Kit نامیده میشود، که شامل تمام APIهای روی دستگاه است
Firebase Machine Learning ، متمرکز بر API های مبتنی بر ابر و استقرار مدل های سفارشی.
این تغییر همچنین ادغام ML Kit را در برنامه شما آسان تر می کند اگر فقط به یک راه حل روی دستگاه نیاز دارید. این سند نحوه انتقال برنامه خود را از Firebase ML Kit SDK به جدید ML Kit SDK توضیح می دهد.
چه چیزی در حال تغییر است؟
APIهای مبتنی بر دستگاه
APIهای زیر به کیت SDK مستقل ML منتقل شدهاند.
- اسکن بارکد
- شناسایی چهره
- برچسب گذاری تصویر
- تشخیص و ردیابی اشیاء
- تشخیص متن
- شناسه زبان
- پاسخ هوشمند
- ترجمه کردن
- API استنتاج AutoML Vision Edge
APIهای پایه روی دستگاه موجود در کیت ML برای Firebase SDK منسوخ شدهاند و دیگر بهروزرسانی دریافت نخواهند کرد.
اگر امروز از این APIها در برنامه خود استفاده می کنید، لطفاً با دنبال کردن راهنمای انتقال ML Kit برای Android و راهنمای انتقال ML Kit برای iOS ، به ML Kit SDK جدید مهاجرت کنید.
APIهای مدل سفارشی
برای دانلود مدلهای میزبانی شده در Firebase، دانلودکننده مدل سفارشی همچنان از طریق Firebase ML SDK ارائه میشود. SDK آخرین مدل موجود را واکشی می کند و آن را برای استنباط به زمان اجرا جداگانه TensorFlow Lite می دهد.
مفسر مدل سفارشی موجود در کیت ML برای Firebase SDK منسوخ شده است و دیگر بهروزرسانیها را دریافت نخواهد کرد. توصیه می کنیم از زمان اجرا TensorFlow Lite به طور مستقیم برای استنتاج استفاده کنید. از طرف دیگر، اگر فقط میخواهید از مدلهای سفارشی برای برچسبگذاری تصویر و شناسایی و ردیابی اشیا API استفاده کنید، اکنون میتوانید از مدلهای سفارشی در این APIها در ML Kit استفاده کنید.
برای دستورالعمل های دقیق به راهنمای مهاجرت برای Android و iOS مراجعه کنید.
چه چیزی تغییر نکرده است؟
APIها و خدمات مبتنی بر ابر همچنان با Firebase ML ارائه خواهند شد:
APIهای برچسبگذاری تصویر مبتنی بر ابر، تشخیص متن و تشخیص نقطه عطف همچنان از Firebase ML SDK در دسترس هستند.
Firebase ML همچنین به ارائه استقرار مدل ادامه می دهد
سوالات متداول
چرا این تغییر؟
ما این تغییر را انجام می دهیم تا مشخص کنیم محصول چه راه حل هایی ارائه می دهد. با این تغییر، کیت SDK جدید ML کاملاً بر یادگیری ماشین روی دستگاه متمرکز شده است که در آن تمام پردازش داده ها در دستگاه انجام می شود و بدون هیچ هزینه ای در دسترس توسعه دهندگان است. سرویسهای ابری که قبلاً بخشی از Firebase ML Kit بودند از طریق Firebase ML در دسترس باقی میمانند و همچنان میتوانید از آنها به موازات APIهای ML Kit استفاده کنید.
برای APIهای روی دستگاه، ML Kit SDK جدید، ادغام کیت ML را در برنامه خود برای توسعه دهندگان آسانتر میکند. در ادامه، فقط باید وابستگی هایی را به پروژه برنامه اضافه کنید و سپس شروع به استفاده از API کنید. فقط برای استفاده از APIهای روی دستگاه نیازی به راه اندازی پروژه Firebase نیست.
چه اتفاقی برای مدلهای من میافتد که با Firebase میزبانی میشوند؟
Firebase Machine Learning به خدمات مدل های شما مانند قبل ادامه خواهد داد. این عملکرد تغییر نمی کند. در اینجا چند بهبود وجود دارد:
اکنون می توانید مدل های خود را با استفاده از Python یا Node SDK به صورت برنامه نویسی در Firebase مستقر کنید.
اکنون میتوانید از Firebase ML SDK در ارتباط با زمان اجرا TensorFlow Lite استفاده کنید. Firebase SDK مدل را در دستگاه دانلود می کند و زمان اجرا TensorFlow Lite نتیجه گیری را انجام می دهد. این به شما امکان می دهد به راحتی نسخه زمان اجرا مورد نظر خود را انتخاب کنید، از جمله ساخت سفارشی.
از مهاجرت به کیت SDK جدید ML چه مزایایی میبرم؟
مهاجرت به SDK جدید تضمین میکند که برنامههای شما از آخرین رفع اشکال و بهبودهای APIهای روی دستگاه بهره میبرند. به عنوان مثال، در اینجا چند تغییر در نسخه اول وجود دارد:
اکنون میتوانید از برچسبگذاری تصویر سفارشی جدید و APIهای تشخیص و ردیابی شی سفارشی استفاده کنید تا به راحتی مدلهای طبقهبندی تصویر سفارشی را در برنامههای خود ادغام کنید و تجربههای تعاملی کاربر را در زمان واقعی ایجاد کنید.
پشتیبانی از Android Jetpack Lifecycle به همه API ها اضافه شده است. اکنون میتوانید از
addObserver
برای مدیریت خودکار شروع و حذف APIهای ML Kit با چرخش یا بسته شدن برنامه توسط کاربر / سیستم استفاده کنید. این کار ادغام با CameraX را آسان تر می کند.
فهرست کاملی از آخرین تغییرات را میتوانید در یادداشتهای انتشار ML Kit SDK بیابید.
من امروز از کیت ML برای Firebase استفاده می کنم، چه زمانی باید مهاجرت کنم؟
این بستگی به این دارد که در حال حاضر از کدام ML Kit برای APIهای Firebase در برنامه خود استفاده می کنید.
APIهای پایه روی دستگاه در کیت ML برای Firebase SDK تا آینده قابل پیشبینی به کار خود ادامه خواهند داد. با این حال، با به تاخیر انداختن تغییر به کیت SDK جدید ML، از ویژگی ها و به روز رسانی های جدید بهره نخواهید برد. علاوه بر این، هنگامی که سایر مؤلفهها را در برنامه خود بهروزرسانی میکنید، این خطر وجود دارد که با درگیریهای وابستگی مواجه شوید. این می تواند زمانی اتفاق بیفتد که برخی از وابستگی های دیگر شما (مستقیم یا غیرمستقیم) جدیدتر از وابستگی های قدیمی ML Kit برای Firebase SDK باشند. نمونههایی از کتابخانههایی که ممکن است این اتفاق بیفتد OkHttp و firebase-common هستند.
اگر از Cloud API از طریق کیت ML برای Firebase SDK استفاده می کنید، در حال حاضر نیازی به تغییر نیست.
اگر از استقرار مدل سفارشی استفاده میکنید، توصیه میکنیم به آخرین نسخه ارتقا دهید که اجازه میدهد استنتاجها را مستقیماً در زمان اجرا TensorFlow Lite اجرا کنید.