मशीन लर्निंग (एमएल) मॉडल के साथ इंटरैक्ट करने के लिए वेब इंटरफेस विकसित करना एक कठिन काम है। साथ स्ट्रीमलाइट, अपने एमएल समाधान के लिए डेमो एप्लिकेशन विकसित करना आसान है। स्ट्रीमलाइट एक ओपन-सोर्स पायथन लाइब्रेरी है जो एमएल और डेटा साइंस के लिए वेब ऐप बनाना और साझा करना आसान बनाती है। डेटा वैज्ञानिक के रूप में, हो सकता है कि आप डेटासेट के लिए अपने निष्कर्षों को प्रदर्शित करना चाहें, या किसी प्रशिक्षित मॉडल को परिनियोजित करना चाहें। स्ट्रीमलिट एप्लिकेशन आपकी टीम के लिए किसी प्रोजेक्ट पर प्रगति प्रस्तुत करने, अपने प्रबंधकों के लिए अंतर्दृष्टि प्राप्त करने और साझा करने और यहां तक कि ग्राहकों से प्रतिक्रिया प्राप्त करने के लिए उपयोगी होते हैं।
के एकीकृत विकास पर्यावरण (आईडीई) के साथ अमेज़ॅन सैजमेकर स्टूडियो साथ में ज्यूपिटर लैब 3, हम विकास के उद्देश्यों के लिए उसी वातावरण के भीतर स्ट्रीमलिट वेब ऐप्स बना सकते हैं, चला सकते हैं और सेवा दे सकते हैं। यह पोस्ट किसी भी समय लेने वाले फ्रंट-एंड डेवलपमेंट के बिना एक सुरक्षित और प्रतिलिपि प्रस्तुत करने योग्य तरीके से स्टूडियो में स्ट्रीमलिट ऐप्स बनाने और होस्ट करने की रूपरेखा तैयार करती है। उदाहरण के तौर पर, हम एक प्रथा का उपयोग करते हैं अमेज़ॅन रेकग्निशन डेमो, जो एक अपलोड की गई छवि को एनोटेट और लेबल करेगा। यह एक शुरुआती बिंदु के रूप में काम करेगा, और इसे किसी भी कस्टम एमएल मॉडल को प्रदर्शित करने के लिए सामान्यीकृत किया जा सकता है। इस ब्लॉग का कोड इसमें पाया जा सकता है गिटहब भंडार.
समाधान अवलोकन
निम्नलिखित हमारे समाधान का आर्किटेक्चर आरेख है।
एक उपयोगकर्ता पहले ब्राउज़र के माध्यम से स्टूडियो तक पहुँचता है। उपयोगकर्ता प्रोफ़ाइल से जुड़ा ज्यूपिटर सर्वर स्टूडियो अमेज़ॅन इलास्टिक कंप्यूट क्लाउड (अमेज़ॅन ईसी 2) उदाहरण के अंदर चलता है। स्टूडियो EC2 उदाहरण के अंदर उदाहरण कोड और निर्भरता सूची मौजूद है। उपयोगकर्ता सिस्टम टर्मिनल में Streamlit ऐप, app.py चला सकता है। स्टूडियो ज्यूपिटर सर्वर में ज्यूपिटरलैब यूआई चलाता है, जो नोटबुक गुठली से अलग होता है। ज्यूपिटर सर्वर एक प्रॉक्सी के साथ आता है और हमें अपने स्ट्रीमलिट ऐप तक पहुंचने की अनुमति देता है। ऐप के चलने के बाद, उपयोगकर्ता URL को समायोजित करके AWS ज्यूपिटर प्रॉक्सी के माध्यम से एक अलग सत्र शुरू कर सकता है।
सुरक्षा पहलू से, AWS ज्यूपिटर प्रॉक्सी को AWS प्रमाणीकरण द्वारा बढ़ाया जाता है। जब तक उपयोगकर्ता के पास AWS खाते, स्टूडियो डोमेन आईडी और उपयोगकर्ता प्रोफ़ाइल तक पहुंच है, तब तक वे लिंक तक पहुंच सकते हैं।
JupyterLab 3.0 का उपयोग करके स्टूडियो बनाएं
इस समाधान के काम करने के लिए JupyterLab 3 के साथ स्टूडियो स्थापित होना चाहिए। पुराने संस्करण इस पोस्ट में उल्लिखित सुविधाओं का समर्थन नहीं कर सकते हैं। अधिक जानकारी के लिए, देखें Amazon SageMaker Studio और SageMaker Notebook Instance अब डेवलपर उत्पादकता बढ़ाने के लिए JupyterLab 3 नोटबुक के साथ आए हैं. डिफ़ॉल्ट रूप से, स्टूडियो JupyterLab 3 के साथ आता है। यदि आप पुराना संस्करण चला रहे हैं तो आपको संस्करण की जांच करनी चाहिए और इसे बदलना चाहिए। अधिक जानकारी के लिए, देखें ज्यूपिटरलैब संस्करण.
आप का उपयोग कर स्टूडियो स्थापित कर सकते हैं AWS क्लाउड डेवलपमेंट किट (एडब्ल्यूएस सीडीके); अधिक जानकारी के लिए, देखें AWS CDK का उपयोग करके Jupyter Lab 3 के साथ Amazon SageMaker Studio की स्थापना करें. वैकल्पिक रूप से, आप डोमेन सेटिंग बदलने के लिए SageMaker कंसोल का उपयोग कर सकते हैं। निम्नलिखित चरणों को पूरा करें:
- SageMaker कंसोल पर, चुनें डोमेन नेविगेशन फलक में
- अपना डोमेन चुनें और चुनें संपादित करें.
- के लिए डिफ़ॉल्ट ज्यूपिटर लैब संस्करण, सुनिश्चित करें कि संस्करण इस पर सेट है ज्यूपिटर लैब 3.0.
(वैकल्पिक) एक साझा स्थान बनाएँ
हम डॉक्स या इस ब्लॉग में चरणों का पालन करके मौजूदा डोमेन में साझा स्थान के लिए समर्थन जोड़ने के लिए सैजमेकर कंसोल या एडब्ल्यूएस सीएलआई का उपयोग कर सकते हैं। AWS में साझा स्थान बनाने के निम्नलिखित लाभ हैं:
- सहयोग: एक साझा स्थान एकाधिक उपयोगकर्ताओं या टीमों को डेटा या आधारभूत संरचना को डुप्लिकेट किए बिना प्रोजेक्ट या संसाधनों के सेट पर सहयोग करने की अनुमति देता है।
- लागत बचत: प्रत्येक उपयोगकर्ता या टीम अपने संसाधनों को बनाने और प्रबंधित करने के बजाय, एक साझा स्थान अधिक लागत प्रभावी हो सकता है, क्योंकि संसाधनों को पूल किया जा सकता है और कई उपयोगकर्ताओं में साझा किया जा सकता है।
- सरलीकृत प्रबंधन: एक साझा स्थान के साथ, प्रशासक प्रत्येक उपयोगकर्ता या टीम के लिए समान संसाधनों के कई उदाहरणों को प्रबंधित करने के बजाय केंद्रीय रूप से संसाधनों का प्रबंधन कर सकते हैं।
- बेहतर मापनीयता: बदलती मांगों को पूरा करने के लिए एक साझा स्थान को अधिक आसानी से बढ़ाया या घटाया जा सकता है, क्योंकि विभिन्न उपयोगकर्ताओं या टीमों की जरूरतों को पूरा करने के लिए संसाधनों को गतिशील रूप से आवंटित किया जा सकता है।
- बढ़ी हुई सुरक्षा: एक साझा स्थान में संसाधनों को केंद्रीकृत करके, सुरक्षा में सुधार किया जा सकता है, क्योंकि अभिगम नियंत्रण और निगरानी को अधिक आसानी से और लगातार लागू किया जा सकता है।
निर्भरताएँ स्थापित करें और स्टूडियो पर उदाहरण को क्लोन करें
अगला, हम स्टूडियो लॉन्च करते हैं और सिस्टम टर्मिनल खोलते हैं। हम अपने ऐप को लॉन्च करने के लिए अपने उदाहरण और सिस्टम टर्मिनल को क्लोन करने के लिए SageMaker IDE का उपयोग करते हैं। इस ब्लॉग का कोड इसमें पाया जा सकता है गिटहब भंडार. हम रिपॉजिटरी की क्लोनिंग से शुरू करते हैं:
अगला, हम सिस्टम टर्मिनल खोलते हैं।
एक बार क्लोन करने के बाद, सिस्टम टर्मिनल में निम्नलिखित कमांड चलाकर हमारे उदाहरण कोड को चलाने के लिए निर्भरताएँ स्थापित करें। यह पहले पाइप चलाकर निर्भरताओं को स्थापित करेगा pip install --no-cache-dir -r requirements.txt
। no-cache-dir
फ़्लैग कैश को निष्क्रिय कर देगा। कैशिंग स्थापना फ़ाइलों को संग्रहीत करने में मदद करता है (.whl
) आपके द्वारा पाइप के माध्यम से स्थापित किए गए मॉड्यूल के। यह स्रोत फ़ाइलों को भी संग्रहीत करता है (.tar.gz
) समाप्त न होने पर पुनः डाउनलोड करने से बचने के लिए। यदि हमारी हार्ड ड्राइव पर जगह नहीं है या यदि हम डॉकर छवि को जितना संभव हो उतना छोटा रखना चाहते हैं, तो हम इस ध्वज का उपयोग कर सकते हैं ताकि कम से कम मेमोरी उपयोग के साथ आदेश पूरा हो सके। आगे स्क्रिप्ट संकुल संस्थापित करेगी iproute
और jq
, जिसका उपयोग अगले चरण में किया जाएगा।sh setup.sh
स्ट्रीमलिट डेमो चलाएं और साझा करने योग्य लिंक बनाएं
यह सत्यापित करने के लिए कि सभी निर्भरताएँ सफलतापूर्वक स्थापित हैं और Amazon Rekognition डेमो देखने के लिए, निम्न कमांड चलाएँ:
ऐप को होस्ट करने वाला पोर्ट नंबर प्रदर्शित किया जाएगा।
ध्यान दें कि विकसित करते समय, स्क्रिप्ट को स्वचालित रूप से फिर से चलाने में मददगार हो सकता है app.py
डिस्क पर संशोधित किया गया है। करने के लिए, ताकि हम runOnSave को संशोधित कर सकें विन्यास विकल्प जोड़कर --server.runOnSave true
हमारे आदेश के लिए ध्वजांकित करें:
निम्नलिखित स्क्रीनशॉट एक उदाहरण दिखाता है कि टर्मिनल पर क्या प्रदर्शित किया जाना चाहिए।
उपरोक्त उदाहरण से हम पोर्ट नंबर, डोमेन आईडी और स्टूडियो URL देखते हैं, जिस पर हम अपना ऐप चला रहे हैं। अंत में, हम वह URL देख सकते हैं जिसका उपयोग हमें अपने स्ट्रीमलिट ऐप तक पहुँचने के लिए करना होगा। यह स्क्रिप्ट स्टूडियो यूआरएल को बदल रही है, बदल रही है lab?
साथ में proxy/[PORT NUMBER]/
. रिकॉग्निशन ऑब्जेक्ट डिटेक्शन डेमो प्रदर्शित किया जाएगा, जैसा कि निम्नलिखित स्क्रीनशॉट में दिखाया गया है।
अब जबकि हमारे पास स्ट्रीमलिट ऐप काम कर रहा है, हम इस यूआरएल को किसी भी व्यक्ति के साथ साझा कर सकते हैं जिसकी इस स्टूडियो डोमेन आईडी और उपयोगकर्ता प्रोफ़ाइल तक पहुंच है। इन डेमो को साझा करना आसान बनाने के लिए, हम निम्न आदेश चलाकर स्थिति की जांच कर सकते हैं और सभी चल रहे स्ट्रीमलिट ऐप्स को सूचीबद्ध कर सकते हैं: sh status.sh
हम इस कार्य को विस्तारित करने के लिए जीवनचक्र स्क्रिप्ट या साझा स्थान का उपयोग कर सकते हैं। शेल स्क्रिप्ट को मैन्युअल रूप से चलाने और निर्भरताओं को स्थापित करने के बजाय, उपयोग करें जीवनचक्र स्क्रिप्ट इस प्रक्रिया को सुव्यवस्थित करने के लिए। इस ऐप को एक टीम के साथ विकसित और विस्तारित करने और साथियों के साथ डैशबोर्ड साझा करने के लिए, उपयोग करें साझा स्थान. स्टूडियो में साझा स्थान बनाकर, उपयोगकर्ता वास्तविक समय में एक स्ट्रीमलाइट ऐप विकसित करने के लिए साझा स्थान में सहयोग कर सकते हैं। एक साझा स्थान में सभी संसाधनों को फ़िल्टर और टैग किया जाता है, जिससे एमएल परियोजनाओं पर ध्यान केंद्रित करना और लागतों का प्रबंधन करना आसान हो जाता है। स्टूडियो में अपना स्वयं का एप्लिकेशन बनाने के लिए निम्नलिखित कोड का संदर्भ लें।
साफ - सफाई
एक बार जब हम ऐप का उपयोग कर लेते हैं, तो हम सुनने वाले पोर्ट को मुक्त करना चाहते हैं। सभी प्रक्रियाओं को सुचारू रूप से चलाने और उन्हें उपयोग के लिए मुक्त करने के लिए हम अपनी क्लीनअप स्क्रिप्ट चला सकते हैं: sh cleanup.sh
निष्कर्ष
इस पोस्ट में, हमने Amazon Rekognition का उपयोग करके ऑब्जेक्ट डिटेक्शन टास्क के लिए स्ट्रीमलिट डेमो होस्ट करने का एंड-टू-एंड उदाहरण दिखाया। हमने स्टूडियो में अपना स्वयं का स्ट्रीमलिट ऐप चलाने के लिए आवश्यक त्वरित वेब एप्लिकेशन, सुरक्षा विचार और सेटअप के निर्माण के लिए प्रेरणाओं को विस्तृत किया है। अंत में, हमने AWS ज्यूपिटर प्रॉक्सी के माध्यम से एक अलग सत्र शुरू करने के लिए अपने वेब ब्राउज़र में URL पैटर्न को संशोधित किया।
यह डेमो आपको किसी भी छवि को अपलोड करने और अमेज़ॅन रिकॉग्निशन से आउटपुट देखने की अनुमति देता है। परिणाम भी संसाधित होते हैं, और आप ऐप के माध्यम से सभी बाउंडिंग बॉक्स के साथ एक CSV फ़ाइल डाउनलोड कर सकते हैं। आप अपने खुद के डेटासेट को एनोटेट और लेबल करने के लिए इस काम का विस्तार कर सकते हैं, या अपने कस्टम मॉडल को दिखाने के लिए कोड को संशोधित कर सकते हैं!
लेखक के बारे में
दीपिका खुल्लर में एमएल इंजीनियर हैं अमेज़न एमएल सॉल्यूशंस लैब. वह ग्राहकों को उनकी व्यावसायिक समस्याओं को हल करने के लिए एमएल समाधानों को एकीकृत करने में मदद करती है। हाल ही में, उसने मीडिया ग्राहकों के लिए प्रशिक्षण और अनुमान पाइपलाइन और विपणन के लिए भविष्य कहनेवाला मॉडल बनाया है।
मार्सेलो एबरले AWS AI संगठन में एक एमएल इंजीनियर है। वह MLOps के प्रयासों का नेतृत्व कर रहा है अमेज़न एमएल सॉल्यूशंस लैब, ग्राहकों को स्केलेबल एमएल सिस्टम डिजाइन और कार्यान्वित करने में मदद करना। उनका मिशन ग्राहकों को उनकी उद्यम एमएल यात्रा पर मार्गदर्शन करना और उत्पादन के लिए उनके एमएल पथ को तेज करना है।
यश शाह में साइंस मैनेजर हैं अमेज़न एमएल सॉल्यूशंस लैब. वह और उनकी अनुप्रयुक्त वैज्ञानिकों और एमएल इंजीनियरों की टीम स्वास्थ्य देखभाल, खेल, मोटर वाहन और विनिर्माण से एमएल उपयोग मामलों की एक श्रृंखला पर काम करती है।
- एसईओ संचालित सामग्री और पीआर वितरण। आज ही प्रवर्धित हो जाओ।
- प्लेटोब्लॉकचैन। Web3 मेटावर्स इंटेलिजेंस। ज्ञान प्रवर्धित। यहां पहुंचें।
- स्रोत: https://aws.amazon.com/blogs/machine-learning/build-streamlit-apps-in-amazon-sagemaker-studio/
- :है
- $यूपी
- 100
- 7
- a
- ऊपर
- में तेजी लाने के
- पहुँच
- लेखा
- के पार
- प्रशासकों
- AI
- सब
- आवंटित
- की अनुमति देता है
- वीरांगना
- अमेज़ॅन EC2
- अमेज़ॅन रेकग्निशन
- अमेज़न SageMaker
- अमेज़ॅन सैजमेकर स्टूडियो
- और
- किसी
- अनुप्रयोग
- अनुप्रयोगों
- लागू
- क्षुधा
- स्थापत्य
- हैं
- AS
- पहलू
- जुड़े
- At
- प्रमाणीकरण
- स्वतः
- मोटर वाहन
- एडब्ल्यूएस
- BE
- लाभ
- ब्लॉग
- बढ़ावा
- बक्से
- ब्राउज़र
- निर्माण
- इमारत
- बनाया गया
- व्यापार
- by
- कैश
- कर सकते हैं
- मामलों
- परिवर्तन
- बदलना
- चेक
- चुनें
- बादल
- कोड
- सहयोग
- कैसे
- पूरा
- समापन
- गणना करना
- विचार
- कंसोल
- नियंत्रण
- प्रभावी लागत
- लागत
- बनाना
- बनाना
- रिवाज
- ग्राहक
- तिथि
- डेटा विज्ञान
- आँकड़े वाला वैज्ञानिक
- चूक
- मांग
- क़ौम
- तैनात
- डिज़ाइन
- विस्तृत
- खोज
- विकसित करना
- डेवलपर
- विकासशील
- विकास
- विभिन्न
- डाक में काम करनेवाला मज़दूर
- डोमेन
- नीचे
- डाउनलोड
- ड्राइव
- गतिशील
- से प्रत्येक
- आसान
- आसानी
- प्रयासों
- शुरू से अंत तक
- इंजीनियर
- इंजीनियर्स
- उद्यम
- वातावरण
- और भी
- उदाहरण
- मौजूदा
- मौजूद
- विस्तार
- विशेषताएं
- प्रतिक्रिया
- पट्टिका
- फ़ाइलें
- अंत में
- प्रथम
- फोकस
- निम्नलिखित
- के लिए
- पाया
- मुक्त
- से
- पाने
- मिल
- मिल रहा
- गाइड
- कठिन
- हार्ड ड्राइव
- है
- होने
- स्वास्थ्य सेवा
- सहायक
- मदद
- मदद करता है
- मेजबान
- होस्टिंग
- कैसे
- How To
- एचटीएमएल
- HTTPS
- ID
- की छवि
- लागू करने के
- उन्नत
- in
- करें-
- इंफ्रास्ट्रक्चर
- आरंभ
- अंतर्दृष्टि
- स्थापित
- installed
- स्थापित कर रहा है
- उदाहरण
- बजाय
- एकीकृत
- एकीकृत
- बातचीत
- इंटरफेस
- IT
- यात्रा
- जेपीजी
- रखना
- प्रयोगशाला
- लेबल
- लांच
- प्रमुख
- सीख रहा हूँ
- पुस्तकालय
- जीवन चक्र
- LINK
- सूची
- सुनना
- लंबा
- मशीन
- यंत्र अधिगम
- बनाना
- बनाता है
- निर्माण
- प्रबंधन
- प्रबंध
- प्रबंधक
- प्रबंधक
- प्रबंध
- ढंग
- मैन्युअल
- विनिर्माण
- विपणन (मार्केटिंग)
- मई..
- मीडिया
- मिलना
- याद
- हो सकता है
- कम से कम
- मिशन
- ML
- एमएलओपीएस
- आदर्श
- मॉडल
- संशोधित
- संशोधित
- मॉड्यूल
- निगरानी
- अधिक
- अधिकांश
- मंशा
- विभिन्न
- पथ प्रदर्शन
- आवश्यकता
- की जरूरत है
- अगला
- नोटबुक
- संख्या
- वस्तु
- ऑब्जेक्ट डिटेक्शन
- of
- on
- खुला
- खुला स्रोत
- संगठन
- उल्लिखित
- रूपरेखा
- अपना
- संकुल
- फलक
- पथ
- पैटर्न
- प्लेटो
- प्लेटो डेटा इंटेलिजेंस
- प्लेटोडाटा
- बिन्दु
- संभव
- पद
- समस्याओं
- प्रक्रिया
- प्रसंस्कृत
- प्रक्रियाओं
- उत्पादन
- प्रोफाइल
- प्रगति
- परियोजना
- परियोजनाओं
- प्रतिनिधि
- प्रयोजनों
- अजगर
- त्वरित
- रेंज
- बल्कि
- वास्तविक
- वास्तविक समय
- हाल ही में
- कोष
- अपेक्षित
- आवश्यकताएँ
- उपयुक्त संसाधन चुनें
- परिणाम
- रन
- दौड़ना
- sagemaker
- वही
- बचत
- अनुमापकता
- स्केलेबल
- विज्ञान
- वैज्ञानिक
- वैज्ञानिकों
- लिपियों
- सुरक्षित
- सुरक्षा
- अलग
- सेवा
- सत्र
- सेट
- सेटिंग्स
- व्यवस्था
- Share
- साझा
- बांटने
- खोल
- चाहिए
- प्रदर्शन
- दिखाया
- दिखाता है
- छोटा
- So
- समाधान
- समाधान ढूंढे
- हल
- स्रोत
- अंतरिक्ष
- रिक्त स्थान
- खेल-कूद
- प्रारंभ
- शुरुआत में
- स्थिति
- कदम
- कदम
- की दुकान
- भंडार
- सुवीही
- स्टूडियो
- सफलतापूर्वक
- समर्थन
- प्रणाली
- सिस्टम
- कार्य
- टीम
- टीमों
- अंतिम
- कि
- RSI
- स्रोत
- लेकिन हाल ही
- उन
- इन
- यहाँ
- पहर
- बहुत समय लगेगा
- सेवा मेरे
- प्रशिक्षित
- प्रशिक्षण
- ui
- अपलोड की गई
- यूआरएल
- us
- प्रयोग
- उपयोग
- उपयोगकर्ता
- उपयोगकर्ताओं
- सत्यापित
- संस्करण
- देखें
- वेब
- वेब अनुप्रयोग
- वेब ब्राउजर
- क्या
- कौन कौन से
- जब
- कौन
- मर्जी
- साथ में
- अंदर
- बिना
- काम
- काम कर रहे
- आप
- आपका
- जेफिरनेट