Android के लिए सेटअप गाइड

इस पेज में, MediaPipe का इस्तेमाल करने के लिए डेवलपमेंट एनवायरमेंट को सेट अप करने का तरीका बताया गया है आपके Android ऐप्लिकेशन में Tasks.

ऐसे डिवाइस और प्लैटफ़ॉर्म जिन पर यह सुविधा काम करती है

MediaPipe Tasks के साथ Android ऐप्लिकेशन बनाने के लिए, आपका डेवलपमेंट एनवायरमेंट के लिए इन चीज़ों की ज़रूरत होती है:

  • Android Studio पर, कम से कम 2021.1.1 (Bumblebee) का सुझाया गया वर्शन या अन्य वर्शन जो साथ काम करता हो आईडीई.
  • Android SDK का 24 या इसके बाद वाला वर्शन
  • ऐसा Android डिवाइस जिसमें SDK टूल का वर्शन कम से कम हो. Android एम्युलेटर ऐसा हो सकता है कि यह सुविधा सभी टास्क के लिए काम न करे.

डेवलपर एनवायरमेंट का सेटअप

Android ऐप्लिकेशन पर MediaPipe टास्क चलाने से पहले, आपके पास किसी मौजूदा ऐप्लिकेशन का इस्तेमाल करें या अपने कंप्यूटर पर नया Android Studio प्रोजेक्ट बनाएं. MediaPipe, डेटा में फ़िट हो जाता है लेयर, इसमें ऐप्लिकेशन का डेटा और कारोबार से जुड़े नियम शामिल होते हैं. अगर आपको ज़्यादा जानकारी चाहिए, तो Android ऐप्लिकेशन का आर्किटेक्चर, ऐप्लिकेशन के लिए गाइड देखें आर्किटेक्चर चुनें.

Android डिवाइस सेटअप

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

जिन कामों के लिए डिवाइस के कैमरे या माइक्रोफ़ोन की ज़रूरत नहीं होती उनके लिए, किसी फ़िज़िकल Android डिवाइस के बजाय, Android डिवाइस एम्युलेटर. निर्देशों के लिए ज़्यादा जानकारी के लिए, Android Emulator सेट अप करने के बारे में जानने के लिए, एम्युलेटर.

कोड सेटअप करने का उदाहरण

MediaPipe उदाहरण रिपॉज़िटरी में हर MediaPipe टास्क के लिए, Android ऐप्लिकेशन के उदाहरण शामिल हैं. आपके पास प्रोजेक्ट बनाएं, प्रोजेक्ट बनाएं, और फिर उसे चलाएं.

उदाहरण के तौर पर दिया गया कोड प्रोजेक्ट इंपोर्ट करने और बनाने के लिए:

  1. Android Studio शुरू करें.
  2. Android Studio से, फ़ाइल > नया > प्रोजेक्ट इंपोर्ट करें.
  3. उदाहरण के तौर पर दी गई उस कोड डायरेक्ट्री पर जाएं जिसमें build.gradle फ़ाइल शामिल है और उस डायरेक्ट्री को चुनें, उदाहरण के लिए: .../mediapipe/examples/text_classification/android/build.gradle
  4. अगर Android Studio, Gradle सिंक का अनुरोध करता है, तो ठीक है को चुनें.
  5. पक्का करें कि आपका Android डिवाइस, आपके कंप्यूटर और डेवलपर से कनेक्ट हो मोड चालू है. हरे रंग के Run ऐरो पर क्लिक करें.

अगर सही डायरेक्ट्री चुनी जाती है, तो Android Studio एक नया प्रोजेक्ट बनाता है और बनाता है. इस प्रक्रिया में कुछ मिनट लग सकते हैं. यह समय पर आपकी और अगर आपने दूसरे प्रोजेक्ट के लिए Android Studio का इस्तेमाल किया है. जब बिल्ड पूरा हो जाता है, तो Android StudioBUILD SUCCESSFUL आउटपुट बनाएं स्थिति पैनल.

प्रोजेक्ट चलाने के लिए:

  1. Android Studio में, Run > चलाएं....
  2. ऐप्लिकेशन की जांच करने के लिए, अटैच किया गया Android डिवाइस (या एम्युलेटर) चुनें.

MediaPipe Tasks डिपेंडेंसी

MediaPipe Tasks, विज़न, टेक्स्ट, और ऑडियो के लिए पहले से बनी तीन लाइब्रेरी उपलब्ध कराता है. कॉन्टेंट बनाने .tflite मॉडल फ़ाइल, Android की ऐसेट डायरेक्ट्री में मौजूद होनी चाहिए जो मॉडल का इस्तेमाल करता है. ऐप्लिकेशन में इस्तेमाल किए गए MediaPipe Tasks के आधार पर, आपके पास विज़न, टेक्स्ट या ऑडियो लाइब्रेरी होनी चाहिए. build.gradle फ़ाइल.

जनरेटिव एआई के टास्क

MediaPipe Tasks जनरेटिव एआई लाइब्रेरी में ऐसे टास्क होते हैं जो इमेज या टेक्स्ट जनरेट करने के लिए किया जा सकता है. MediaPipe Tasks जनरेटिव एआई लाइब्रेरी को Android Studio, अपनी build.gradle फ़ाइल में डिपेंडेंसी जोड़ें.

इमेज जनरेटर

MediaPipe इमेज जनरेटर टास्क, tasks-vision-image-generator लाइब्रेरी. डिपेंडेंसी को इस पर जोड़ें build.gradle फ़ाइल:

dependencies {
    implementation 'com.google.mediapipe:tasks-vision-image-generator:latest.release'
}

एलएलएम इन्फ़्रेंस एपीआई

MediaPipe एलएलएम के अनुमान का टास्क, tasks-genai में शामिल है लाइब्रेरी. अपनी build.gradle फ़ाइल पर डिपेंडेंसी जोड़ें:

dependencies {
    implementation 'com.google.mediapipe:tasks-genai:latest.release'
}

विज़न टास्क

MediaPipe Tasks विज़न लाइब्रेरी में टास्क, इमेज या वीडियो को हैंडल करते हैं इनपुट. Android Studio में MediaPipe Tasks विज़न लाइब्रेरी इंपोर्ट करने के लिए, ये आपकी build.gradle फ़ाइल पर निर्भर करती हैं:

dependencies {
    implementation 'com.google.mediapipe:tasks-vision:latest.release'
}

टेक्स्ट से जुड़े टास्क

MediaPipe Tasks की टेक्स्ट लाइब्रेरी में ऐसे टास्क होते हैं जो टेक्स्ट फ़ॉर्मैट में एक्सपोर्ट करना होगा. Android Studio में MediaPipe Tasks टेक्स्ट लाइब्रेरी इंपोर्ट करने के लिए, आपकी build.gradle फ़ाइल पर ये डिपेंडेंसी:

dependencies {
    implementation 'com.google.mediapipe:tasks-text:latest.release'
}

ऑडियो टास्क

MediaPipe Tasks की ऑडियो लाइब्रेरी में ऐसे टास्क होते हैं जो साउंड इनपुट को हैंडल करते हैं. यहां की यात्रा पर हूं Android Studio में MediaPipe Tasks ऑडियो लाइब्रेरी इंपोर्ट करें. साथ ही, इन्हें जोड़ें आपकी build.gradle फ़ाइल पर डिपेंडेंसी:

dependencies {
    implementation 'com.google.mediapipe:tasks-audio:latest.release'
}

BaseOptions कॉन्फ़िगरेशन

BaseOptions, MediaPipe Task API के सामान्य कॉन्फ़िगरेशन की अनुमति देता है.

विकल्प का नाम ब्यौरा मंज़ूर की गई वैल्यू
modelAssetBuffer मॉडल ऐसेट फ़ाइल का कॉन्टेंट, डायरेक्ट ByteBuffer या MappedByteBuffer के तौर पर होता है. स्ट्रिंग के तौर पर ByteBuffer या MappedByteBuffer
modelAssetPath Android ऐप्लिकेशन ऐसेट फ़ोल्डर में किसी मॉडल ऐसेट फ़ाइल का मॉडल पाथ. स्ट्रिंग के तौर पर फ़ाइल पाथ
modelAssetFileDescriptor किसी मॉडल ऐसेट फ़ाइल का नेटिव फ़ाइल डिस्क्रिप्टर पूर्णांक. फ़ाइल डिस्क्रिप्टर के बारे में बताने वाला पूर्णांक
Delegate MediaPipe पाइपलाइन को चलाने के लिए प्रतिनिधि डिवाइस के ज़रिए हार्डवेयर त्वरण को सक्षम करता है. डिफ़ॉल्ट वैल्यू: CPU. [CPU,
GPU]

हार्डवेयर की मदद से तेज़ी लाने की सुविधा

MediaPipe Tasks, फ़ाइलों को चलाने के लिए ग्राफ़िक प्रोसेसिंग यूनिट (जीपीयू) के इस्तेमाल के साथ काम करता है मशीन लर्निंग मॉडल. Android डिवाइस पर, आप इनका इस्तेमाल चालू कर सकते हैं डेलिगेट का इस्तेमाल करके आपके मॉडल को जीपीयू से तेज़ी से एक्ज़ीक्यूट किया जा सकता है. प्रतिनिधि इस तरह काम करते हैं MediaPipe के लिए हार्डवेयर ड्राइवर, जिनकी मदद से अपने मॉडल को जीपीयू पर चलाया जा सकता है का इस्तेमाल करता है.

BaseOptions के ज़रिए, टास्क के विकल्पों में जीपीयू डेलिगेट को कॉन्फ़िगर करें:

BaseOptions baseOptions = BaseOptions.builder().useGpu().build();

समस्या का हल

MediaPipe से जुड़े तकनीकी सवालों के जवाब पाने के लिए, यहां जाएं: चर्चा समूह या स्टैक ओवरफ़्लो कम्यूनिटी के साथ शेयर करना चाहते हैं. गड़बड़ियों की शिकायत करने या सुविधा का अनुरोध करने के लिए, इस पर समस्या दर्ज करें GitHub.

अपने Android डेवलपमेंट एनवायरमेंट को सेट अप करने में मदद पाने के लिए, Android डेवलपर दस्तावेज़ में बताया गया है.