सामग्री पर जाएं

YOLOv8 करने के लिए मॉडल निर्यात TorchScript त्वरित परिनियोजन के लिए

एम्बेडेड सिस्टम, वेब ब्राउज़र या सीमित वाले प्लेटफ़ॉर्म सहित विभिन्न वातावरणों में कंप्यूटर विज़न मॉडल को तैनात करना Python समर्थन, एक लचीला और पोर्टेबल समाधान की आवश्यकता है। TorchScript पोर्टेबिलिटी और वातावरण में मॉडल चलाने की क्षमता पर ध्यान केंद्रित करता है जहां संपूर्ण Python ढांचा अनुपलब्ध है। यह उन परिदृश्यों के लिए आदर्श बनाता है जहां आपको विभिन्न उपकरणों या प्लेटफार्मों पर अपनी कंप्यूटर दृष्टि क्षमताओं को तैनात करने की आवश्यकता होती है।

को निर्यात करें Torchscript अपने को क्रमबद्ध करने के लिए Ultralytics YOLOv8 क्रॉस-प्लेटफ़ॉर्म संगतता और सुव्यवस्थित परिनियोजन के लिए मॉडल। इस गाइड में, हम आपको दिखाएंगे कि अपना निर्यात कैसे करें YOLOv8 करने के लिए मॉडल TorchScript प्रारूप, जिससे आपके लिए अनुप्रयोगों की एक विस्तृत श्रृंखला में उनका उपयोग करना आसान हो जाता है।

आपको निर्यात क्यों करना चाहिए TorchScript?

Torchscript विहंगावलोकन

के रचनाकारों द्वारा विकसित PyTorch, TorchScript अनुकूलन और तैनाती के लिए एक शक्तिशाली उपकरण है PyTorch विभिन्न प्लेटफार्मों पर मॉडल। निर्यात YOLOv8 करने के लिए मॉडल TorchScript अनुसंधान से वास्तविक दुनिया के अनुप्रयोगों में जाने के लिए महत्वपूर्ण है। TorchScript, का हिस्सा PyTorch फ्रेमवर्क, अनुमति देकर इस संक्रमण को आसान बनाने में मदद करता है PyTorch ऐसे परिवेशों में उपयोग किए जाने वाले मॉडल जो समर्थन नहीं करते हैं Python.

प्रक्रिया में दो तकनीकें शामिल हैं: अनुरेखण और स्क्रिप्टिंग। मॉडल निष्पादन के दौरान रिकॉर्ड संचालन का पता लगाना, जबकि स्क्रिप्टिंग के सबसेट का उपयोग करके मॉडल की परिभाषा की अनुमति देता है Python. ये तकनीकें सुनिश्चित करती हैं कि मॉडल जैसे YOLOv8 अभी भी अपने सामान्य के बाहर भी अपना जादू चला सकते हैं Python पर्यावरण।

TorchScript स्क्रिप्ट और ट्रेस

TorchScript मॉडल को मेमोरी उपयोग में ऑपरेटर फ्यूजन और शोधन जैसी तकनीकों के माध्यम से भी अनुकूलित किया जा सकता है, जिससे कुशल निष्पादन सुनिश्चित होता है। निर्यात करने का एक और फायदा TorchScript विभिन्न हार्डवेयर प्लेटफार्मों में मॉडल निष्पादन में तेजी लाने की इसकी क्षमता है। यह आपका एक स्टैंडअलोन, उत्पादन-तैयार प्रतिनिधित्व बनाता है PyTorch मॉडल जिसे सी ++ वातावरण, एम्बेडेड सिस्टम में एकीकृत किया जा सकता है, या वेब या मोबाइल एप्लिकेशन में तैनात किया जा सकता है।

की मुख्य विशेषताएं TorchScript मॉडल

TorchScript, का एक महत्वपूर्ण हिस्सा PyTorch पारिस्थितिकी तंत्र, गहन शिक्षण मॉडल के अनुकूलन और तैनाती के लिए शक्तिशाली सुविधाएँ प्रदान करता है।

TorchScript सुविधाऐं

यहाँ प्रमुख विशेषताएं हैं जो बनाती हैं TorchScript डेवलपर्स के लिए एक मूल्यवान उपकरण:

  • स्थैतिक ग्राफ निष्पादन: TorchScript मॉडल की गणना के एक स्थिर ग्राफ प्रतिनिधित्व का उपयोग करता है, जो इससे अलग है PyTorchगतिशील ग्राफ निष्पादन। स्थैतिक ग्राफ निष्पादन में, कम्प्यूटेशनल ग्राफ को वास्तविक निष्पादन से पहले एक बार परिभाषित और संकलित किया जाता है, जिसके परिणामस्वरूप अनुमान के दौरान बेहतर प्रदर्शन होता है।

  • मॉडल क्रमांकन: TorchScript आपको क्रमबद्ध करने की अनुमति देता है PyTorch एक मंच-स्वतंत्र प्रारूप में मॉडल। धारावाहिक मॉडल को मूल की आवश्यकता के बिना लोड किया जा सकता है Python कोड, विभिन्न रनटाइम वातावरण में तैनाती को सक्षम करना।

  • जेआईटी संकलन: TorchScript कनवर्ट करने के लिए जस्ट-इन-टाइम (JIT) संकलन का उपयोग करता है PyTorch एक अनुकूलित मध्यवर्ती प्रतिनिधित्व में मॉडल। जेआईटी मॉडल के कम्प्यूटेशनल ग्राफ को संकलित करता है, लक्ष्य उपकरणों पर कुशल निष्पादन को सक्षम करता है।

  • क्रॉस-लैंग्वेज एकीकरण: के साथ TorchScript, आप निर्यात कर सकते हैं PyTorch अन्य भाषाओं जैसे सी ++, जावा और जावास्क्रिप्ट के लिए मॉडल। इससे एकीकृत करना आसान हो जाता है PyTorch विभिन्न भाषाओं में लिखे गए मौजूदा सॉफ्टवेयर सिस्टम में मॉडल।

  • क्रमिक रूपांतरण: TorchScript एक क्रमिक रूपांतरण दृष्टिकोण प्रदान करता है, जिससे आप अपने कुछ हिस्सों को वृद्धिशील रूप से परिवर्तित कर सकते हैं PyTorch में मॉडल TorchScript. यह लचीलापन विशेष रूप से उपयोगी होता है जब जटिल मॉडल से निपटते हैं या जब आप कोड के विशिष्ट भागों को अनुकूलित करना चाहते हैं।

में परिनियोजन विकल्प TorchScript

इससे पहले कि हम निर्यात के लिए कोड देखें YOLOv8 करने के लिए मॉडल TorchScript प्रारूप, आइए समझते हैं कि कहां TorchScript मॉडल आमतौर पर उपयोग किए जाते हैं।

TorchScript मशीन लर्निंग मॉडल के लिए विभिन्न परिनियोजन विकल्प प्रदान करता है, जैसे:

  • C++ API: के लिए सबसे आम उपयोग का मामला TorchScript इसका सी ++ एपीआई है, जो आपको अनुकूलित लोड और निष्पादित करने की अनुमति देता है TorchScript सीधे सी ++ अनुप्रयोगों के भीतर मॉडल। यह उत्पादन वातावरण के लिए आदर्श है जहां Python उपयुक्त या उपलब्ध नहीं हो सकता है। सी ++ एपीआई कम-ओवरहेड और कुशल निष्पादन प्रदान करता है TorchScript मॉडल, प्रदर्शन क्षमता को अधिकतम करना।

  • मोबाइल परिनियोजन: TorchScript मोबाइल उपकरणों पर आसानी से तैनात प्रारूपों में मॉडल परिवर्तित करने के लिए उपकरण प्रदान करता है। PyTorch मोबाइल आईओएस और एंड्रॉइड ऐप के भीतर इन मॉडलों को निष्पादित करने के लिए एक रनटाइम प्रदान करता है। यह कम-विलंबता, ऑफ़लाइन अनुमान क्षमताओं को सक्षम बनाता है, उपयोगकर्ता अनुभव और डेटा गोपनीयता को बढ़ाता है।

  • क्लाउड परिनियोजन: TorchScript मॉडल को टॉर्चसर्व जैसे समाधानों का उपयोग करके क्लाउड-आधारित सर्वर पर तैनात किया जा सकता है। यह उत्पादन वातावरण में स्केलेबल परिनियोजन के लिए मॉडल संस्करण, बैचिंग और मैट्रिक्स निगरानी जैसी सुविधाएँ प्रदान करता है। क्लाउड परिनियोजन के साथ TorchScript अपने मॉडल को एपीआई या अन्य वेब सेवाओं के माध्यम से सुलभ बना सकते हैं।

को निर्यात करें TorchScript: आपका परिवर्तित करना YOLOv8 को गढ़ना

निर्यात YOLOv8 करने के लिए मॉडल TorchScript विभिन्न स्थानों पर उनका उपयोग करना आसान बनाता है और उन्हें तेजी से और अधिक कुशलता से चलाने में मदद करता है। वास्तविक दुनिया के अनुप्रयोगों में गहन शिक्षण मॉडल का अधिक प्रभावी ढंग से उपयोग करने के इच्छुक किसी भी व्यक्ति के लिए यह बहुत अच्छा है।

संस्थापन

आवश्यक पैकेज स्थापित करने के लिए, चलाएं:

संस्थापन

# Install the required package for YOLOv8
pip install ultralytics

स्थापना प्रक्रिया से संबंधित विस्तृत निर्देशों और सर्वोत्तम प्रथाओं के लिए, हमारी जाँच करें Ultralytics इंस्टालेशन गाइड। के लिए आवश्यक पैकेज स्थापित करते समय YOLOv8, अगर आपको कोई कठिनाई आती है, तो समाधान और सुझावों के लिए हमारी सामान्य समस्याएं मार्गदर्शिका देखें.

उपयोग

उपयोग के निर्देशों में गोता लगाने से पहले, यह ध्यान रखना महत्वपूर्ण है कि सभी Ultralytics YOLOv8 मॉडल निर्यात के लिए उपलब्ध हैं, आप यह सुनिश्चित कर सकते हैं कि आपके द्वारा चुना गया मॉडल यहां निर्यात कार्यक्षमता का समर्थन करता है।

उपयोग

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO('yolov8n.pt')

# Export the model to TorchScript format
model.export(format='torchscript')  # creates 'yolov8n.torchscript'

# Load the exported TorchScript model
torchscript_model = YOLO('yolov8n.torchscript')

# Run inference
results = torchscript_model('https://ultralytics.com/images/bus.jpg')
# Export a YOLOv8n PyTorch model to TorchScript format
yolo export model=yolov8n.pt format=torchscript  # creates 'yolov8n.torchscript'

# Run inference with the exported model
yolo predict model=yolov8n.torchscript source='https://ultralytics.com/images/bus.jpg'

निर्यात प्रक्रिया के बारे में अधिक जानकारी के लिए, पर जाएँ Ultralytics निर्यात पर प्रलेखन पृष्ठ

निर्यात की गई तैनाती YOLOv8 TorchScript मॉडल

सफलतापूर्वक निर्यात करने के बाद आपका Ultralytics YOLOv8 करने के लिए मॉडल TorchScript प्रारूप, अब आप उन्हें तैनात कर सकते हैं। चलाने के लिए प्राथमिक और अनुशंसित पहला कदम TorchScript मॉडल का उपयोग करना है YOLO("मॉडल।torchscript") मेथड का इस्तेमाल करें, जैसा कि पिछले इस्तेमाल कोड स्निपेट में बताया गया है. हालाँकि, अपने परिनियोजन के बारे में गहन निर्देशों के लिए TorchScript विभिन्न अन्य सेटिंग्स में मॉडल, निम्नलिखित संसाधनों पर एक नज़र डालें:

  • मोबाइल परिनियोजन का अन्वेषण करें: PyTorch मोबाइल दस्तावेज़ीकरण मोबाइल उपकरणों पर मॉडल परिनियोजित करने के लिए व्यापक दिशानिर्देश प्रदान करता है, यह सुनिश्चित करते हुए कि आपके एप्लिकेशन कुशल और उत्तरदायी हैं।

  • मास्टर सर्वर-साइड परिनियोजन: TorchServe के साथ मॉडल सर्वर-साइड को तैनात करना सीखें, स्केलेबल, कुशल मॉडल सेवा के लिए चरण-दर-चरण ट्यूटोरियल प्रदान करता है।

  • सी ++ परिनियोजन लागू करें: लोड करने पर ट्यूटोरियल में गोता लगाएँ a TorchScript सी ++ में मॉडल, आपके एकीकरण की सुविधा TorchScript बढ़ाया प्रदर्शन और बहुमुखी प्रतिभा के लिए सी ++ अनुप्रयोगों में मॉडल।

सारांश

इस गाइड में, हमने निर्यात की प्रक्रिया का पता लगाया Ultralytics YOLOv8 करने के लिए मॉडल TorchScript प्रारूप। दिए गए निर्देशों का पालन करके, आप ऑप्टिमाइज़ कर सकते हैं YOLOv8 प्रदर्शन के लिए मॉडल और उन्हें विभिन्न प्लेटफार्मों और वातावरणों में तैनात करने के लिए लचीलापन प्राप्त करें।

उपयोग के बारे में अधिक जानकारी के लिए, देखें TorchScriptआधिकारिक दस्तावेज।

इसके अलावा, यदि आप अन्य के बारे में अधिक जानना चाहते हैं Ultralytics YOLOv8 एकीकरण, हमारे एकीकरण गाइड पृष्ठ पर जाएं। आपको वहां बहुत सारे उपयोगी संसाधन और अंतर्दृष्टि मिलेगी।



2024-03-01 बनाया गया, अपडेट किया गया 2024-03-03
लेखक: ग्लेन-जोचर (1), अबिरामी-वीना (2)

टिप्पणियाँ