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

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

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

MediaPipe Tasks वाला iOS ऐप्लिकेशन बनाने के लिए, आपके डेवलपमेंट एनवायरमेंट के लिए यह ज़रूरी है:

  • macOS Mojave 10.14.3 या इसके बाद का वर्शन.

  • Xcode 10.3 या उसके बाद का वर्शन.

  • कम से कम iOS 12.0 वर्शन वाला iOS डिवाइस. इसके अलावा, iOS सिम्युलेटर ऐसे ऐप्लिकेशन भी हैंडल कर सकता है जिन्हें डिवाइस के कैमरे की ज़रूरत नहीं होती.

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

किसी iOS ऐप्लिकेशन पर MediaPipe टास्क चलाने से पहले, आपके पास या तो पहले से मौजूद Xcode प्रोजेक्ट होना चाहिए या अपनी लोकल मशीन पर कोई नया प्रोजेक्ट बनाना होगा.

MediaPipe Tasks को सिर्फ़ CocoaPods का इस्तेमाल करके इंस्टॉल किया जा सकता है. शुरू करने से पहले, आपको CocoaPods 1.12.1 या उसके बाद के वर्शन को इंस्टॉल करना होगा. macOS पर CocoaPods को इंस्टॉल करने के निर्देशों के लिए, CocoaPods को इंस्टॉल करने से जुड़ी गाइड देखें.

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

MediaPipe के उदाहरण डेटा स्टोर करने की जगह में, MediaPipe टास्क के लिए उदाहरण वाले iOS ऐप्लिकेशन शामिल हैं.

उदाहरण वाले कोड से प्रोजेक्ट बनाया जा सकता है, प्रोजेक्ट बनाया जा सकता है, और टास्क चलाया जा सकता है. इन चरणों से टेक्स्ट क्लासिफ़ायर टास्क बनता है.

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

  1. टर्मिनल खोलें, MediaPipe का डेटा स्टोर करने की जगह का क्लोन बनाएं, और TextClassifier.xcodeproj और Podfile वाली डायरेक्ट्री पर जाएं.

    git clone https://github.com/google-ai-edge/mediapipe-samples
    cd mediapipe/examples/text_classification/ios
    
  2. CocoaPods का इस्तेमाल करके MediaPipe Tasks को इंस्टॉल करें:

    pod install
    

    यह निर्देश, उदाहरण वाली प्रोजेक्ट डायरेक्ट्री में एक TextClassifier.xcworkspace फ़ाइल बनाता है.

  3. प्रोजेक्ट को Xcode में खोलने के लिए, TextClassifier.xcworkspace फ़ाइल पर दो बार क्लिक करें. अगर TextClassifier.xcodeproj फ़ाइल पहले से खुली है, तो TextClassifier.xcworkspace फ़ाइल खोलने से पहले उसे बंद करें.

  4. TextClassifier स्कीम चुनें और अपनी प्रोजेक्ट विंडो के टूलबार से कोई फ़िज़िकल iOS डिवाइस या सिम्युलेटर चुनें. किसी वास्तविक iOS डिवाइस का इस्तेमाल करते समय, पक्का करें कि वह आपके Mac से कनेक्ट हो.

  5. अपने प्रोजेक्ट के टूलबार में Run बटन पर क्लिक करें.

Xcode पर कोई ऐप्लिकेशन चलाने के बारे में ज़्यादा निर्देशों के लिए, ऐप्लिकेशन बनाना और चलाना देखें.

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

MediaPipe Tasks, देखने और टेक्स्ट के लिए पहले से बनी दो लाइब्रेरी उपलब्ध कराता है. .tflite मॉडल फ़ाइल, उस iOS ऐप्लिकेशन के बंडल में मौजूद होनी चाहिए जो मॉडल का इस्तेमाल करता है. MediaPipe Tas के आधार पर, CocoaPods Podfile में पॉड की सूची में विज़न या टेक्स्ट लाइब्रेरी को जोड़ें. अपने ऐप्लिकेशन के लिए ज़रूरी पॉड के साथ Podfile बनाने के निर्देश पाने के लिए, CocoaPods का इस्तेमाल करना देखें.

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

MediaPipe Tasks जनरेटिव एआई लाइब्रेरी में ऐसे टास्क होते हैं जो इमेज या टेक्स्ट जनरेट करने की प्रोसेस को मैनेज करते हैं. MediaPipe Tasks Generative AI लाइब्रेरी को इंस्टॉल करने के लिए, Podfile में अपने ऐप्लिकेशन के टारगेट में MediaPipeTasksGenAI और MediaPipeTasksGenAIC पॉड जोड़ें.

एलएलएम अनुमान एपीआई

MediaPipe एलएलएम अनुमान टास्क, MediaPipeTasksGenAI और MediaPipeTasksGenAIC पॉड में शामिल होता है.

target 'MyLlmInferenceApp' do
  use_frameworks!
  pod 'MediaPipeTasksGenAI'
  pod 'MediaPipeTasksGenAIC'
end

विज़न से जुड़े टास्क

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

target 'MyAppWithMediaPipeTasksVision' do
  use_frameworks!
  pod 'MediaPipeTasksVision'
end

टेक्स्ट वाले टास्क

MediaPipe Tasks की टेक्स्ट लाइब्रेरी में ऐसे टास्क होते हैं जो टेक्स्ट फ़ॉर्मैट में भाषा के डेटा को मैनेज करते हैं. MediaPipe Tasks टेक्स्ट लाइब्रेरी को इंस्टॉल करने के लिए, Podfile में अपने ऐप्लिकेशन के टारगेट में MediaPipeTasksText पॉड जोड़ें

target 'MyAppWithMediaPipeTasksText' do
  use_frameworks!
  pod 'MediaPipeTasksText'
end

टेस्ट टारगेट कॉन्फ़िगर करें

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

सबसे आसान तरीके से यह पक्का किया जाता है कि टेस्ट टारगेट, MediaPipe टास्क पॉड को जोड़ने वाले मुख्य ऐप्लिकेशन टारगेट में नेस्ट न हो.

target 'MyAppWithMediaPipeTasks' do
  pod 'MediaPipeTasksVision'
end

target 'MyAppWithMediaPipeTasksTests' do

end

अगर टेस्ट टारगेट को मुख्य ऐप्लिकेशन टारगेट में नेस्ट किया जाना ज़रूरी है, तो Podfile, नीचे दिए गए तरीके के मुताबिक होना चाहिए:

target 'MyAppWithMediaPipeTasks' do
  pod 'MediaPipeTasksVision'

    target 'MyAppWithMediaPipeTasksTests' do
      inherit! :none

    end
end

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

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

विकल्प का नाम कंपनी का ब्यौरा मंज़ूर की गई वैल्यू
modelAssetPath iOS ऐप्लिकेशन बंडल में मौजूद मॉडल फ़ाइल का मॉडल पाथ. स्ट्रिंग के तौर पर पाथ.

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

iOS पर, MediaPipe Tasks सिर्फ़ स्टैंडर्ड सीपीयू प्रोसेसर पर चलने वाले मॉडल के साथ काम करता है.

समस्या हल करना

MediaPipe से जुड़े तकनीकी सवालों के जवाब के लिए, समुदाय से मदद पाने के लिए चर्चा समूह या Stack Overflow पर जाएं. गड़बड़ियों की शिकायत करने या सुविधा का अनुरोध करने के लिए, GitHub पर समस्या दर्ज करें.

iOS डेवलपमेंट एनवायरमेंट को सेट अप करने में मदद पाने के लिए, Apple डेवलपर दस्तावेज़ पर जाएं.