आपके पास AutoML से ट्रेनिंग वाले इमेज क्लासिफ़िकेशन मॉडल को कस्टम मॉडल एपीआई में पास करने का विकल्प होता है. मॉडल को अपने ऐप्लिकेशन में बंडल करना जारी रखें या Firebase कंसोल पर कस्टम मॉडल के तौर पर होस्ट करें. AutoML इमेज लेबलिंग एपीआई को एमएल किट से हटा दिया गया है, क्योंकि इसे पूरी तरह से कस्टम मॉडल इमेज लेबलिंग एपीआई से बदला गया है.
API | क्या बदलाव होने वाले हैं? |
---|---|
AutoML Vision Edge इमेज लेबल करने का एपीआई | यह कस्टम मॉडल इमेज लेबलिंग एपीआई से पूरी तरह बदल देता है. मौजूदा AutoML Vision Edge इमेज लेबलिंग एपीआई हटा दिया गया है. |
अगर आप ML Kit के उपयोगकर्ता हैं और AutoML Vision Edge API का इस्तेमाल कर रहे हैं, तो कृपया Android और iOS के लिए माइग्रेशन के निर्देशों का पालन करें.
अक्सर पूछे जाने वाले सवाल
यह बदलाव क्यों किया गया है?
इससे, ML Kit एपीआई को आसानी से इंटिग्रेट करने में मदद मिलती है. साथ ही, एमएल किट को आपके ऐप्लिकेशन में इंटिग्रेट करना आसान हो जाता है. इस बदलाव से, AutoML से ट्रेनिंग वाले मॉडल को कस्टम मॉडल की तरह ही इस्तेमाल किया जा सकता है. इससे आपको इमेज लेबलिंग के साथ-साथ, ऑब्जेक्ट की पहचान और ट्रैकिंग के लिए, AutoML के ट्रेनिंग वाले मॉडल इस्तेमाल करने की सुविधा भी मिलती है. फ़िलहाल, इन मॉडल की सुविधा उपलब्ध है. इसके अलावा, कस्टम मॉडल एपीआई, उन दोनों मॉडल के साथ काम करता है जिनके मेटाडेटा में लेबल मैप एम्बेड किया गया हो. साथ ही, यह उन दोनों मॉडल के साथ काम करता है जिनमें अलग-अलग मेनिफ़ेस्ट और लेबल फ़ाइलें हों.
नए SDK टूल पर माइग्रेट करने से मुझे क्या फ़ायदे मिलेंगे?
- नई सुविधाएं: इमेज लेबलिंग और ऑब्जेक्ट की पहचान और ट्रैकिंग, दोनों के लिए AutoML से ट्रेन किए गए मॉडल इस्तेमाल करने की सुविधा. साथ ही, मेटाडेटा में एम्बेड किए गए लेबल मैप वाले मॉडल इस्तेमाल करने की सुविधा.
Android के लिए, डेटा को दूसरी जगह भेजने से जुड़ी गाइड
पहला चरण: Gradle इंपोर्ट अपडेट करना
यहां दी गई टेबल के मुताबिक, अपने मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (आम तौर पर app/build.gradle
) में, ML Kit Android लाइब्रेरी के लिए डिपेंडेंसी अपडेट करें:
सुविधा | पुरानी कलाकृतियां | नया आर्टफ़ैक्ट |
---|---|---|
रिमोट मॉडल को डाउनलोड किए बिना इमेज को 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 com.google.mlkit:linkfirebase:17.0.0 |
दूसरा चरण: क्लास के नाम अपडेट करना
अगर आपकी क्लास इस टेबल में दिखती है, तो किए गए बदलाव करें:
पुरानी क्लास | नई क्लास |
---|---|
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.CustomRemoteModel |
com.google.mlkit.vision.label.automl.AutoMLImageLabelerOptions | com.google.mlkit.vision.label.custom.CustomImageLabelerOptions |
तीसरा चरण: तरीके के नाम अपडेट करना
इसमें बहुत कम कोड बदलाव होते हैं:
LocalModel
को अब मॉडल फ़ाइल पाथ (अगर मॉडल में लेबल मैप वाला मेटाडेटा है) या मॉडल मेनिफ़ेस्ट फ़ाइल पाथ (अगर मेनिफ़ेस्ट, मॉडल, और लेबल अलग-अलग फ़ाइलों में हों) से शुरू किया जा सकता है.- Firebase कंसोल की मदद से, कस्टम मॉडल को कहीं से भी होस्ट किया जा सकता है. साथ ही,
CustomRemoteModel
कोFirebaseModelSource
से शुरू किया जा सकता है.
यहां Kotlin के पुराने और नए तरीकों के कुछ उदाहरण दिए गए हैं:
ओल्ड
val localModel = AutoMLImageLabelerLocalModel.Builder() .setAssetFilePath("automl/manifest.json") // or .setAbsoluteFilePath(absolute file 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()
नए दर्शक
val localModel = LocalModel.Builder() .setAssetManifestFilePath("automl/manifest.json") // or .setAbsoluteManifestFilePath(absolute file path to manifest file) .build() val optionsWithLocalModel = CustomImageLabelerOptions.Builder(localModel) .setConfidenceThreshold(0.5f) .build() val firebaseModelSource = FirebaseModelSource.Builder("automl_remote_model") .build() val remoteModel = CustomRemoteModel.Builder(firebaseModelSource).build() val optionsWithRemoteModel = CustomImageLabelerOptions.Builder(remoteModel) .build()
यहां पुरानी और नई Java विधियों के कुछ उदाहरण दिए गए हैं:
ओल्ड
AutoMLImageLabelerLocalModel localModel = new AutoMLImageLabelerLocalModel.Builder() .setAssetFilePath("automl/manifest.json") // or .setAbsoluteFilePath(absolute file 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();
नए दर्शक
LocalModel localModel = new LocalModel.Builder() .setAssetManifestFilePath("automl/manifest.json") // or .setAbsoluteManifestFilePath(absolute file path to manifest file) .build() CustomImageLabelerOptions optionsWithLocalModel = new CustomImageLabelerOptions.Builder(localModel) .setConfidenceThreshold(0.5f) .build(); FirebaseModelSource firebaseModelSource = new FirebaseModelSource.Builder("automl_remote_model").build(); CustomRemoteModel remoteModel = new CustomRemoteModel.Builder(firebaseModelSource).build(); CustomImageLabelerOptions optionsWithRemoteModel = new CustomImageLabelerOptions.Builder(remoteModel).build();
iOS के लिए डेटा माइग्रेशन गाइड
ज़रूरी शर्तें
- Xcode 13.2.1 या उसके बाद का वर्शन होना ज़रूरी है.
पहला चरण: Cocoapods अपडेट करना
अपने ऐप्लिकेशन की Podfile में, ML Kit iOS कोको-पॉड के लिए डिपेंडेंसी अपडेट करें:
सुविधा | पुराने पॉड का नाम | नए पॉड का नाम |
---|---|---|
रिमोट मॉडल को डाउनलोड किए बिना इमेज को AutoML लेबल करने की अनुमति दें | GoogleMLKit/ImageLabelingAutoML | GoogleMLKit/ImageLabelingCustom |
रिमोट मॉडल डाउनलोड करने की सुविधा के साथ AutoML को लेबल करने वाली इमेज |
GoogleMLKit/ImageLabelingAutoML GoogleMLKit/LinkFirebase |
GoogleMLKit/ImageLabelingCustom GoogleMLKit/LinkFirebase |
दूसरा चरण: क्लास के नाम अपडेट करना
अगर आपकी क्लास इस टेबल में दिखती है, तो किए गए बदलाव करें:
Swift
पुरानी क्लास | नई क्लास |
---|---|
AutoMLImageLabelerLocalModel | LocalModel |
AutoMLImageLabelerRemoteModel | CustomRemoteModel |
AutoMLImageLabelerOptions | CustomImageLabelerOptions |
Objective-C
पुरानी क्लास | नई क्लास |
---|---|
MLKAutoMLImageLabelerLocalModel | MLKLocalModel |
MLKAutoMLImageLabelerRemoteModel | MLKCustomRemoteModel |
MLKAutoMLImageLabelerOptions | MLKCustomImageLabelerOptions |
Objective-C
तीसरा चरण: तरीके के नाम अपडेट करना
इसमें बहुत कम कोड बदलाव होते हैं:
LocalModel
को अब मॉडल फ़ाइल पाथ (अगर मॉडल में लेबल मैप वाला मेटाडेटा है) या मॉडल मेनिफ़ेस्ट फ़ाइल पाथ (अगर मेनिफ़ेस्ट, मॉडल, और लेबल अलग-अलग फ़ाइलों में हों) से शुरू किया जा सकता है.- Firebase कंसोल की मदद से, कस्टम मॉडल को कहीं से भी होस्ट किया जा सकता है. साथ ही,
CustomRemoteModel
कोFirebaseModelSource
से शुरू किया जा सकता है.
यहां 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)
नए दर्शक
guard let localModel = LocalModel(manifestPath: "automl/manifest.json") else { return } let optionsWithLocalModel = CustomImageLabelerOptions(localModel: localModel) let firebaseModelSource = FirebaseModelSource(name: "automl_remote_model") let remoteModel = CustomRemoteModel(remoteModelSource: firebaseModelSource) let optionsWithRemoteModel = CustomImageLabelerOptions(remoteModel: remoteModel)
यहां पुरानी और नए ऑब्जेक्टिव-सी तरीकों के कुछ उदाहरण दिए गए हैं:
ओल्ड
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];
नए दर्शक
MLKLocalModel *localModel = [[MLKLocalModel alloc] initWithManifestPath:"automl/manifest.json"]; MLKCustomImageLabelerOptions *optionsWithLocalModel = [[MLKCustomImageLabelerOptions alloc] initWithLocalModel:localModel]; MLKFirebaseModelSource *firebaseModelSource = [[MLKFirebaseModelSource alloc] initWithName:@"automl_remote_model"]; MLKCustomRemoteModel *remoteModel = [[MLKCustomRemoteModel alloc] initWithRemoteModelSource:firebaseModelSource]; MLKCustomImageLabelerOptions *optionsWithRemoteModel = [[MLKCustomImageLabelerOptions alloc] initWithRemoteModel:remoteModel];