मैं स्थानीय रूप से सेजमेकर मॉडल को तैनात करने के बारे में विभिन्न पोस्ट देख रहा था, लेकिन स्थानीय स्तर पर भविष्यवाणी/सेवा चलाने के लिए उन्हें एडब्ल्यूएस नोटबुक इंस्टेंस से बंधे रहना होगा (एडब्ल्यूएस सेजमेकर पायथन एसडीके)। यह सेजमेकर प्रशिक्षित मॉडल को पूरी तरह से ऑफ़लाइन चलाने के वास्तविक इरादे को हरा देता है। इसके अलावा कुछ अन्य लोग भी हैं जिन्होंने S3 पर tar.gz फ़ाइल को अनपिक करने का प्रयास किया, इसके बाद सामग्री को स्थानीय रूप से परिनियोजित करने के लिए रैप किया। हालाँकि यह प्रक्रिया कुछ विशेष प्रकार के मॉडलों जैसे कि XGBoost और MXnet तक ही सीमित प्रतीत होती है। इसलिए सेजमेकर नोटबुक इंस्टेंस पर निर्भरता के बिना सेजमेकर प्रशिक्षित मॉडल को ऑफ़लाइन तैनात करने का कोई तरीका है? सलाह के किसी भी रूप की सराहना की जाएगी। धन्यवाद।
2 जवाब
एक बार जब आप Amazon SageMaker का उपयोग करके एक मॉडल को प्रशिक्षित कर लेते हैं तो आपके पास एक मॉडल प्रविष्टि होगी। मॉडल S3 में एक मॉडल आर्टिफैक्ट को इंगित करेगा। इस tag.gz फ़ाइल में मॉडल भार हैं। फ़ाइल का प्रारूप उस ढांचे (टेंसरफ़्लो/पाइटोरच/एमएक्सनेट/...) पर निर्भर करता है जिसका उपयोग आपने मॉडल को प्रशिक्षित करने के लिए किया है। यदि आपने SageMaker बिल्ट-इन एल्गोरिदम का उपयोग किया है, तो उनमें से अधिकांश MXNet, या XGBoost के साथ क्रियान्वित किए गए हैं, ताकि आप मॉडल को चलाने के लिए प्रासंगिक मॉडल सर्विंग सॉफ़्टवेयर का उपयोग कर सकें।
यदि आपको सर्विंग सॉफ़्टवेयर की आवश्यकता है, तो आप अपने स्थानीय अनुमान सर्वर पर, अनुमान मोड में सेजमेकर डीप-लर्निंग कंटेनर चला सकते हैं। या TFServing जैसे ओपन-सोर्स सर्विंग सॉफ़्टवेयर का उपयोग करें, या मॉडल को इन-मेमोरी में लोड करें।
मैंने स्थानीय रूप से अमेजन सेजमेकर लोकल मोड। मेरा मानना है कि वही प्रक्रिया अन्य एमएल ढांचे के लिए काम करती है जिसमें आधिकारिक सेजमेकर कंटेनर होते हैं। आप स्थानीय रूप से वही डॉकटर कंटेनर चला सकते हैं जो सेजमेकर आपके मॉडल को एडब्ल्यूएस इन्फ्रास्ट्रक्चर पर तैनात करते समय उपयोग करता है।
स्थानीय रूप से अनुमान के लिए सेजमेकर एंडपॉइंट को तैनात करने के लिए दस्तावेज़ थोड़े बिखरे हुए हैं। एक सारांश:
- एपीआई क्लाइंट के स्थानीय संस्करणों का उपयोग करें: आम तौर पर, आप पाइथन से सेजमेकर का उपयोग करने के लिए
botocore.client.SageMaker
औरbotocore.client.SageMakerRuntime
कक्षाओं का उपयोग करते हैं। स्थानीय रूप से सेजमेकर का उपयोग करने के लिए, इसके बजायsagemaker.local.LocalSagemakerClient()
औरsagemaker.local.LocalSagemakerRuntimeClient()
का उपयोग करें। - आप चाहें तो स्थानीय
tar.gz
मॉडल फ़ाइल का उपयोग कर सकते हैं। - मॉडल को परिनियोजित करते समय
instance_type
कोlocal
पर सेट करें।
मैंने पाइटोरच के लिए स्थानीय AWS सेजमेकर वातावरण कैसे सेटअप करें, जो विस्तार से बताता है कि यह कैसे काम करता है।
संबंधित सवाल
नए सवाल
amazon-web-services
Amazon Web Services (AWS) एक सार्वजनिक-क्लाउड है: IaaS (एक सेवा के रूप में अवसंरचना) और अमेज़न द्वारा उपलब्ध कराए गए SaaS (एक सेवा के रूप में सॉफ़्टवेयर)। प्रोग्रामिंग और आर्किटेक्चर के बारे में प्रश्न विषय पर हैं। Https://serverfault.com पर सामान्य सर्वर सहायता प्राप्त की जा सकती है। AWS टैग का उपयोग शायद ही कभी किया जाता है और आमतौर पर अन्य टैग के साथ प्रश्न के विषय को अधिक स्पष्ट रूप से परिभाषित करने के लिए उपयोग किया जाएगा।