iOS क्विकस्टार्ट

LiteRT की मदद से, अपने iOS ऐप्लिकेशन में TensorFlow, PyTorch, और JAX मॉडल चलाए जा सकते हैं. LiteRT सिस्टम, iOS पर मॉडल को तेज़ी से और बेहतर तरीके से चलाने के लिए, पहले से बनाए गए और पसंद के मुताबिक बनाए जा सकने वाले, प्रोग्राम को चलाने के लिए तैयार किए गए एनवायरमेंट उपलब्ध कराता है. साथ ही, इसमें वर्शन मैनेजमेंट के लिए ज़्यादा सुविधाएं मिलती हैं. साथ ही, बेहतर परफ़ॉर्मेंस के लिए, coreML और Metal जैसे वैकल्पिक डेलिगेट भी मिलते हैं.

उदाहरण के लिए, LiteRT का इस्तेमाल करने वाले iOS ऐप्लिकेशन के लिए, LiteRT के सैंपल वाले डेटा स्टोर को देखें.

अपने Swift या Objective-C प्रोजेक्ट में LiteRT जोड़ना

LiteRT, Swift और Objective-C में लिखी गई नेटिव iOS लाइब्रेरी उपलब्ध कराता है.

यहां दिए गए सेक्शन में, अपने प्रोजेक्ट में LiteRT Swift या Objective-C को जोड़ने का तरीका बताया गया है:

CocoaPods के डेवलपर

अपने Podfile में, LiteRT पॉड जोड़ें. इसके बाद, pod install चलाएं.

Swift

use_frameworks!
pod 'TensorFlowLiteSwift'

Objective-C

pod 'TensorFlowLiteObjC'

वर्शन तय करना

TensorFlowLiteSwift और TensorFlowLiteObjC, दोनों पॉड के लिए, स्टेबल रिलीज़ और हर रात रिलीज़ होने वाली रिलीज़ उपलब्ध हैं. अगर ऊपर दिए गए उदाहरणों की तरह, वर्शन की पाबंदी नहीं बताई जाती है, तो CocoaPods डिफ़ॉल्ट रूप से सबसे नई और स्थिर रिलीज़ को खींच लेगा.

वर्शन से जुड़ी पाबंदी भी तय की जा सकती है. उदाहरण के लिए, अगर आपको 2.10.0 वर्शन पर निर्भर रहना है, तो डिपेंडेंसी को इस तरह लिखा जा सकता है:

pod 'TensorFlowLiteSwift', '~> 2.10.0'

इससे यह पक्का होगा कि आपके ऐप्लिकेशन में TensorFlowLiteSwift के 2.x.y वर्शन का इस्तेमाल किया जा रहा है. इसके अलावा, अगर आपको हर रात जनरेट होने वाले बाइल्ड का इस्तेमाल करना है, तो यह लिखें:

pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly'

2.4.0 वर्शन और हर रात रिलीज़ होने वाले नए वर्शन में, डिफ़ॉल्ट रूप से GPU और Core ML के प्रतिनिधि को पॉड से बाहर रखा जाता है, ताकि बाइनरी का साइज़ कम किया जा सके. सब-स्पेसिफ़िकेशन बताकर, उन्हें शामिल किया जा सकता है:

pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly', :subspecs => ['CoreML', 'Metal']

इससे, आपको LiteRT में जोड़ी गई नई सुविधाओं का इस्तेमाल करने में मदद मिलेगी. ध्यान दें कि पहली बार pod install कमांड चलाने पर Podfile.lock फ़ाइल बनने के बाद, हर रात अपडेट होने वाली लाइब्रेरी का वर्शन, मौजूदा तारीख के वर्शन पर लॉक हो जाएगा. अगर आपको हर रात अपडेट होने वाली लाइब्रेरी को नए वर्शन पर अपडेट करना है, तो आपको pod update कमांड चलाना चाहिए.

वर्शन की पाबंदियों के बारे में अलग-अलग तरीकों से बताने के बारे में ज़्यादा जानने के लिए, पॉड के वर्शन बताना लेख पढ़ें.

Bazel डेवलपर

अपनी BUILD फ़ाइल में, अपने टारगेट में TensorFlowLite डिपेंडेंसी जोड़ें.

Swift

swift_library(
  deps = [
      "//tensorflow/lite/swift:TensorFlowLite",
  ],
)

Objective-C

objc_library(
  deps = [
      "//tensorflow/lite/objc:TensorFlowLite",
  ],
)

C/C++ API

इसके अलावा, C API या C++ API का इस्तेमाल किया जा सकता है

# Using C API directly
objc_library(
  deps = [
      "//tensorflow/lite/c:c_api",
  ],
)

# Using C++ API directly
objc_library(
  deps = [
      "//tensorflow/lite:framework",
  ],
)

लाइब्रेरी इंपोर्ट करना

Swift फ़ाइलों के लिए, LiteRT मॉड्यूल इंपोर्ट करें:

import TensorFlowLite

Objective-C फ़ाइलों के लिए, अम्ब्रेला हेडर इंपोर्ट करें:

#import "TFLTensorFlowLite.h"

इसके अलावा, अगर आपने अपने Xcode प्रोजेक्ट में CLANG_ENABLE_MODULES = YES सेट किया है, तो मॉड्यूल:

@import TFLTensorFlowLite;