میتوانید مدل طبقهبندی تصویر آموزشدیده AutoML را به میاناهای برنامهسازی کاربردی مدل سفارشی منتقل کنید. میتوانید همچنان مدل را در برنامهتان بستهبندی کنید یا آن را بهعنوان مدل سفارشی در «کنسول Firebase» میزبانی کنید. میانای برنامهسازی کاربردی برچسبگذاری تصویر AutoML از ML Kit برداشته شده است زیرا میانای برنامهسازی کاربردی برچسبگذاری تصویر مدل سفارشی کاملاً جایگزین آن شده است.
| میانای برنامهسازی کاربردی | چه مواردی تغییر میکند؟ |
|---|---|
| AutoML Vision Edge image labeling API | این API کاملاً با API برچسبگذاری تصویر «مدل سفارشی» جایگزین شده است. میانای برنامهسازی کاربردی برچسبگذاری تصویر AutoML Vision Edge موجود برداشته شده است. |
اگر از AutoML Vision Edge API استفاده میکنید، دستورالعملهای انتقال را برای Android و iOS دنبال کنید.
پرسشگان
چرا این تغییر؟
این کار به سادهسازی میاناهای برنامهسازی کاربردی ML Kit کمک میکند و ادغام ML Kit را در برنامهتان آسانتر میکند. با این تغییر، میتوانید از مدل آموزشدیده AutoML دقیقاً به همان روش مدل سفارشی استفاده کنید. همچنین به شما امکان میدهد از مدلهای آموزشدیده AutoML برای «تشخیص و ردیابی اشیا» استفاده کنید، علاوهبر «برچسبگذاری تصویر» که از آن پشتیبانی میکنیم. علاوهبراین، میانای برنامهسازی کاربردی مدل سفارشی از هر دو مدل با نقشه برچسب جاسازیشده در فراداده آن، و مدلهایی با مانیفست و فایلهای برچسب جداگانه پشتیبانی میکند.
انتقال به کیت توسعه نرمافزار جدید چه مزایایی برای من دارد؟
- ویژگیهای جدید: امکان استفاده از مدلهای آموزشدیده AutoML برای «برچسبگذاری تصویر» و «تشخیص و ردیابی شیء» و امکان استفاده از مدلهایی با نقشه برچسب جاسازیشده در فراداده آن.
راهنمای انتقال برای Android
مرحله ۱: بهروزرسانی واردات Gradle
وابستگیهای کتابخانههای Android «کیت یادگیری ماشین» را در فایل Gradle (سطح برنامه) ماژول خود (معمولاً app/build.gradle.kts) طبق جدول زیر بهروز کنید:
| ویژگی | آرتیفکتهای قدیمی | خروجی ساختاریافته جدید |
|---|---|---|
| برچسبگذاری تصویر AutoML بدون بارگیری مدل از راه دور | com.google.mlkit:image-labeling-automl:16.2.1 | com.google.mlkit:image-labeling-custom:16.0.0-beta5 |
| AutoML برچسبگذاری تصویر با بارگیری مدل از راه دور |
com.google.mlkit:image-labeling-automl:16.2.1 com.google.mlkit:linkfirebase:16.0.1 |
com.google.mlkit:image-labeling-custom:16.0.0-beta5 برای میزبانی و بارگیری مدلهای سفارشی، مدلهایتان را به Cloud Storage منتقل کنید و منطق بارگیری را در برنامهتان اضافه کنید تا آنها را بااستفاده از LocalModel بار کنید. برای جزئیات، [راهنمای انتقال Firebase ML به Cloud Storage][migrate-storage] را ببینید. |
مرحله ۲: بهروزرسانی نام کلاسها
اگر کلاس شما در این جدول نشان داده میشود، تغییرات مشخصشده را اعمال کنید:
| کلاس قدیمی | کلاس جدید |
|---|---|
| com.google.mlkit.vision.label.automl.AutoMLImageLabelerLocalModel | com.google.mlkit.common.model.LocalModel |
| com.google.mlkit.vision.label.automl.AutoMLImageLabelerRemoteModel |
com.google.mlkit.common.model.LocalModel برنامه شما باید منطقی برای بارگیری مدلهای میزبانیشده از راه دور و مقداردهی اولیه آنها بااستفاده از LocalModel داشته باشد. |
| com.google.mlkit.vision.label.automl.AutoMLImageLabelerOptions | com.google.mlkit.vision.label.custom.CustomImageLabelerOptions |
مرحله ۳: بهروزرسانی نامهای روش
تغییرات کد حداقل است:
LocalModelاکنون میتواند با مسیر مدل (اگر مدل دارای فراداده حاوی نقشه برچسب باشد) یا مسیر مانیفست مدل (اگر مانیفست، مدل، و برچسبها در فایلهای جداگانه باشند) مقداردهی اولیه شود.- منطقی به برنامهتان اضافه کنید تا مدلهای میزبانیشده ازراهدور را در فضای ذخیرهسازی محلی بارگیری کند و آنها را بااستفاده از
LocalModelبار کند.
در اینجا چند نمونه از روشهای قدیمی و جدید Kotlin آورده شده است:
قدیمی
val localModel = AutoMLImageLabelerLocalModel.Builder() .setAssetFilePath("automl/manifest.json") // or .setAbsoluteFilePath(absolute path to manifest file) .build() val optionsWithLocalModel = AutoMLImageLabelerOptions.Builder(localModel) .setConfidenceThreshold(0.5f) .build() val remoteModel = AutoMLImageLabelerRemoteModel.Builder("automl_remote_model") .build() val optionsWithRemoteModel = AutoMLImageLabelerOptions.Builder(remoteModel) .build()
جدید
// Similar process for both local and remotely-hosted models (that have been downloaded) val localModel = LocalModel.Builder() .setAssetManifestFilePath("automl/manifest.json") // or .setAbsoluteManifestFilePath(absolute path to manifest file) .build() val optionsWithLocalModel = CustomImageLabelerOptions.Builder(localModel) .setConfidenceThreshold(0.5f) .build()
در اینجا چند نمونه از روشهای قدیمی و جدید Java آورده شده است:
قدیمی
AutoMLImageLabelerLocalModel localModel = new AutoMLImageLabelerLocalModel.Builder() .setAssetFilePath("automl/manifest.json") // or .setAbsoluteFilePath(absolute path to manifest file) .build(); AutoMLImageLabelerOptions optionsWithLocalModel = new AutoMLImageLabelerOptions.Builder(localModel) .setConfidenceThreshold(0.5f) .build(); AutoMLImageLabelerRemoteModel remoteModel = new AutoMLImageLabelerRemoteModel.Builder("automl_remote_model").build(); AutoMLImageLabelerOptions optionsWithRemoteModel = new AutoMLImageLabelerOptions.Builder(remoteModel) .build();
جدید
// Similar process for local models and remotely-hosted models (that have been downloaded) LocalModel localModel = new LocalModel.Builder() .setAssetManifestFilePath("automl/manifest.json") // or .setAbsoluteManifestFilePath(absolute path to manifest file) .build(); CustomImageLabelerOptions optionsWithLocalModel = new CustomImageLabelerOptions.Builder(localModel) .setConfidenceThreshold(0.5f) .build();
راهنمای انتقال برای iOS
پیشنیازها
- Xcode نسخه ۱۳.۲.۱ یا بالاتر لازم است.
مرحله ۱: Cocoapods را بهروز کنید
وابستگیهای ML Kit iOS cocoapods را در Podfile برنامهتان بهروز کنید:
| ویژگی | نام(های) قدیمی آگهیهای دستهای | نام(های) پاد جدید |
|---|---|---|
| برچسبگذاری تصویر AutoML بدون بارگیری مدل از راه دور | GoogleMLKit/ImageLabelingAutoML | GoogleMLKit/ImageLabelingCustom |
| AutoML برچسبگذاری تصویر با بارگیری مدل از راه دور |
GoogleMLKit/ImageLabelingAutoML GoogleMLKit/LinkFirebase |
GoogleMLKit/ImageLabelingCustom برای میزبانی و بارگیری مدلهای سفارشی، مدلهایتان را به Cloud Storage منتقل کنید و منطق بارگیری را به برنامهتان اضافه کنید تا آنها را بهعنوان مدلهای محلی بار کند. برای جزئیات، [راهنمای انتقال Firebase ML به Cloud Storage][migrate-storage] را ببینید. |
مرحله ۲: بهروزرسانی نام کلاسها
اگر کلاس شما در این جدول نشان داده میشود، تغییرات مشخصشده را اعمال کنید:
Swift
| کلاس قدیمی | کلاس جدید |
|---|---|
| AutoMLImageLabelerLocalModel | LocalModel |
| AutoMLImageLabelerRemoteModel |
LocalModel برای میزبانی و بارگیری مدلهای سفارشی، مدلهایتان را به Cloud Storage منتقل کنید و منطق بارگیری را به برنامهتان اضافه کنید تا آنها را بهعنوان مدلهای محلی بار کند. برای جزئیات، [راهنمای انتقال Firebase ML به Cloud Storage][migrate-storage] را ببینید. |
| AutoMLImageLabelerOptions | CustomImageLabelerOptions |
آبجکتیو-سی
| کلاس قدیمی | کلاس جدید |
|---|---|
| MLKAutoMLImageLabelerLocalModel | MLKLocalModel |
| MLKAutoMLImageLabelerRemoteModel |
MLKLocalModel برای میزبانی و بارگیری مدلهای سفارشی، مدلهایتان را به Cloud Storage منتقل کنید و منطق بارگیری را به برنامهتان اضافه کنید تا آنها را بهعنوان مدلهای محلی بار کند. برای جزئیات، [راهنمای انتقال Firebase ML به Cloud Storage][migrate-storage] را ببینید. |
| MLKAutoMLImageLabelerOptions | MLKCustomImageLabelerOptions |
مرحله ۳: بهروزرسانی نامهای روش
تغییرات کد حداقل است:
LocalModelاکنون میتواند با مسیر مدل (اگر مدل دارای فراداده حاوی نقشه برچسب باشد) یا مسیر مانیفست مدل (اگر مانیفست، مدل، و برچسبها در فایلهای جداگانه باشند) مقداردهی اولیه شود.- منطقی به برنامهتان اضافه کنید تا مدلهای میزبانیشده ازراهدور را در فضای ذخیرهسازی محلی بارگیری کند و آنها را بااستفاده از
LocalModelبار کند.
در اینجا چند نمونه از روشهای قدیمی و جدید Swift آورده شده است:
قدیمی
let localModel =
AutoMLImageLabelerLocalModel(manifestPath: "automl/manifest.json")
let optionsWithLocalModel = AutoMLImageLabelerOptions(localModel: localModel)
let remoteModel = AutoMLImageLabelerRemoteModel(name: "automl_remote_model")
let optionsWithRemoteModel = AutoMLImageLabelerOptions(remoteModel: remoteModel)جدید
// Similar process for local models and remotely-hosted models (that have been downloaded) guard let localModel = LocalModel(manifestPath: "automl/manifest.json") else { return } let optionsWithLocalModel = CustomImageLabelerOptions(localModel: localModel)
در اینجا چند نمونه از روشهای قدیمی و جدید Objective-C آورده شده است:
قدیمی
MLKAutoMLImageLabelerLocalModel *localModel = [[MLKAutoMLImageLabelerLocalModel alloc] initWithManifestPath:"automl/manifest.json"]; MLKAutoMLImageLabelerOptions *optionsWithLocalModel = [[MLKAutoMLImageLabelerOptions alloc] initWithLocalModel:localModel]; MLKAutoMLImageLabelerRemoteModel *remoteModel = [[MLKAutoMLImageLabelerRemoteModel alloc] initWithManifestPath:"automl/manifest.json"]; MLKAutoMLImageLabelerOptions *optionsWithRemoteModel = [[MLKAutoMLImageLabelerOptions alloc] initWithRemoteModel:remoteModel];
جدید
// Similar process for local models and remotely-hosted models (that have been downloaded) MLKLocalModel *localModel = [[MLKLocalModel alloc] initWithManifestPath:"automl/manifest.json"]; MLKCustomImageLabelerOptions *optionsWithLocalModel = [[MLKCustomImageLabelerOptions alloc] initWithLocalModel:localModel];