paint-brush
वास्तविक कारण कि क्यों AI को ऑब्जेक्ट स्टोरेज पर बनाया गया हैद्वारा@minio
7,293 रीडिंग
7,293 रीडिंग

वास्तविक कारण कि क्यों AI को ऑब्जेक्ट स्टोरेज पर बनाया गया है

द्वारा MinIO6m2024/08/29
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

मिनियो ऑब्जेक्ट स्टोर विशाल असंरचित डेटा झीलों के लिए वास्तविक मानक है। मिनियो सभी आधुनिक मशीन लर्निंग फ्रेमवर्क के साथ संगत है। यह 100% S3 API-संगत है, इसलिए आप अपने ऑन-प्रिमाइसेस या ऑन-डिवाइस ऑब्जेक्ट स्टोर के विरुद्ध ML वर्कलोड निष्पादित कर सकते हैं।
featured image - वास्तविक कारण कि क्यों AI को ऑब्जेक्ट स्टोरेज पर बनाया गया है
MinIO HackerNoon profile picture

1. असंरचित डेटा पर कोई सीमा नहीं

एक विशिष्ट (एकल नोड) AI मॉडल प्रशिक्षण सेटअप (ऑब्जेक्ट स्टोर से GPUs को डेटा फीड करने वाला PyTorch)


मशीन लर्निंग के मौजूदा प्रतिमान में, प्रदर्शन और क्षमता कंप्यूट के साथ बढ़ती है, जो वास्तव में डेटासेट आकार और मॉडल आकार ( न्यूरल लैंग्वेज मॉडल के लिए स्केलिंग कानून , कपलान एट अल।) के लिए एक प्रॉक्सी है। पिछले कुछ वर्षों में, इसने मशीन लर्निंग और डेटा इंफ्रास्ट्रक्चर के निर्माण के तरीके में व्यापक बदलाव लाए हैं - अर्थात्: स्टोरेज और कंप्यूट का पृथक्करण, असंरचित डेटा से भरे विशाल क्लाउड-नेटिव डेटा झीलों का निर्माण, और विशेष हार्डवेयर जो मैट्रिक्स गुणन को वास्तव में तेज़ी से कर सकते हैं।


जब किसी प्रशिक्षण डेटासेट, या यहां तक कि डेटासेट के किसी एक शार्ड को सिस्टम मेमोरी और/या स्थानीय स्टोरेज में उपलब्ध स्थान से अधिक स्थान की आवश्यकता होती है, तो संग्रहण को कंप्यूट से अलग करने का महत्व स्पष्ट रूप से स्पष्ट हो जाता है। जब मिनियो ऑब्जेक्ट स्टोर पर मौजूद डेटा पर प्रशिक्षण दिया जाता है, तो आपके प्रशिक्षण डेटा आकार की कोई सीमा नहीं होती है। सादगी और I/O थ्रूपुट पर मिनियो के फोकस के कारण, यह नेटवर्क ही है जो प्रशिक्षण गति और GPU उपयोग के लिए एकमात्र सीमित कारक बन जाता है।


किसी भी ऑब्जेक्ट स्टोर के सर्वश्रेष्ठ प्रदर्शन को वहन करने के अलावा, MinIO सभी आधुनिक मशीन लर्निंग फ्रेमवर्क के साथ संगत है। MinIO ऑब्जेक्ट स्टोर 100% S3 API-संगत भी है, इसलिए आप TorchData जैसी परिचित डेटासेट उपयोगिताओं का उपयोग करके अपने ऑन-प्रिमाइसेस या ऑन-डिवाइस ऑब्जेक्ट स्टोर के विरुद्ध ML वर्कलोड निष्पादित कर सकते हैं। S3 डेटापाइप ऐसी स्थिति में जहां आपके उपभोग करने वाले एप्लिकेशन को फ़ाइल-सिस्टम जैसी क्षमताओं की आवश्यकता होती है, आप ऑब्जेक्ट स्टोर फ़ाइल इंटरफेस के साथ मिनियो का उपयोग भी कर सकते हैं जैसे माउंटपॉइंट S3 या एस3एफएस भविष्य के ब्लॉग पोस्ट में, हम कुछ सामान्य PyTorch और FairSeq इंटरफेस (जैसे डेटासेट और टास्क, क्रमशः) के कस्टम कार्यान्वयन में MinIO पायथन SDK का उपयोग करेंगे ताकि मॉडल प्रशिक्षण के लिए 'कोई सीमा नहीं' प्रशिक्षण डेटा और उच्च GPU उपयोग को सक्षम किया जा सके।


आधुनिक एमएल स्टैक के साथ प्रदर्शन और संगतता से परे, ऑब्जेक्ट स्टोरेज के डिज़ाइन विकल्प, अर्थात् (1) एक फ्लैट नेमस्पेस, (2) पूरे ऑब्जेक्ट (और इसके मेटाडेटा) को सबसे कम तार्किक इकाई के रूप में एनकैप्सुलेशन, और (3) सरल HTTP क्रिया एपीआई, वे चीजें हैं जो ऑब्जेक्ट स्टोरेज को बड़े पैमाने पर असंरचित डेटा झीलों के लिए वास्तविक मानक बनाती हैं। मशीन लर्निंग के हाल के इतिहास पर एक नज़र डालने से पता चलता है कि प्रशिक्षण डेटा (और एक अर्थ में, मॉडल आर्किटेक्चर स्वयं) कम संरचित और अधिक सामान्य हो गए हैं। यह ऐसा मामला हुआ करता था कि मॉडल मुख्य रूप से सारणीबद्ध डेटा पर प्रशिक्षित होते थे। आजकल, सादे पाठ के पैराग्राफ से लेकर घंटों के वीडियो तक बहुत व्यापक रेंज है। जैसे-जैसे मॉडल आर्किटेक्चर और एमएल एप्लिकेशन विकसित होते हैं, ऑब्जेक्ट स्टोर का स्टेटलेस, स्कीमा-लेस और परिणामस्वरूप, स्केलेबल प्रकृति केवल अधिक महत्वपूर्ण हो जाती है।

2. मॉडल और डेटासेट के लिए समृद्ध मेटाडेटा

मेटाडेटा डेटासेट को टैग करने और मॉडल चेकपॉइंट के आँकड़ों का वर्णन करने में सक्षम बनाता है।


मिनियो ऑब्जेक्ट स्टोर के डिज़ाइन विकल्पों के कारण, प्रत्येक ऑब्जेक्ट में प्रदर्शन का त्याग किए बिना या समर्पित मेटाडेटा सर्वर के उपयोग की आवश्यकता के बिना समृद्ध, स्कीमा-रहित मेटाडेटा हो सकता है। जब आप अपने ऑब्जेक्ट में किस तरह का मेटाडेटा जोड़ना चाहते हैं, तो कल्पना ही एकमात्र सीमा है। हालाँकि, यहाँ कुछ विचार दिए गए हैं जो ML-संबंधित ऑब्जेक्ट के लिए विशेष रूप से उपयोगी हो सकते हैं:

मॉडल चेकपॉइंट के लिए : हानि फ़ंक्शन मान, प्रशिक्षण के लिए लिया गया समय, प्रशिक्षण के लिए प्रयुक्त डेटासेट।


डेटासेट के लिए: युग्मित इंडेक्स फ़ाइलों का नाम (यदि लागू हो), डेटासेट श्रेणी (प्रशिक्षण, सत्यापन, परीक्षण), डेटासेट के प्रारूप के बारे में जानकारी।

इस तरह का अत्यधिक वर्णनात्मक मेटाडेटा विशेष रूप से शक्तिशाली हो सकता है जब इसे इस मेटाडेटा को कुशलतापूर्वक अनुक्रमित करने और क्वेरी करने की क्षमता के साथ जोड़ा जाता है, यहां तक कि अरबों वस्तुओं में भी, कुछ ऐसा जो मिनियो एंटरप्राइज़ कैटलॉग उदाहरण के लिए, आप उन मॉडल चेकपॉइंट्स के लिए क्वेरी कर सकते हैं जिन्हें “परीक्षण” के रूप में टैग किया गया है या चेकपॉइंट्स जिन्हें किसी विशेष डेटासेट पर प्रशिक्षित किया गया है।

3. मॉडल और डेटासेट उपलब्ध, ऑडिट करने योग्य और संस्करण योग्य हैं


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


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


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

4. स्वामित्व वाली सेवा अवसंरचना

अनुमान के लिए पैटर्न प्रस्तुत करने वाला विशिष्ट मॉडल। बाईं ओर, तृतीय-पक्ष मॉडल रिपॉजिटरी पर निर्भर करता है और दाईं ओर, आपके अपने चेकपॉइंट स्टोर पर निर्भर करता है।


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


पिछली पोस्ट में , हमने ऑब्जेक्ट स्टोर पर मॉडल फ़ाइलों को संग्रहीत करने के लाभों का पता लगाया और उन्हें PyTorch से TorchServe इंफ़रेंस फ़्रेमवर्क के साथ सीधे कैसे प्रस्तुत किया जाए। हालाँकि, यह पूरी तरह से मॉडल और फ़्रेमवर्क-अज्ञेय रणनीति है।


लेकिन यह क्यों मायने रखता है? नेटवर्क लैग या थर्ड-पार्टी मॉडल रिपॉजिटरी पर आउटेज के कारण मॉडल अनुमान के लिए धीमी गति से उपलब्ध हो सकते हैं या पूरी तरह से अनुपलब्ध हो सकते हैं। इसके अलावा, ऐसे उत्पादन वातावरण में जहां अनुमान सर्वर स्केलिंग कर रहे हैं और नियमित रूप से मॉडल चेकपॉइंट खींचने की आवश्यकता है, यह समस्या और भी बढ़ सकती है। सबसे सुरक्षित और/या गंभीर परिस्थितियों में, जहाँ संभव हो, इंटरनेट पर थर्ड-पार्टी निर्भरता से बचना सबसे अच्छा है। एक निजी या हाइब्रिड क्लाउड ऑब्जेक्ट स्टोर के रूप में मिनियो के साथ, इन समस्याओं से पूरी तरह से बचना संभव है।

समापन विचार

भविष्य के डेटा इंफ्रास्ट्रक्चर का AI का चित्रण, रोबोट और ... पवन चक्कियों के साथ?


ये चार कारण किसी भी तरह से एक संपूर्ण सूची नहीं हैं। डेवलपर्स और संगठन अपने AI वर्कलोड के लिए कई तरह के कारणों से MinIO ऑब्जेक्ट स्टोरेज का उपयोग करते हैं, जिसमें विकास की आसानी से लेकर इसके सुपर लाइट फ़ुटप्रिंट तक शामिल हैं।


इस पोस्ट की शुरुआत में, हमने AI के लिए उच्च प्रदर्शन ऑब्जेक्ट स्टोर को अपनाने के पीछे की प्रेरक शक्तियों को कवर किया। स्केलिंग कानून लागू हों या न हों, यह निश्चित रूप से सच होने जा रहा है कि संगठन और उनके AI कार्यभार हमेशा उपलब्ध सर्वोत्तम I/O थ्रूपुट क्षमता से लाभान्वित होंगे। इसके अलावा, हम काफी हद तक आश्वस्त हो सकते हैं कि डेवलपर्स कभी भी ऐसे API की मांग नहीं करेंगे जिनका उपयोग करना कठिन हो और ऐसा सॉफ़्टवेयर जो 'बस काम करे।' किसी भी भविष्य में जहां ये धारणाएं लागू होती हैं, उच्च प्रदर्शन ऑब्जेक्ट स्टोर ही रास्ता है।


इसे पढ़ने वाले किसी भी आर्किटेक्ट और इंजीनियरिंग निर्णय निर्माताओं के लिए, यहाँ बताई गई कई बेहतरीन प्रथाओं को स्वचालित किया जा सकता है ताकि यह सुनिश्चित किया जा सके कि ऑब्जेक्ट स्टोरेज का इस तरह से लाभ उठाया जाए जो आपके AI/ML वर्कफ़्लो को सरल और अधिक स्केलेबल बनाता है। यह किसी भी आधुनिक MLOps टूल सेट के उपयोग के माध्यम से किया जा सकता है। AI/ML SME कीथ पिजानोव्स्की ने इनमें से कई टूल का पता लगाया है - MLOps टूलिंग के बारे में अधिक जानकारी के लिए Kubeflow, MLflow और MLRun के लिए हमारी ब्लॉग साइट पर खोजें। हालाँकि, अगर ये MLOps टूल आपके संगठन के लिए कोई विकल्प नहीं हैं और आपको जल्दी से आगे बढ़ने की ज़रूरत है, तो इस पोस्ट में दिखाई गई तकनीकें MinIO के साथ अपने AI/ML वर्कफ़्लो को प्रबंधित करने का सबसे अच्छा तरीका हैं।


डेवलपर्स (या किसी भी जिज्ञासु व्यक्ति के लिए), भविष्य के ब्लॉग पोस्ट में, हम ऑब्जेक्ट स्टोर का लाभ उठाने के लिए एमएल फ्रेमवर्क को अनुकूलित करने के लिए एक एंड-टू-एंड वॉकथ्रू करेंगे, जिसका लक्ष्य 'कोई सीमा नहीं' प्रशिक्षण डेटा और उचित GPU उपयोग है।


पढ़ने के लिए धन्यवाद, मुझे आशा है कि यह जानकारीपूर्ण था! हमेशा की तरह, यदि आपके पास कोई प्रश्न है तो हमारे साथ जुड़ें स्लैक चैनल या हमें एक नोट भेजें [email protected] .