AWS ग्राहक अपने क्लाउड इन्फ्रास्ट्रक्चर को डिजाइन, विकसित और प्रबंधित करने के लिए इन्फ्रास्ट्रक्चर कोड (IaC) के रूप में भरोसा कर रहे हैं। IaC यह सुनिश्चित करता है कि विकास कार्यों (DevOps) के क्षेत्र में सर्वोत्तम प्रथाओं का पालन करने में सक्षम होने के साथ-साथ ग्राहक अवसंरचना और सेवाएँ सुसंगत, मापनीय और प्रतिलिपि प्रस्तुत करने योग्य हों।
IaC के साथ AWS अवसंरचना और सेवाओं के प्रबंधन का एक संभावित तरीका है terraform, जो डेवलपर्स को पुन: प्रयोज्य कोड मॉड्यूल में अपने बुनियादी ढांचे को व्यवस्थित करने की अनुमति देता है। मशीन लर्निंग (एमएल) के क्षेत्र में यह पहलू तेजी से महत्व प्राप्त कर रहा है। ML पाइपलाइनों का विकास और प्रबंधन, प्रशिक्षण और IaC के रूप में Terraform के साथ अनुमान सहित, आपको खरोंच से बुनियादी ढांचे को विकसित किए बिना कई ML उपयोग के मामलों या क्षेत्रों के लिए आसानी से स्केल करने देता है। इसके अलावा, यह एमएल पाइपलाइन के विभिन्न कार्यान्वयनों में प्रशिक्षण और अनुमान के लिए बुनियादी ढांचे (उदाहरण के लिए, उदाहरण प्रकार और आकार) के लिए स्थिरता प्रदान करता है। इससे आप अनुरोधों और आने वाले ट्रैफ़िक को अलग-अलग रूट कर सकते हैं अमेज़न SageMaker अंतिम बिंदु।
इस पोस्ट में, हम आपको दिखाते हैं कि टेराफॉर्म और अमेज़ॅन सेजमेकर का उपयोग करके एमएल पाइपलाइनों को कैसे तैनात और प्रबंधित किया जाए।
समाधान अवलोकन
यह पोस्ट कोड प्रदान करती है और अमेज़ॅन सेजमेकर का उपयोग करके मॉडल प्रशिक्षण और अनुमान के लिए टेराफॉर्म के साथ एमएल पाइपलाइनों के लिए एडब्ल्यूएस आधारभूत संरचना को तैनात करने के लिए आवश्यक कदमों के माध्यम से चलती है। एमएल पाइपलाइन का प्रबंधन के माध्यम से किया जाता है AWS स्टेप फ़ंक्शंस एमएल पाइपलाइन में कार्यान्वित विभिन्न चरणों को व्यवस्थित करने के लिए, जैसा कि निम्नलिखित आकृति में दिखाया गया है।
चरण कार्य प्रारंभ होता है a AWS लाम्बा फ़ंक्शन, एक अद्वितीय जॉब आईडी जनरेट करता है, जिसका उपयोग तब सेजमेकर प्रशिक्षण कार्य शुरू करते समय किया जाता है। स्टेप फंक्शंस एक मॉडल, एंडपॉइंट कॉन्फ़िगरेशन और एंडपॉइंट भी बनाता है जिसका उपयोग अनुमान के लिए किया जाता है। अतिरिक्त संसाधनों में निम्नलिखित शामिल हैं:
- AWS पहचान और अभिगम प्रबंधन (IAM) भूमिकाएं और नीतियां संसाधनों से जुड़ी हैं ताकि अन्य संसाधनों के साथ बातचीत को सक्षम बनाया जा सके
- अमेज़न सरल भंडारण सेवा (अमेज़ॅन S3) प्रशिक्षण डेटा और मॉडल आउटपुट के लिए बकेट
- An अमेज़ॅन इलास्टिक कंटेनर रजिस्ट्री (अमेज़ॅन ईसीआर) के लिए भंडार डाक में काम करनेवाला मज़दूर प्रशिक्षण और अनुमान तर्क युक्त छवि
डॉकर छवि के साथ प्रशिक्षण और अनुमान के लिए एमएल-संबंधित कोड मुख्य रूप से निम्नलिखित में मौजूदा कार्य पर निर्भर करता है गिटहब भंडार.
निम्नलिखित आरेख समाधान वास्तुकला को दर्शाता है:
हम आपको निम्न उच्च-स्तरीय चरणों के बारे में बताते हैं:
- टेराफॉर्म के साथ अपने एडब्ल्यूएस बुनियादी ढांचे को तैनात करें।
- अपनी डॉकर छवि को Amazon ECR पर पुश करें।
- एमएल पाइपलाइन चलाएँ।
- अपने समापन बिंदु को आमंत्रित करें।
भंडार संरचना
आप निम्नलिखित में इस पोस्ट के लिए उपयोग किए गए कोड और डेटा युक्त भंडार पा सकते हैं गिटहब भंडार.
रिपॉजिटरी में निम्नलिखित निर्देशिकाएँ शामिल हैं:
/terraform
- निम्नलिखित सबफ़ोल्डर से मिलकर बनता है:./infrastructure
- परिवर्तनीय घोषणाओं के अलावा, जो हम बुनियादी ढांचे को तैनात करने के लिए उपयोग करते हैं, एमएल पाइपलाइन मॉड्यूल को कॉल करने वाली main.tf फ़ाइल शामिल है./ml-pipeline-module
- टेराफॉर्म एमएल पाइपलाइन मॉड्यूल शामिल है, जिसे हम पुन: उपयोग कर सकते हैं
/src
- निम्नलिखित सबफ़ोल्डर से मिलकर बनता है:./container
- डॉकर छवि की परिभाषाओं के साथ प्रशिक्षण और अनुमान के लिए उदाहरण कोड शामिल है./lambda_function
- लैम्ब्डा फ़ंक्शन जनरेटिंग कॉन्फ़िगरेशन के लिए पायथन कोड शामिल है, जैसे कि सेजमेकर प्रशिक्षण कार्य के लिए एक अद्वितीय जॉब आईडी
/data
- निम्न फ़ाइल शामिल है:./iris.csv
- एमएल मॉडल के प्रशिक्षण के लिए डेटा शामिल है
.. पूर्वापेक्षाएँ
इस पूर्वाभ्यास के लिए, आपके पास निम्नलिखित शर्तें होनी चाहिए:
- एक एडब्ल्यूएस खाता
- terraform संस्करण 0.13.5 या अधिक
- AWS कमांड लाइन इंटरफ़ेस (एडब्ल्यूएस सीएलआई) v2
- अजगर 3.7 या अधिक
- डाक में काम करनेवाला मज़दूर
टेराफॉर्म के साथ अपने एडब्ल्यूएस बुनियादी ढांचे को तैनात करें
एमएल पाइपलाइन को परिनियोजित करने के लिए, आपको अपनी आवश्यकताओं के अनुसार कुछ चर और नामों को समायोजित करने की आवश्यकता है। इस चरण के लिए कोड में है /terraform
निर्देशिका.
पहली बार प्रारंभ करते समय, फ़ाइल खोलें terraform/infrastructure/terraform.tfvars
और चर समायोजित करें परियोजना का नाम आपके प्रोजेक्ट के नाम पर, वेरिएबल के अलावा क्षेत्र यदि आप किसी अन्य क्षेत्र में तैनाती करना चाहते हैं। आप अतिरिक्त चर भी बदल सकते हैं जैसे प्रशिक्षण और अनुमान के लिए उदाहरण प्रकार।
फिर टेराफॉर्म के साथ बुनियादी ढांचे को तैनात करने के लिए निम्नलिखित कमांड का उपयोग करें:
आउटपुट की जाँच करें और सुनिश्चित करें कि नियोजित संसाधन सही ढंग से दिखाई दे रहे हैं, और यदि सब कुछ सही है, तो लागू चरण में हाँ के साथ पुष्टि करें। फिर अमेज़ॅन ईसीआर कंसोल पर जाएं (या टर्मिनल में टेराफॉर्म के आउटपुट की जांच करें) और अपने ईसीआर रिपोजिटरी के लिए यूआरएल प्राप्त करें जिसे आपने टेराफॉर्म के माध्यम से बनाया है।
आउटपुट निम्न प्रदर्शित आउटपुट के समान दिखना चाहिए, जिसमें ECR रिपॉजिटरी URL भी शामिल है:
अपनी डॉकर छवि को अमेज़ॅन ईसीआर पर पुश करें
एमएल पाइपलाइन और सेजमेकर को अनुमान के लिए सेजमेकर एंडपॉइंट को प्रशिक्षित करने और प्रावधान करने के लिए, आपको एक डॉकर छवि प्रदान करने और इसे अमेज़ॅन ईसीआर में संग्रहीत करने की आवश्यकता है। आप निर्देशिका में एक उदाहरण पा सकते हैं src/container
. यदि आपने पहले चरण से AWS अवसंरचना को पहले ही लागू कर लिया है, तो आप वर्णित अनुसार डॉकर छवि को आगे बढ़ा सकते हैं। आपकी डॉकर छवि विकसित होने के बाद, आप निम्नलिखित क्रियाएं कर सकते हैं और इसे Amazon ECR पर धकेल सकते हैं (अपनी आवश्यकताओं के अनुसार Amazon ECR URL को समायोजित करें):
यदि आपने पहले ही टेराफॉर्म के साथ एडब्ल्यूएस इन्फ्रास्ट्रक्चर लागू कर दिया है, तो आप टेराफॉर्म के माध्यम से फिर से तैनात किए बिना अपने कोड और डॉकर छवि के परिवर्तनों को सीधे अमेज़ॅन ईसीआर पर धकेल सकते हैं।
एमएल पाइपलाइन चलाएं
एमएल पाइपलाइन को प्रशिक्षित करने और चलाने के लिए, स्टेप फंक्शंस कंसोल पर जाएं और कार्यान्वयन शुरू करें। आप राज्य मशीन के विज़ुअलाइज़ेशन में प्रत्येक चरण की प्रगति की जांच कर सकते हैं। आप सेजमेकर प्रशिक्षण कार्य प्रगति और अपने सेजमेकर समापन बिंदु की स्थिति भी देख सकते हैं।
स्टेप फंक्शन्स में स्टेट मशीन को सफलतापूर्वक चलाने के बाद, आप देख सकते हैं कि सेजमेकर एंडपॉइंट बनाया गया है। सेजमेकर कंसोल पर, चुनें अनुमान नेविगेशन फलक में, फिर endpoints. इनसर्विस में स्थिति बदलने के लिए प्रतीक्षा करना सुनिश्चित करें।
अपने समापन बिंदु को आमंत्रित करें
अपने एंडपॉइंट को लागू करने के लिए (इस उदाहरण में, आईरिस डेटासेट के लिए), आप निम्न पायथन स्क्रिप्ट का उपयोग कर सकते हैं: अजगर के लिए AWS SDK (Boto3). आप इसे सेजमेकर नोटबुक से कर सकते हैं, या लैम्ब्डा फ़ंक्शन में निम्नलिखित कोड स्निपेट एम्बेड कर सकते हैं:
क्लीन अप
आप टेराफॉर्म द्वारा बनाए गए बुनियादी ढांचे को टेराफॉर्म नष्ट करने के आदेश के साथ नष्ट कर सकते हैं, लेकिन आपको पहले एस 3 बाल्टी में डेटा और फाइलों को हटाना होगा। इसके अलावा, सेजमेकर एंडपॉइंट (या मल्टीपल सेजमेकर एंडपॉइंट्स अगर कई बार चलाए जाते हैं) स्टेप फंक्शंस के माध्यम से बनाया जाता है और टेराफॉर्म के माध्यम से प्रबंधित नहीं किया जाता है। इसका मतलब है कि स्टेप फ़ंक्शंस के साथ एमएल पाइपलाइन चलाते समय तैनाती होती है। इसलिए, सुनिश्चित करें कि आप अनावश्यक लागतों से बचने के लिए स्टेप फंक्शंस एमएल पाइपलाइन के माध्यम से बनाए गए सेजमेकर एंडपॉइंट या एंडपॉइंट को हटा दें। निम्नलिखित चरणों को पूरा करें:
- Amazon S3 कंसोल पर, S3 प्रशिक्षण बकेट में डेटासेट हटाएं।
- S3 मॉडल बकेट में ML पाइपलाइन के माध्यम से आपके द्वारा प्रशिक्षित सभी मॉडल हटाएं, या तो Amazon S3 कंसोल या AWS CLI के माध्यम से।
- टेराफॉर्म के माध्यम से बनाए गए बुनियादी ढांचे को नष्ट करें:
- सेजमेकर एंडपॉइंट, एंडपॉइंट कॉन्फ़िगरेशन, और स्टेप फ़ंक्शंस के माध्यम से बनाए गए मॉडल को या तो सेजमेकर कंसोल पर या एडब्ल्यूएस सीएलआई के माध्यम से हटा दें।
निष्कर्ष
बधाई हो! आपने टेराफॉर्म के साथ सेजमेकर का उपयोग करके एक एमएल पाइपलाइन तैनात की है। यह उदाहरण समाधान दिखाता है कि आप पुन: प्रयोज्य फैशन में एमएल पाइपलाइनों के लिए एडब्ल्यूएस आधारभूत संरचना और सेवाओं को आसानी से कैसे तैनात कर सकते हैं। यह आपको कई उपयोग के मामलों या क्षेत्रों के लिए स्केल करने की अनुमति देता है, और एमएल मॉडल को एक क्लिक के साथ लगातार तरीके से प्रशिक्षण और तैनात करने में सक्षम बनाता है। इसके अलावा, आप ML पाइपलाइन को कई बार चला सकते हैं, उदाहरण के लिए, जब नया डेटा उपलब्ध हो या आप एल्गोरिथम कोड बदलना चाहते हों। आप अलग-अलग सेजमेकर एंडपॉइंट्स के लिए अनुरोधों या ट्रैफ़िक को रूट करना भी चुन सकते हैं।
मैं आपको अपनी आवश्यकताओं और संभावित कंपनी मानकों के अनुसार सुरक्षा सुविधाओं को जोड़ने और सुरक्षा सर्वोत्तम प्रथाओं को अपनाने का पता लगाने के लिए प्रोत्साहित करता हूं। इसके अतिरिक्त, इस समाधान को अपनी CI/CD पाइपलाइनों में एम्बेड करने से आपको अपनी आवश्यकताओं के अनुसार DevOps की सर्वोत्तम प्रथाओं और मानकों को अपनाने और स्थापित करने में और अधिक क्षमताएँ मिलेंगी।
लेखक के बारे में
ओलिवर ज़ोलिकोफ़ेर अमेज़न वेब सर्विसेज में डेटा साइंटिस्ट हैं। वह वैश्विक उद्यम ग्राहकों को मशीन लर्निंग मॉडल बनाने, प्रशिक्षित करने और तैनात करने के साथ-साथ एमएलओपीएस के साथ एमएल मॉडल जीवनचक्र का प्रबंधन करने में सक्षम बनाता है। इसके अलावा, वह संबंधित क्लाउड समाधान बनाता है और आर्किटेक्ट करता है।
- कॉइनस्मार्ट। यूरोप का सर्वश्रेष्ठ बिटकॉइन और क्रिप्टो एक्सचेंज।
- प्लेटोब्लॉकचैन। Web3 मेटावर्स इंटेलिजेंस। ज्ञान प्रवर्धित। नि: शुल्क प्रवेश।
- क्रिप्टोहॉक। Altcoin रडार। मुफ्त परीक्षण।
- स्रोत: https://aws.amazon.com/blogs/machine-learning/deploy-and-manage-machine-learning-pipelines-with-terraform-using-amazon-sagemaker/
- "
- 100
- 7
- पहुँच
- अनुसार
- के पार
- कार्रवाई
- इसके अलावा
- अतिरिक्त
- कलन विधि
- सब
- पहले ही
- वीरांगना
- अमेज़ॅन वेब सेवा
- अन्य
- दृष्टिकोण
- स्थापत्य
- क्षेत्र
- उपलब्ध
- एडब्ल्यूएस
- जा रहा है
- BEST
- सर्वोत्तम प्रथाओं
- परिवर्तन
- सीमा
- निर्माण
- बनाता है
- क्षमताओं
- मामलों
- CD
- परिवर्तन
- चुनें
- बादल
- क्लाउड इन्फ्रास्ट्रक्चर
- कोड
- कंपनी
- विन्यास
- कंसोल
- कंटेनर
- शामिल हैं
- लागत
- बनाया
- बनाता है
- ग्राहक
- ग्राहक
- तिथि
- आँकड़े वाला वैज्ञानिक
- तैनात
- तैनात
- तैनाती
- तैनाती
- वर्णित
- डिज़ाइन
- को नष्ट
- नष्ट
- विकसित करना
- विकसित
- डेवलपर्स
- विकासशील
- विकास
- विभिन्न
- सीधे
- डाक में काम करनेवाला मज़दूर
- आसानी
- सक्षम
- प्रोत्साहित करना
- endpoint
- उद्यम
- सब कुछ
- उदाहरण
- मौजूदा
- का पता लगाने
- फैशन
- विशेषताएं
- आकृति
- प्रथम
- पहली बार
- का पालन करें
- निम्नलिखित
- समारोह
- आगे
- सृजन
- वैश्विक
- होने
- कैसे
- How To
- HTTPS
- पहचान
- की छवि
- कार्यान्वयन
- कार्यान्वित
- महत्व
- शामिल
- शामिल
- सहित
- तेजी
- इंफ्रास्ट्रक्चर
- निवेश
- बातचीत
- IT
- काम
- ताज़ा
- सीख रहा हूँ
- लाइन
- मशीन
- यंत्र अधिगम
- प्रबंधन
- कामयाब
- प्रबंध
- ML
- आदर्श
- मॉडल
- विभिन्न
- नामों
- पथ प्रदर्शन
- आवश्यक
- नोटबुक
- खुला
- संचालन
- आदेश
- अन्य
- नीतियाँ
- संभव
- संभावित
- परियोजना
- प्रदान करना
- प्रदान करता है
- कोष
- का अनुरोध
- अनुरोधों
- आवश्यकताएँ
- उपयुक्त संसाधन चुनें
- प्रतिक्रिया
- मार्ग
- रन
- दौड़ना
- स्केलेबल
- स्केल
- वैज्ञानिक
- एसडीके
- सुरक्षा
- सेवाएँ
- समान
- सरल
- आकार
- ठोस
- समाधान
- समाधान ढूंढे
- ट्रेनिंग
- मानकों
- प्रारंभ
- शुरू होता है
- राज्य
- स्थिति
- भंडारण
- की दुकान
- सफलतापूर्वक
- अंतिम
- इसलिये
- यहाँ
- पहर
- यातायात
- प्रशिक्षण
- अद्वितीय
- उपयोग
- दृश्य
- प्रतीक्षा
- वेब
- वेब सेवाओं
- जब
- बिना
- काम