Android पर ML किट मॉडल को इंस्टॉल करने के पाथ

सभी एमएल किट की सुविधाएं, डिफ़ॉल्ट रूप से Google के प्रशिक्षित मशीन लर्निंग मॉडल का इस्तेमाल करती हैं. इन मॉडल को बेस मॉडल कहा जाता है. यह गाइड सिर्फ़ बेस मॉडल पर लागू होती है. कस्टम मॉडल के बारे में दिशा-निर्देश पाने के लिए यहां देखें.

ML Kit API के मॉडल, इन तीन में से किसी एक तरीके से इंस्टॉल किए जा सकते हैं:

  1. बंडल नहीं किया गया: मॉडल, Google Play services से डाउनलोड और मैनेज किए जाते हैं.
  2. बंडल किया गया: मॉडल, बिल्ड टाइम पर आपके ऐप्लिकेशन से स्टैटिक तौर पर लिंक होते हैं.
  3. डाइनैमिक रूप से डाउनलोड किए गए: मॉडल, मांग पर डाउनलोड किए जाते हैं.

हर एपीआई के लिए, इंस्टॉल किए जा सकने वाले पाथ

नीचे दी गई टेबल से पता चलता है कि हर एमएल किट सुविधा के साथ, कौनसा मॉडल इंस्टॉलेशन पाथ काम करता है:

बंडल नहीं किया गया बंडल किया गया डाइनैमिक रूप से डाउनलोड किया गया
टेक्स्ट की पहचान करने वाला v2
चेहरे की पहचान करना
फ़ेस मेश की पहचान करना
पोज़ की पहचान
सेल्फ़ी सेगमेंटेशन
बारकोड स्कैन करना
इमेज को लेबल करना
ऑब्जेक्ट की पहचान और ट्रैकिंग
डिजिटल इंक की पहचान
Google कोड स्कैनर
भाषा की पहचान
Translation
स्मार्ट जवाब
इकाई का एक्सट्रैक्शन

एपीआई की खास गाइड से पता चलता है कि किसी एपीआई के लिए, इंस्टॉल करने के कौनसे विकल्प उपलब्ध हैं.

इंस्टॉल करने के विकल्पों में मुख्य अंतर

अनबंडल किया गया बंडल किया गया डाइनैमिक रूप से डाउनलोड किया गया
मॉडल कहां स्टोर किए जाते हैं? यह सुविधा Google Play services में शामिल है और इसे इस ऐप्लिकेशन में इस्तेमाल किए गए स्टोरेज में नहीं गिना जाता इंस्टॉलेशन के बाद ऐप्लिकेशन के लिए खास स्टोरेज में सेव किया जाता है मॉडल डाउनलोड होने के बाद, ऐप्लिकेशन के लिए खास स्टोरेज में सेव किया जाता है
मॉडल का साइज़, ऐप्लिकेशन के साइज़ पर कैसे असर डालता है? ऐप्लिकेशन के साइज़ पर असर नहीं पड़ता ऐप्लिकेशन के साइज़ में सीधे तौर पर योगदान देता है ऐप्लिकेशन के साइज़ पर असर नहीं डालता, लेकिन ऐप्लिकेशन के लिए खास स्टोरेज बढ़ाता है
मॉडल कब अपडेट किए जाते हैं? नया वर्शन रिलीज़ होने पर अपने-आप अपडेट हो जाता है मॉडल को अपडेट करने के लिए ऐप्लिकेशन को अपडेट करना होगा मॉडल को अपडेट करने के लिए ऐप्लिकेशन को अपडेट करना होगा
मॉडल कब डाउनलोड किए जाते हैं? इस्तेमाल करने से पहले मॉडल डाउनलोड करने होंगे ऐप्लिकेशन इंस्टॉल होने के दौरान, सभी मॉडल और सुविधाएं शामिल हो जाती हैं. इसलिए, इन सुविधाओं का तुरंत इस्तेमाल किया जा सकता है RemoteModelManager एपीआई का इस्तेमाल करके, मॉडल के डाउनलोड, अपडेट, और मिटाए जाने की जानकारी को मैन्युअल रूप से मैनेज किया जाना चाहिए
डिवाइस से मॉडल कब हटाए जाते हैं? Google Play services, आपके स्टोरेज को सिर्फ़ तब अनइंस्टॉल करेगा, जब मॉडल से जुड़े सभी ऐप्लिकेशन अनइंस्टॉल कर दिए जाएंगे जब ऐप्लिकेशन अनइंस्टॉल किया जाता है, तो ऐप्लिकेशन के लिए खास स्टोरेज से मॉडल हटा दिए जाते हैं जब ऐप्लिकेशन अनइंस्टॉल किया जाता है, तब ऐप्लिकेशन के लिए खास स्टोरेज से, डाउनलोड किए गए मॉडल हटा दिए जाते हैं

बंडल और अनबंडल किए गए में से कैसे चुनें

अगर एपीआई बंडल किए गए और अनबंडल किए गए इंस्टॉलेशन के विकल्पों के साथ काम करता है, तो:

  • बंडल किए गए विकल्प का इस्तेमाल करें, अगर:

    • ऐप्लिकेशन इंस्टॉल करने के तुरंत बाद, सुविधा को पूरा करें
    • ऐप्लिकेशन इंस्टॉल करने के बाद, बिना इंटरनेट कनेक्शन के सुविधा के फ़ंक्शन
  • अगर आप प्राथमिकता दें, तो बंडल नहीं किए गए विकल्प का इस्तेमाल करें:

    • ऐप्लिकेशन का साइज़ छोटा करें
    • Google Play services के अपने-आप अपडेट होने वाले मॉडल

मॉडल डाउनलोड करने का तरीका

अनबंडल किए गए मॉडल विकल्प का इस्तेमाल करते समय, आप यह बता सकते हैं कि डिवाइस में मॉडल किस तरह डाउनलोड हों:

  • आप अपने ऐप्लिकेशन की AndroidManifest.xml फ़ाइल में एक एलान जोड़कर, इंस्टॉल के समय पर मॉडल डाउनलोड करने की सुविधा चालू कर सकते हैं. उदाहरण के लिए, नीचे दिया गया कोड स्निपेट दिखता है कि Play Store से आपके ऐप्लिकेशन को इंस्टॉल करने के बाद, बारकोड स्कैन करने वाले मॉडल को अपने-आप डाउनलोड करने के लिए, अपना ऐप्लिकेशन कैसे कॉन्फ़िगर करें:

    <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 के ज़रिए, साफ़ तौर पर डाउनलोड करने का अनुरोध कर सकते हैं.

  • अगर आपने इंस्टॉल के समय मॉडल डाउनलोड चालू नहीं किया है या अश्लील डाउनलोड का अनुरोध किया है, तो पहली बार सुविधा चलाने पर मॉडल डाउनलोड किया जाएगा. डाउनलोड पूरा होने तक, अनुमानों के लिए अनुरोध नहीं किए जा सकेंगे.

मॉडल अपडेट करने का तरीका

बंडल किए गए मॉडल या डाइनैमिक रूप से डाउनलोड किए गए मॉडल विकल्प का इस्तेमाल करते समय अपने मॉडल अपडेट करने के लिए:

  1. नई एमएल किट सुविधा क्लाइंट लाइब्रेरी का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन की ग्रेडल फ़ाइल अपडेट करें.

    dependencies {
      implementation 'com.google.mlkit:barcode-scanning: 17.2.0' // The latest version number of the API
    }
    
  2. अपना ऐप्लिकेशन फिर से बनाएं.

कुछ एपीआई, डाइनैमिक तौर पर डाउनलोड किए गए मॉडल क्यों ऑफ़र करते हैं

कुछ ML Kit API में बंडल करने के लिए, कई मॉडल विकल्प हैं. उदाहरण के लिए, डिजिटल इंक की पहचान 300 से ज़्यादा भाषाओं में काम करती है. यह ज़रूरी नहीं है कि इंस्टॉलेशन के दौरान इस सुविधा में हर भाषा को शामिल किया जाए. इस मकसद से, हम इंस्टॉल करने का तीसरा विकल्प देते हैं. इसमें, इंस्टॉल करने के बाद मॉडल की मांग पर डाउनलोड किया जाता है. फ़िलहाल, सिर्फ़ डिजिटल इंक की पहचान, अनुवाद, और इकाई निकालने का विकल्प मौजूद है.