लेबलर नियरबाय
Table of Contents
मेरी पहली हैकाथॉन
2022 की गर्मियों के बाद के हिस्सों में, मैं एक रोमांचक प्रोजेक्ट पर काम करना चाहता था। मैंने अभी-अभी अपनी स्नातक डिग्री पूरी की थी और एक सॉफ्टवेयर इंजीनियर के रूप में पूर्णकालिक काम कर रहा था। मैं एक साइड प्रोजेक्ट को कमिट करना चाहता था और उस समय मेरे पास पर्याप्त फ्री टाइम था। मुझे नहीं पता था कि क्या काम करूँ, जब तक कि मैंने अगस्त 2022 में एक वेबसाइट Devpost नहीं खोजी। Devpost एक वेबसाइट है जो सॉफ्टवेयर प्रतियोगिताओं को हैकाथॉन के रूप में आयोजित करती है। Devpost ब्राउज़ करते हुए, मैंने एक हैकाथॉन NEAR MetaBUILD III पाया जो NEAR Protocol द्वारा आयोजित था।
NEAR क्या है?
NEAR प्रोटोकॉल एक ब्लॉकचेन है जो स्मार्ट कॉन्ट्रैक्ट्स और NEAR क्रिप्टोकरेंसी को सपोर्ट करता है। यह मुख्य रूप से बहुत कम ट्रांज़िशन फीस, स्मार्ट कॉन्ट्रैक्ट्स का समर्थन, अपना आधिकारिक टेस्ट नेटवर्क, और एक शानदार डेवलपर वातावरण के लिए जाना जाता है क्योंकि आप Rust और/या JavaScript में स्मार्ट कॉन्ट्रैक्ट लिख सकते हैं। आप NEAR प्रोटोकॉल का एक बेहतर अवलोकन CoinGecko के शानदार वीडियो से देख सकते हैं:
इस समय, Coinbase ने आधिकारिक तौर पर NEAR प्रोटोकॉल को अपने प्लेटफ़ॉर्म पर ट्रेडेबल कॉइन के रूप में समर्थन देना शुरू किया। यह एक बड़ी बात थी क्योंकि Coinbase अपने प्लेटफ़ॉर्म पर किन कॉइन्स को सपोर्ट करता है, इसमें बहुत चयनात्मक रहता है। इससे NEAR एक अधिक भरोसेमंद प्लेटफ़ॉर्म बन गया। आप अभी भी NEAR को Coinbase पर ट्रेड कर सकते हैं।
क्यों कमिट करें?
कुछ समय सोचने के बाद, मैंने NEAR MetaBUILD III हैकाथॉन में भाग लेने के लिए अपना समय कमिट करने का फैसला किया। मेरा कारण यह था:
- क्रिप्टो नहीं जा रहा है और यह एक ऐसी तकनीक है जो बनी रहेगी। इसलिए इस तकनीक को सीखने में समय निवेश करना समझदारी थी।
- हैकाथॉन में शानदार पुरस्कार थे, $20,000 से $100,000 तक NEAR में यदि आप विज़ेताओं में से एक हों।
- हैकाथॉन की एक विशिष्ट डेडलाइन थी, जिससे प्रोजेक्ट महीनों तक नहीं खींचा जा सकता था।
- प्रोजेक्ट एक शानदार सीखने का अनुभव और हैकाथॉन का परिचय होगा।
- सबसे बुरा, यदि हम हार्ड कोडेड प्रोजेक्ट बना सकें तो वह मेरे रिज़्यूमे में दिखाने के लिए एक अच्छा प्रोजेक्ट बन जाएगा।
इन सबको ध्यान में रखते हुए, मैंने 26 अगस्त 2022 को अपने कॉलेज के करीबी दोस्त को कॉल किया और हम इस हैकाथॉन की योजना बनाना शुरू किया। हैकाथॉन 23 सितंबर 2023 को शुरू होने और 21 नवंबर 2022 को समाप्त होने के लिए निर्धारित था। हालांकि डेडलाइन को 24 नवंबर 2023 तक बढ़ा दिया गया। चूँकि हम एक महीने पहले थे, हमने इस समय को सीखने और इस 2 महीने के हैकाथॉन के लिए क्या काम करेंगे, इस पर विचार किया। पहले महीने में, हमने क्रिप्टो और ब्लॉकचेन का सामान्य अवलोकन प्राप्त किया। हमने NEAR के टेस्टनेट पर अभ्यास किया, NEAR SDK को देखा, और कुछ स्मार्ट कॉन्ट्रैक्ट डिप्लॉय किए।
विचार
ब्लॉकचेन और NEAR के सभी पहलुओं का परिचय मिलने के बाद, हमने विचारों पर विचार करना शुरू किया। मैं चाहता था कि यह प्रोजेक्ट सिर्फ एक “हैकाथॉन प्रोजेक्ट” न हो, बल्कि एक ऐसा उत्पाद हो जो अन्य लोग उपयोग कर सकें और दिखा सके कि क्रिप्टो ट्रेडिंग के बाहर भी उपयोगी हो सकता है।
इस विचार के साथ, हमने पहले एक Unreal Engine Blueprint जैसा कुछ बनाने का सोचा, लेकिन NEAR ब्लॉकचेन पर स्मार्ट कॉन्ट्रैक्ट्स को कोडिंग के बिना आसान बनाने और डिप्लॉय करने के लिए। लेकिन एक सप्ताह पहले हमने इस विचार को छोड़ दिया क्योंकि इसका कोई व्यावहारिक उपयोग नहीं था। फिर हमने एक नई विचार पर काम किया:
A decentralized platform where AI researchers can outsource
data labeling to labelers around the world
हमने इस प्रोजेक्ट को “Labeler NearBy” नाम दिया। इस विचार को चुनने के कारण:
- AI विकास को डेटा लेबलिंग की आवश्यकता होती है।
- विशिष्ट डेटा सेट के लिए योग्य लेबलर्स को ढूँढ़ना और प्रबंधित करना कठिन है।
- यह विचार पहले से ही Scale AI जैसी कंपनी द्वारा सफलतापूर्वक लागू किया गया है।
- केंद्रीकृत सेवाओं जैसे Scale AI में डेटा को लेबलिंग कंपनी को भेजना और फिर वापस देना, डेटा पर नियंत्रण खो देता है।
- डीसेंट्रलाइज़्ड एप्लिकेशन (dApp) में इस विचार पर बहुत कम प्रोजेक्ट हैं, जिससे नवाचार का अवसर मिलता है।
जटिलता को कम करने के लिए, हमने तय किया कि लेबलर नियरबाय अभी केवल इमेज डेटा को सपोर्ट करेगा।
सबमिशन
विचार चुनने और हैकाथॉन को आधिकारिक रूप से शुरू करने के बाद, मेरे दोस्त और मैंने लेबलर नियरबाय बनाना शुरू किया। हमने 2 महीने तक काम किया और 24 नवंबर 2022 को Devpost पर अंतिम ड्राफ्ट जमा किया। हमने प्रोजेक्ट को Devpost पर सबमिट किया और Github पर एक कॉपी बनाई। यह ब्लॉग लेबलर नियरबाय के सभी तकनीकी पहलुओं को कवर नहीं करता। अधिक जानकारी के लिए नीचे दिए लिंक देखें:
Labeler NearBy दो कोडबेस से बना है: ln-researcher और ln-labeler। ये कोडबेस MIT लाइसेंस के तहत पूरी तरह ओपन सोर्स हैं:
यहाँ एक सामान्य अवलोकन है कि लेबलर नियरबाय (LN) कैसे काम करेगा:
एक शोधकर्ता को अपने AI मॉडल के प्रशिक्षण के लिए लेबल्ड इमेजेज़ की आवश्यकता होती है। इसके लिए शोधकर्ता LN का उपयोग करके अपने डेटा को होस्ट करता है और लेबलर्स को डेटा लेबल करने का माध्यम प्रदान करता है। यह ln-researcher के माध्यम से किया जाता है, जो एक API, शोधकर्ता के स्मार्ट कॉन्ट्रैक्ट्स और एक स्थानीय Postgres डेटाबेस से बना है। लेबलर के लिए एक वेब फ्रंटेंड (होना चाहिए) प्रदान किया जाता है, जिससे वे इमेजेज़ को लेबल कर सकें। लेबलिंग प्रक्रिया में, एक इमेज तीन बार विभिन्न लेबलर्स द्वारा लेबल किया जाता है। सबसे अच्छे लेबल वाले लेबलर को NEAR कॉइन से इनाम दिया जाता है। इस प्रक्रिया के लिए वेब ऐप ln-labeler है। शोधकर्ता प्रत्येक लेबलिंग ऑपरेशन को फंड करता है, और NEAR कॉइन को Coinbase के माध्यम से डॉलर में बदल सकते हैं। सभी लेनदेन स्मार्ट कॉन्ट्रैक्ट्स द्वारा संभाले जाते हैं।
हमारा डेमो वीडियो यहाँ देखें:
सबसे बड़ी उपलब्धि
मैं सबसे अधिक गर्व से getImage() फ़ंक्शन को लागू करने पर है। यह फ़ंक्शन ln-researcher में एक API एन्डपॉइंट है और लेबलर नियरबाय (LN) में शोधकर्ताओं और लेबलर्स के बीच डेटा पाइपलाइन में महत्वपूर्ण भूमिका निभाता है।
यह API एन्डपॉइंट शोधकर्ताओं को सुरक्षित और विश्वसनीय रूप से इमेजेज़ को लेबलिंग के लिए वितरित करने में मदद करता है। लेबलिंग असाइनमेंट्स NEAR स्मार्ट कॉन्ट्रैक्ट्स द्वारा प्रबंधित होते हैं और इमेज डेटा शोधकर्ता द्वारा होस्ट किया जाता है।
एन्डपॉइंट सुरक्षा जांच करता है कि केवल असाइन किए गए लेबलर को इमेज तक पहुंच हो। यह अनुरोध के सिग्नेचर को वेरिफ़ाई करता है और स्मार्ट कॉन्ट्रैक्ट को चेक करता है। वैधता के बाद, इमेज को स्थानीय Postgres डेटाबेस से प्राप्त करता है, एन्क्रिप्ट करता है और अधिकृत लेबलर को डिलीवर करता है। साथ ही, डेटाबेस में इमेज की स्थिति अपडेट करता है। RSA कुंजियों और AES एन्क्रिप्शन का उपयोग किया जाता है।
यह एन्डपॉइंट इमेजेज़ के सुरक्षित वितरण में महत्वपूर्ण भूमिका निभाता है। यह HTTPS की आवश्यकता को भी कम कर सकता है।
नीचे एक डायग्राम है जो लेबलर नियरबाय की कुल कार्यक्षमता को दिखाता है:
परिणाम
दुर्भाग्यवश, हम इस प्रोजेक्ट को हैकाथॉन की डेडलाइन तक पूरी तरह नहीं कर पाए। अधिकांश प्रोजेक्ट पूरा हो गया था, जैसे ln-researcher, लेकिन फ्रंटेंड (ln-labeler) नहीं बना और लाइव डेमो नहीं था। बैकएंड (ln-researcher) लगभग पूरा था, लेकिन बिना फ्रंटेंड और डेमो के कोई भी इस प्रोजेक्ट को नहीं देख सका। जज भी प्रोजेक्ट को नहीं चला पाए। इस कारण जीत की संभावना लगभग शून्य थी। यह 15 दिसंबर 2022 को घोषित हुआ।
हार
मैं इस बात को छुपाऊँगा नहीं कि इस हैकाथॉन का अंतिम परिणाम निराशाजनक था। कई महीने इस प्रोजेक्ट में लगाए और मैं इसे एक उपयोगी टूल मानता था।
मेरे मानक के अनुसार, प्रोजेक्ट या तो सफल होते हैं या असफल; बीच का कोई रास्ता नहीं। इसलिए यह प्रोजेक्ट असफल रहा क्योंकि डेडलाइन तक पूरा नहीं हुआ।
पर असफलता जीवन का एक हिस्सा है। हमारी सफलताएँ हमारे असफलताओं से सीखकर बनती हैं। इस हैकाथॉन का परिणाम निराशाजनक था, लेकिन यह विकास और निर्माण में मूल्यवान अंतर्दृष्टि प्रदान करता है।
सीखे गए सबक
मुख्य सीखें:
- हमने बहुत सारे फीचर पहले से बनाना था, जिससे प्रोजेक्ट को जल्दी नहीं बना सके। एक सरल प्रोजेक्ट चुनना बेहतर होता।
- हमने इस प्रोजेक्ट को बनाने में कितना समय लगेगा, इसका अनुमान कम लगाया। दो महीने पर्याप्त नहीं थे। टीम को बढ़ाना या स्कोप कम करना चाहिए था।
- Winston Churchill ने कहा: “परिपूर्णता प्रगति का दुश्मन है”। हमने इसे B2C प्रोडक्ट की तरह माना, जबकि यह सिर्फ एक हैकाथॉन प्रोजेक्ट था।
इन सबके अलावा, मैंने नई कौशल हासिल किए:
- Node.js, JavaScript, और Express.js के माध्यम से API विकसित करना।
- PostgreSQL का उपयोग करके डेटा प्रबंधन।
- API विकास में PostgreSQL को पैकेज जैसे PG से उपयोग करना।
- RSA (असिमेट्रिक एन्क्रिप्शन) और AES (सिमेट्रिक एन्क्रिप्शन) का उपयोग करके डेटा सुरक्षा बढ़ाना।
निष्कर्ष
कुल मिलाकर, मैं खुश हूँ कि हमने इस हैकाथॉन में भाग लिया, भले ही परिणाम निराशाजनक था। लेबलर नियरबाय पर काम करते हुए मैंने कई मूल्यवान सबक और कौशल हासिल किए, जो मेरे अगले प्रोजेक्ट Notify-Cyber में मदद करेंगे।
अन्य नोट्स
- मैं लेबलर नियरबाय पर वापस आ सकता हूँ, लेकिन अभी के लिए यह “लॉन्ग हाइज़ीट” पर है।
- वर्तमान में, लेबलर नियरबाय केवल NEAR के टेस्टनेट में चलना चाहिए। इसे आगे विकास, परीक्षण और ऑडिट की आवश्यकता है।