Deep Learning Academy · पाठ

ONNX में Export करें

अपने मॉडल को अलग-अलग runtimes पर चलाएँ

पाठ 2, कुल 4 में से13 चरण

ONNX में Export करें, CoddyKit पर Deep Learning Academy का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Deep Learning Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Deep Learning Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

एक मॉडल, कई रनटाइम

कभी-कभी आपके मॉडल को ऐसी जगह चलना होता है जहाँ PyTorch इंस्टॉल नहीं है। ONNX एक साझा प्रारूप है, जो एक मॉडल को कई इंजन पर चलने देता है। 🌐

ONNX का पूरा नाम

ONNX का अर्थ Open Neural Network Exchange है। यह विक्रेता-निरपेक्ष फ़ाइल प्रारूप है, जो आपके मॉडल को मानक ऑपरेशनों के ग्राफ़ के रूप में वर्णित करता है।

टीमें ONNX को क्यों पसंद करती हैं

ONNX की सहायता से आप PyTorch में प्रशिक्षण कर सकते हैं, लेकिन ONNX Runtime, मोबाइल या ब्राउज़र पर डिप्लॉय कर सकते हैं, और हर प्लेटफ़ॉर्म के लिए मॉडल को फिर से लिखने की आवश्यकता नहीं होती।

एक कॉल में निर्यात करें

आप PyTorch को मॉडल और एक नमूना इनपुट देकर निर्यात करते हैं। निर्यातक उस रन का अनुरेखण करता है और एक पोर्टेबल ग्राफ़ डिस्क पर लिख देता है।

import torch
torch.onnx.export(model, sample_input, 'model.onnx')

डमी इनपुट ग्राफ़ का आकार तय करता है

उस नमूना टेंसर का आकार और dtype आपके वास्तविक इनपुट से मेल खाना चाहिए, क्योंकि निर्यातक उन ऑपरेशनों को रिकॉर्ड करता है जिन्हें डेटा सक्रिय करता है।

sample_input = torch.randn(1, 3, 224, 224)

अपने इनपुट और आउटपुट के नाम रखें

स्पष्ट इनपुट और आउटपुट नाम दें, ताकि सर्विंग कोड अनुमान लगाने के बजाय नाम के आधार पर डेटा जोड़ सके।

torch.onnx.export(model, x, 'm.onnx',
  input_names=['image'], output_names=['logits'])

लचीले बैच आकारों की अनुमति दें

डिफ़ॉल्ट रूप से बैच का आकार स्थिर होता है। उसे गतिशील अक्ष के रूप में चिह्नित करें, ताकि निर्यात किया गया मॉडल एक साथ किसी भी संख्या में इनपुट स्वीकार कर सके।

dynamic_axes={'image': {0: 'batch'}}

अपने निर्यात की हमेशा जाँच करें

फ़ाइल को onnx लाइब्रेरी से लोड करें और अंतर्निहित जाँचकर्ता चलाकर यह सुनिश्चित करें कि मॉडल भेजने से पहले ग्राफ़ मान्य है। ✅

import onnx
onnx.checker.check_model(onnx.load('model.onnx'))

इसे ONNX Runtime से चलाएँ

ONNX Runtime एक तेज़ इंजन है, जो निर्यात किए गए मॉडल को CPU या GPU पर चलाता है और अक्सर सामान्य Python अनुमान से तेज़ होता है।

import onnxruntime as ort
session = ort.InferenceSession('model.onnx')

पुष्टि करें कि संख्याएँ मेल खाती हैं

एक ही इनपुट को PyTorch और ONNX Runtime से चलाकर आउटपुट की तुलना करें। वे काफ़ी हद तक समान होने चाहिए, जिससे सिद्ध होगा कि निर्यात सही है।

Opset संस्करण का ध्यान रखें

हर निर्यात एक opset संस्करण को लक्ष्य बनाता है, जिसमें समर्थित ऑपरेशनों का समूह होता है। त्रुटियों से बचने के लिए ऐसा संस्करण चुनें, जिसे आपका लक्ष्य रनटाइम समझता हो।

torch.onnx.export(model, x, 'm.onnx', opset_version=17)

त्वरित जाँच

आप स्थिर बैच के बजाय किसी भी आकार को स्वीकार करना चाहते हैं। आप क्या सेट करेंगे?

पुनरावलोकन: सभी रनटाइम पर पोर्टेबल

आपने नमूना इनपुट के साथ PyTorch मॉडल को ONNX में निर्यात किया, अक्षों के नाम रखे, उसे मान्य किया और ONNX Runtime पर कहीं भी चलाया। 🎉

शुरुआत निःशुल्क

एआई शिक्षक के साथ Python सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
30
पाठ
120

अक्सर पूछे जाने वाले प्रश्न

क्या “ONNX में Export करें” पाठ निःशुल्क है?

हाँ—“ONNX में Export करें” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Deep Learning Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Deep Learning Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“ONNX में Export करें” में मैं क्या सीखूँगा?

अपने मॉडल को अलग-अलग runtimes पर चलाएँ आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Deep Learning Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Deep Learning Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Deep Learning Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“ONNX में Export करें” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Deep Learning Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Deep Learning Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. TorchScript और torch.compile
  2. ONNX में Export करें
  3. छोटे और तेज़ Models के लिए Quantization
  4. FastAPI के साथ Serve करें
← Deep Learning Academy पर वापस जाएँ