NVIDIA Jetson पर इंस्टॉल करें
JetPack-विशिष्ट containers, TensorRT acceleration, और Docker Compose के साथ NVIDIA Jetson device पर Roboflow Inference Server इंस्टॉल करें।
अवलोकन
Jetson NVIDIA के कॉम्पैक्ट, ऊर्जा-कुशल मॉड्यूल्स की श्रृंखला है, जिन्हें edge पर AI और deep learning workloads चलाने के लिए डिज़ाइन किया गया है। ये एक ही बोर्ड पर GPU, CPU, और neural accelerators को जोड़ते हैं, जिससे वे robotics, drones, smart cameras, और अन्य embedded applications के लिए उपयुक्त बनते हैं, जिन्हें cloud connection के बिना real-time computer vision की आवश्यकता होती है। अधिक विवरण के लिए, देखें NVIDIA का Jetson अवलोकन.
पूर्वापेक्षाएँ
डिस्क स्थान: Roboflow Jetson image (8.14 GB) के लिए कम से कम 10 GB खाली स्थान आरक्षित करें।
JetPack संस्करण: एक समर्थित JetPack (5.x या 6.x)।
अनुशंसित हार्डवेयर: सर्वोत्तम प्रदर्शन के लिए NVIDIA Orin NX 16 GB या उससे अधिक।
Docker और NVIDIA Container Toolkit: कंटेनरों को GPU तक पहुँचने के लिए Docker engine और NVIDIA runtime की आवश्यकता होती है। अनुसरण करें Docker स्थापना मार्गदर्शिका और NVIDIA Container Toolkit मार्गदर्शिका.
Roboflow, JetPack L4T के लिए हार्डवेयर एक्सेलेरेशन समर्थन के साथ बनाए गए विशेष कंटेनर प्रकाशित करता है। अपने JetPack संस्करण का स्वचालित रूप से पता लगाने और अच्छे डिफ़ॉल्ट के साथ सही कंटेनर शुरू करने के लिए, चलाएँ:
pip install inference-cli
inference server startसर्वर आपके पूरे नेटवर्क से पहुँचा जा सकता है। अन्य targets के विपरीत, जो प्रकाशित किए जाते हैं 127.0.0.1, Jetson images प्रकाशित किए जाते हैं 0.0.0.0 ताकि आप डिवाइस को किसी अन्य मशीन से नियंत्रित कर सकें, और मैन्युअल docker run इस पृष्ठ पर दिए गए उदाहरण पोर्ट 9001 को भी इसी तरह प्रकाशित करते हैं। इसका मतलब है कि Jetson तक रूट करने वाली कोई भी चीज़ सर्वर का उपयोग कर सकती है, जिसमें डिफ़ॉल्ट रूप से कोई प्रमाणीकरण नहीं होता और यह Workflows Custom Python blocks - डिवाइस पर remote code execution चलाता है। उपयोग करें inference server start --bind-address 127.0.0.1 केवल स्थानीय पहुँच के लिए, या कॉन्फ़िगर करें सर्वर प्रमाणीकरण और नेटवर्क प्रतिबंध दूरस्थ क्लाइंट्स को सेवा देने से पहले।
कंटेनर को मैन्युअल रूप से शुरू करना
यदि आप कंटेनर सेटिंग्स पर अधिक नियंत्रण चाहते हैं, तो इसे स्वयं शुरू करें। NVIDIA JetPack वाले Jetson डिवाइस NVIDIA container runtime के साथ पहले से कॉन्फ़िगर होते हैं और बॉक्स से बाहर ही हार्डवेयर-त्वरित होते हैं।
sudo docker run -d \\
--name inference-server \\
--runtime nvidia \\
--read-only \\
-p 9001:9001 \\
--volume ~/.inference/cache:/tmp:rw \\
--security-opt="no-new-privileges" \\
--cap-drop="ALL" \\
--cap-add="NET_BIND_SERVICE" \\
roboflow/roboflow-inference-server-jetson-6.2.0:latestsudo docker run -d \\
--name inference-server \\
--runtime nvidia \\
--read-only \\
-p 9001:9001 \\
--volume ~/.inference/cache:/tmp:rw \\
--security-opt="no-new-privileges" \\
--cap-drop="ALL" \\
--cap-add="NET_BIND_SERVICE" \\
roboflow/roboflow-inference-server-jetson-6.0.0:latestsudo docker run -d \\
--name inference-server \\
--runtime nvidia \\
--read-only \\
-p 9001:9001 \\
--volume ~/.inference/cache:/tmp:rw \\
--security-opt="no-new-privileges" \\
--cap-drop="ALL" \\
--cap-add="NET_BIND_SERVICE" \\
roboflow/roboflow-inference-server-jetson-5.1.1:latestJetPack 4 अप्रचलित है और इसे भविष्य के अपडेट नहीं मिलेंगे। कृपया JetPack 6 में माइग्रेट करें।
JetPack 5 के समान कमांड का उपयोग JetPack 4 image tag के साथ करें: roboflow/roboflow-inference-server-jetson-4.6.1:latest JetPack 4.6 के लिए, या roboflow/roboflow-inference-server-jetson-4.5.0:latest JetPack 4.5 के लिए।
TensorRT
आप वैकल्पिक रूप से TensorRTसक्षम कर सकते हैं, जो NVIDIA का model optimization runtime है। यह आपके मॉडलों की गति को बहुत बढ़ा देता है, लेकिन इसके बदले एक भारी compilation और optimization चरण (कभी-कभी 15+ मिनट) लगता है, जब आप प्रत्येक मॉडल को पहली बार लोड करते हैं।
TensorRT सक्षम करने के लिए जोड़ें TensorrtExecutionProvider को ONNXRUNTIME_EXECUTION_PROVIDERS environment variable में ऊपर दिए गए किसी भी कमांड में:
एक persistent cache volume माउंट करने से (जैसा ऊपर दिए गए कमांड में है) पुनःआरंभ के बीच संकलित TensorRT engines बने रहते हैं, इसलिए आपको प्रति मॉडल compilation लागत केवल एक बार चुकानी पड़ती है।
Docker Compose
यदि आप अपने application के लिए Docker Compose का उपयोग करते हैं, तो समकक्ष YAML नीचे दिया गया है। अपने JetPack संस्करण के लिए image tag बदलें: jetson-6.2.0, jetson-6.0.0, jetson-5.1.1, jetson-4.6.1, या jetson-4.5.0.
अगले चरण
एक मॉडल चलाएँ अपने नए सर्वर के विरुद्ध।
Deployment Manager (Enterprise) का उपयोग करके Jetson devices के fleet को दूरस्थ रूप से प्रबंधित करें।
एक self-hosted server को सुरक्षित करना इससे पहले कि आप इसे localhost से आगे उपलब्ध कराएँ।
अंतिम अपडेट
क्या यह उपयोगी था?