PyTorch मॉडल को LiteRT में बदलें

AI Edge Torch एक लाइब्रेरी है, जिसकी मदद से PyTorch मॉडल को .tflite फ़ॉर्मैट में बदला जा सकता है. इससे, उन मॉडल को LiteRT और MediaPipe के साथ चलाया जा सकता है. यह सुविधा खास तौर पर उन डेवलपर के लिए मददगार है जो ऐसे मोबाइल ऐप्लिकेशन बनाते हैं जो पूरी तरह से डिवाइस पर मॉडल चलाते हैं. AI Edge Torch, सीपीयू के साथ-साथ शुरुआती जीपीयू और एनपीयू के साथ काम करता है.

PyTorch मॉडल को LiteRT में बदलने के लिए, Pytorch कन्वर्टर के लिए क्विकस्टार्ट का इस्तेमाल करें. ज़्यादा जानकारी के लिए, AI Edge Torch का GitHub repo देखें.

अगर आपको खास तौर पर बड़े भाषा मॉडल (एलएलएम) या ट्रांसफ़ॉर्मर पर आधारित मॉडल को बदलना है, तो Generative Torch API का इस्तेमाल करें. यह ट्रांसफ़ॉर्मर से जुड़े कन्वर्ज़न की जानकारी को मैनेज करता है. जैसे, मॉडल बनाने और क्वांटाइज़ेशन.

कन्वर्ज़न वर्कफ़्लो

यहां दिए गए चरणों में, PyTorch मॉडल को LiteRT में आसानी से बदलने का तरीका बताया गया है.

AI Edge Torch इंपोर्ट करना

PyTorch के साथ-साथ, AI Edge Torch (ai-edge-torch) pip पैकेज इंपोर्ट करके शुरुआत करें.

import ai_edge_torch
import torch

इस उदाहरण के लिए, हमें इन पैकेज की भी ज़रूरत है:

import numpy
import torchvision

मॉडल को शुरू करना और बदलना

हम इमेज की पहचान करने वाले लोकप्रिय मॉडल ResNet18 को बदल देंगे.

resnet18 = torchvision.models.resnet18(torchvision.models.ResNet18_Weights.IMAGENET1K_V1).eval()

PyTorch मॉडल को बदलने के लिए, AI Edge Torch लाइब्रेरी में मौजूद convert तरीके का इस्तेमाल करें.

sample_input = (torch.randn(1, 3, 224, 224),)
edge_model = ai_edge_torch.convert(resnet18.eval(), sample_input)

मॉडल का इस्तेमाल करना

Pytorch मॉडल को बदलने के बाद, बदले गए नए LiteRT मॉडल की मदद से अनुमान लगाए जा सकते हैं.

output = edge_model(*sample_inputs)

बदले गए मॉडल को .tflite फ़ॉर्मैट में एक्सपोर्ट और सेव किया जा सकता है, ताकि आने वाले समय में उसका इस्तेमाल किया जा सके.

edge_model.export('resnet.tflite')