क्या आपने कभी तेज और अधिक कुशल ऐप्स बनाने की इच्छा की है, फिर भी पता चला है कि मानक प्रोग्रामिंग भाषाएं आपकी आवश्यकताओं को पूरा करने में असमर्थ हैं?
यह तब है जब मोजो भाषा चलन में आती है।
मोजो द्वारा विकसित एक नई प्रोग्रामिंग भाषा है मॉड्यूलर, एक कंपनी जो एआई इंफ्रास्ट्रक्चर में माहिर है।
यह विशेष रूप से एआई विकास सहित कई उपयोग मामलों के लिए डेवलपर्स को तेज और अधिक मजबूत ऐप्स बनाने में सक्षम बनाने के लिए डिज़ाइन किया गया है। इस पोस्ट में, हम क्या देखेंगे मोजो है, यह कैसे काम करता है, और आपको इसे अपने अगले प्रोजेक्ट में क्यों इस्तेमाल करना चाहिए।
मोजो की उत्पत्ति
मोजो के रचनाकारों ने एक प्रोग्रामिंग भाषा की आवश्यकता को पहचाना जो सी की गति और दक्षता के साथ पायथन की उपयोगिता को जोड़ती है।
और, उन्होंने एक ऐसी भाषा स्थापित की जो डेवलपर्स को मानक हार्डवेयर विवरण भाषाओं को सीखे बिना उच्च-प्रदर्शन वाले ऐप्स बनाने की अनुमति देगी।
नतीजतन, उन्होंने मोजो बनाया, जो सी-स्तरीय गति प्रदान करते हुए पायथन पारिस्थितिकी तंत्र के साथ पूरी तरह से संगत है।
मॉड्यूलर: मोजो भाषा के पीछे संगठन
तो, इस भविष्यवादी भाषा के निर्माता कौन हैं?
मॉड्यूलर क्रिस लैटनर और टिम डेविस द्वारा बनाया गया एक विश्व-अग्रणी AI इन्फ्रास्ट्रक्चर स्टार्टअप है, जो Google पर मिले और महसूस किया कि बहुत जटिल और खंडित इन्फ्रास्ट्रक्चर AI के वैश्विक प्रभाव को सीमित कर रहा था।
मॉड्यूलर का उद्देश्य और उद्देश्य मानवता को बढ़ाने के लिए एआई इंफ्रास्ट्रक्चर पर पुनर्विचार करना है। उनकी संस्कृति और सिद्धांत ग्राहकों, उच्च-गुणवत्ता वाले उत्पादन सॉफ़्टवेयर और सार्थक परिणाम देने पर एक प्रीमियम रखते हैं
मोजो के लक्ष्य
मोजो को मशीन लर्निंग एक्सेलेरेटर के लिए एक अद्वितीय प्रोग्रामिंग मॉडल प्रदान करने के लिए डिज़ाइन किया गया था।
मॉड्यूलर ने निर्धारित किया कि मोजो को सामान्य-उद्देश्य प्रोग्रामिंग की अनुमति देनी चाहिए क्योंकि आज के सीपीयू में टेन्सर और अन्य एआई त्वरक हैं। इसके अलावा, क्योंकि मशीन सीखने और अन्य क्षेत्रों में पायथन का व्यापक रूप से उपयोग किया जाता है, मॉड्यूलर ने पायथन पारिस्थितिकी तंत्र में शामिल होने का विकल्प चुना।
पायथन के उपयोग ने भाषा के डिजाइन को और आसान बना दिया। क्योंकि सिंटैक्स का अधिकांश हिस्सा पहले से ही निर्धारित किया गया था, इसके बजाय निगम संकलन तंत्र के निर्माण और विशेष प्रोग्रामिंग क्षमताओं को प्रदान करने पर ध्यान केंद्रित कर सकता था।
विचार करने के लिए महत्वपूर्ण विशेषताएं
programmability
प्रगतिशील प्रकार
मोजो लैंग्वेज की प्रगतिशील प्रकार की विशेषता डेवलपर्स को टाइप एनोटेशन का उपयोग करने में सक्षम बनाती है दक्षता बढ़ाएँ और त्रुटि जाँच।
डेवलपर्स अधिक प्रभावी कोड डिजाइन कर सकते हैं जो संकलन समय पर गलतियों का पता लगाता है, बग को समाप्त करता है और दक्षता को बढ़ाता है, और अधिक गहन प्रकार की जानकारी प्रदान करता है।
शून्य लागत सार
मोजो लैंग्वेज द्वारा प्रदान किए गए शून्य-लागत सार के लिए धन्यवाद, डेवलपर्स संरचनाओं में इनलाइन-आवंटन डेटा द्वारा भंडारण का नियंत्रण ले सकते हैं।
अतिरिक्त मेमोरी आवंटन की आवश्यकता को समाप्त करके, यह सुविधा कोड दक्षता में सुधार करती है और बॉयलरप्लेट कोड की मात्रा कम करती है।
एकीकृत भाषा ऑटो-ट्यूनिंग
मोजो लैंग्वेज में भाषा-एकीकृत ऑटो-ट्यूनिंग कार्यक्षमता डेवलपर्स को लक्षित हार्डवेयर से लाभ उठाने के लिए पैरामीटर के आदर्श मूल्यों को स्वचालित रूप से निर्धारित करने में सक्षम बनाती है।
इस कार्यक्षमता के साथ, प्रत्येक हार्डवेयर संयोजन के लिए इसे मैन्युअल रूप से समायोजित किए बिना कोड को अनुकूलित करना आसान है।
मोजो लैंग्वेज एआई विकास के लिए एक लचीला और प्रभावी उपकरण है क्योंकि यह एमएलआईआर (मल्टी-लेवल इंटरमीडिएट रिप्रेजेंटेशन), एक समानांतर विषम रनटाइम और त्वरित निर्माण समय की संपूर्ण शक्ति भी प्रदान करता है।
साथ में चलाना
मोजो एमएलआईआर का उपयोग करता है, जो प्रोग्रामर्स को समानांतरकरण के लिए एआई के लिए वैक्टर, थ्रेड्स और हार्डवेयर इकाइयों का उपयोग करने की अनुमति देता है। पायथन के एकल-थ्रेडेड निष्पादन के विपरीत मोजो कई कोरों पर समानांतर प्रसंस्करण का समर्थन करता है।
पायथन पर 35,000 गुना स्पीडअप के साथ, मोजो गति के मामले में अन्य भाषाओं को मात देता है।
इंटरोऑपरेबिलिटी
पूरे पायथन इकोसिस्टम के साथ इंटरऑपरेबिलिटी मोजो के अनूठे फायदों में से एक है। इसका तात्पर्य है कि आप मोजो को किसी भी मनमाना पुस्तकालय, जैसे कि नम्पी और माटप्लोटलिब, के साथ-साथ अपने बेस्पोक कोड के साथ जोड़ सकते हैं।
उदाहरण के लिए, आप Python लाइब्रेरी Matplotlib का उपयोग करके अपने मोजो कोड में डेटा की कल्पना कर सकते हैं।
तानाना
मोजो भी काफी लचीला है, जिससे उपयोगकर्ता मॉडल में पूर्व और बाद के प्रसंस्करण चरणों को जोड़ सकते हैं या नए चरणों के लिए मौजूदा चरणों को स्वैप कर सकते हैं।
अपने मॉडल और मॉड्यूलर स्टैक को बेहतर बनाने के लिए, डेवलपर्स कर्नेल फ्यूजन, ग्राफ रीराइट्स, शेप फ़ंक्शंस और अन्य तकनीकों का उपयोग कर सकते हैं।
आप इसे पायथन पर क्यों चुनेंगे?
पायथन अपने लचीलेपन और उच्च-प्रदर्शन संकलित पुस्तकालयों के कारण एक लोकप्रिय एआई विकास भाषा है। हालाँकि, यह C++ जैसी भाषाओं की तुलना में काफी धीमी है।
इसलिए, प्रोग्रामर प्रदर्शन-महत्वपूर्ण क्षेत्रों के लिए पायथन का उपयोग करने से बचने के लिए तेज़ भाषाओं के आसपास पायथन रैपर का उपयोग करना सीखते हैं।
यह दो-भाषा के मुद्दे की ओर जाता है, जिसमें मॉडल को पायथन से एक तेज कार्यान्वयन में बदलना चाहिए, जैसे ओएनएनएक्स या मशाल स्क्रिप्ट, जो कि पायथन की सभी क्षमताओं का समर्थन नहीं करता है। पायथन में प्रदर्शन के मुद्दे और अच्छी समांतर प्रसंस्करण की कमी भी है।
यहां तक कि अनुभवी प्रोग्रामर को भी दो-भाषा दुविधा के कारण अध्ययन, डिबग और प्रदर्शन के मुद्दों को संबोधित करना मुश्किल लगता है।
जिस तरह से भाषा संरचित है, उसके कारण पायथन क्या कर सकता है, इसके लिए बुनियादी प्रतिबंध भी हैं। जबकि बुनियादी घटकों को नियोजित करने वाले एल्गोरिदम का वास्तविक-विश्व कार्यान्वयन आसान दिखाई दे सकता है, यह काफी कठिन है और तेज भाषा के उपयोग की आवश्यकता है।
शुरुआत कैसे करें?
आरंभ करने के लिए आप अभी उनके खेल के मैदान में मोजो भाषा का उपयोग शुरू कर सकते हैं। जुपिटरहब-आधारित खेल का मैदान सबक देता है और अपना मोजो कोड बनाने का अवसर देता है, भले ही मोजो अभी भी प्रगति पर है।
आप खेल के मैदान तक पहुँचने के लिए उनकी वेबसाइट पर पहुँच के लिए पंजीकरण कर सकते हैं।
अपने प्रदर्शन लक्ष्यों तक पहुँचने के लिए, Mojo एकीकृत कैशिंग, मल्टीथ्रेडिंग और क्लाउड वितरण तकनीकों के साथ अगली पीढ़ी की कंपाइलर तकनीकों को नियोजित करता है।
यह सिस्टम प्रोग्रामिंग में अतिरिक्त प्रिमिटिव जोड़ता है और समय के साथ पायथन सुपरसेट बनने की इच्छा रखता है। मोजो के साथ कोडिंग शुरू करने के लिए, मोजो कंपाइलर का उपयोग टर्मिनल से उसी तरह मोजो प्रोग्राम चलाने के लिए करें जैसे कि पायथन करता है।
भाषा वर्तमान में विकास के अधीन है और इसका उद्देश्य डेवलपर्स के लिए सिस्टम प्रोग्रामिंग में अनुभव है।
लपेटें
मोजो को पायथन सुपरसेट माना जाता है। और, इसमें सी ++ और रस्ट के प्रदर्शन के साथ पायथन की सादगी को जोड़कर प्रोग्रामिंग में क्रांति लाने की क्षमता है।
इसका पूरा फायदा उठा सकते हैं पायथन पुस्तकालय पारिस्थितिक तंत्र, डेवलपर्स को सी, सी ++, जंग या सीयूडीए की आवश्यकता के बिना उच्च-प्रदर्शन पुस्तकालय बनाने की इजाजत देता है।
यह अपने ऑटोट्यूनिंग और संकलन-समय मेटा-प्रोग्रामिंग सुविधाओं के कारण पोर्टेबल कोड के उत्पादन को सक्षम बनाता है।
हालांकि यह अभी भी प्रगति पर है, इसमें एक दुर्जेय प्रोग्रामिंग टूल बनने और प्रोग्रामिंग उद्योग को बदलने की क्षमता है। इसलिए, हमें मॉड्यूलर से भविष्य के विकास के लिए तैयार रहना चाहिए!
क्रिस सैंटोस
क्या आपको लगता है कि बुनियादी से मध्यवर्ती ज्ञान रखने वाला व्यक्ति इस नई भाषा में अपनी पढ़ाई शुरू कर पाएगा? या क्या आप पहले जावास्क्रिप्ट या पायथन जैसी अधिक बुनियादी भाषा का अध्ययन करने की सलाह देते हैं?
इल्के कैंडन बेंगी
हैलो क्रिस, देर से प्रतिक्रिया के लिए खेद है! मेरा मानना है कि मोजो के साथ शुरू करने से पहले पायथन की बुनियादी समझ/अनुभव होना मददगार हो सकता है।