Goodbye AI box: clustering MacBooks for llms using thunderbolt and nas
इस व्यापक मार्गदर्शिका में, सामग्री निर्माता पारंपरिक AI हार्डवेयर बॉक्स को "शोरगुल, बड़ा, और गर्म" होने के कारण अलविदा कहते हैं, और इसके स्थान पर चार MacBooks, एक उच्च गति NAS (नेटवर्क अटैच्ड स्टोरेज), और एक थंडरबोल्ट ब्रिज का उपयोग करके एक आधुनिक सेटअप अपनाते हैं। LLMs (लार्ज लैंग्वेज मॉडल), SSD-only NAS, क्लस्टरिंग कार्यप्रवाह, और ओपन-सोर्स क्लस्टरिंग टूल्स (विशेष रूप से EXO) जैसे शब्दों पर ध्यान केंद्रित किया गया है क्योंकि हम एक उच्च दक्षता, यांत्रिक रूप से मौन, और स्केलेबल विकास सेटअप में गहराई से उतरते हैं।
यह भारी हार्डवेयर को हल्के, उच्च-प्रदर्शन MacBook क्लस्टर के साथ बदलने की शुरुआत है!
replacing the outdated "ai box"
प्रस्तावक "AI बॉक्स" पर निर्भर रहने के नुकसान को स्पष्ट करता है। यह विशाल हार्डवेयर, जो पहले LLM कार्यप्रवाह चलाने के लिए उपयोग किया जाता था, एक विशाल मात्रा में जगह और ऊर्जा का उपभोग करता है जबकि काफी गर्मी और शोर का उत्पादन करता है। इन असफलताओं को पहचानते हुए, सामग्री निर्माता एक विकल्प प्रस्तुत करते हैं—चार हल्के MacBooks को क्लस्टर करना और LLM कार्यप्रवाह के लिए एक साझा SSD-only NAS का उपयोग करना। यह बदलाव प्रभावशाली गति, ऊर्जा दक्षता, और जगह बचाने के लाभों का वादा करता है, प्रदर्शन में कोई समझौता किए बिना।
components of the new setup
इस प्रयोग के केंद्र में एक SSD-only NAS और एक थंडरबोल्ट ब्रिज है, जिसे विभिन्न कॉन्फ़िगरेशन वाले MacBooks के साथ जोड़ा गया है। आवश्यक घटकों की चर्चा नीचे की गई है।
The nas (network attached storage)
इस पारिस्थितिकी तंत्र में मुख्य भंडारण हार्डवेयर एक नया SSD-only NAS है, जो TerraMaster द्वारा निर्मित है। पारंपरिक DAS (डायरेक्ट अटैच्ड स्टोरेज) के विपरीत, जो सीधे एक मशीन से जुड़ा होता है, NAS नेटवर्क-आधारित होता है और एक साथ कई उपकरणों को साझा भंडारण तक पहुंचने की अनुमति देता है। यह विशेषता कई मशीनों को क्लस्टर करने के लिए महत्वपूर्ण है क्योंकि:
- कमी डेटा पुनरावृत्ति: NAS पर केंद्रीय रूप से मॉडल संग्रहीत करके प्रत्येक मशीन पर भारी LLMs को अलग से डाउनलोड करने की आवश्यकता समाप्त हो जाती है।
- गति और चुप्पी: SSD-आधारित होने के नाते, NAS अत्यंत तेज और व्यावहारिक रूप से मौन है।
- स्केलेबिलिटी: TerraMaster NAS में 10 गीगाबिट NIC (नेटवर्क इंटरफेस कार्ड) शामिल है। हालाँकि सेटअप केवल नेटवर्क सीमाओं के कारण 2.5 Gbps का उपयोग करता है, फिर भी यह क्लस्टरिंग कार्यों के लिए तेज डेटा ट्रांसफर गति सुनिश्चित करता है।
प्रस्तावक एक रोमांचक संभावना को भी नोट करता है: भविष्य में NAS को एक मीडिया सर्वर के रूप में उपयोग करना इसके क्षमताओं के कारण।
The thunderbolt bridge
WiFi (जो पहले उपयोग में था) से एक वायर्ड थंडरबोल्ट ब्रिज में परिवर्तन एक और महत्वपूर्ण सुधार है। अत्यधिक स्थिर कनेक्शनों के साथ, यह नया दृष्टिकोण MacBooks में थंडरबोल्ट पोर्ट के शक्ति का उपयोग करके प्रणाली को सीधे बिना धीमी WiFi नेटवर्क पर निर्भर किए कनेक्ट करता है। प्रत्येक MacBook को साफ, सुव्यवस्थित संचार के लिए मैन्युअल रूप से IP पता सौंपा गया है।
स्पष्ट करने के लिए:
- मुख्य MacBook Pro एक हब के रूप में कार्य करता है, जो थंडरबोल्ट केबल के माध्यम से तीन अन्य MacBooks से जुड़ता है।
- मैन्युअल IP कॉन्फ़िगरेशन डेटा या LLM प्रसंस्करण कार्यभार को मशीनों के बीच वितरित करते समय स्थिरता और तेज प्रदर्शन सुनिश्चित करता है।
मैन्युअल रूप से IP पतों को सौंपना ताकि MacBooks के बीच निर्बाध थंडरबोल्ट कनेक्शन सुनिश्चित हो सके।
open-source tool: "exo" for clustering
MacBooks को भारी LLM कार्यों को वितरित करने के लिए क्लस्टरिंग करना EXO टूल द्वारा किया जाता है जो Exo Labs द्वारा विकसित किया गया है। प्रस्तावक EXO का वर्णन एक प्रभावशाली, उपयोगकर्ता-अनुकूल ओपन-सोर्स ढांचे के रूप में करते हैं जो कई उपकरणों के बीच विशाल कार्यभार को विभाजित करने के लिए डिज़ाइन किया गया है।
क्लस्टरिंग के लिए हार्डवेयर स्टैक:
- MacBook Pro 16: मुख्य चालक के रूप में 64GB RAM।
- MacBook Airs: M1, M2, और M3 वेरिएंट, प्रत्येक में 8GB RAM है।
EXO का लाभ केवल क्लस्टरिंग में नहीं, बल्कि बुद्धिमान संसाधन आवंटन में भी है। RAM-heavy मॉडल सभी प्रणालियों के बीच विभाजित किए जाते हैं, प्रत्येक MacBook की अनूठी मेमोरी फ़ुटप्रिंट का लाभ उठाते हुए। यह, मेमोरी-सीमित उपकरणों जैसे 8GB MacBook Airs के बीच भी कुशल वितरण सुनिश्चित करता है।
मुख्य सुधार:
- पहले के प्रयोगों (सिर्फ तीन उपकरणों के साथ) में, प्रत्येक कंप्यूटर पर स्थानीय रूप से मॉडल डाउनलोड करने थे। हालाँकि, साझा NAS को एकीकृत करके, सभी प्रणालियों को केंद्रीय स्थान से मॉडल को खींचने की आवश्यकता होती है।
- इसके अलावा, कस्टम पर्यावरण चर जैसे
HF_HOME
सेट करने से EXO को स्वचालित रूप से NAS-स्टोर किए गए मॉडल का संदर्भ लेने की अनुमति मिलती है जब इसे प्रारंभ किया जाता है।
NAS एकीकरण की प्रक्रिया में शामिल हैं:
- NAS से SMB फ़ोल्डर मैप करना, मॉडल के लिए विशिष्ट निर्देशिकाओं के साथ।
- फ़ोल्डर पथों का उपयोग करते हुए
HF_HOME
को एक पर्यावरण चर के रूप में सेट करना (जैसे,/Volumes/AlexModels/HuggingFace/
)। - कॉन्फ़िगरेशन के बाद टर्मिनल को फिर से शुरू करना ताकि EXO इस साझा भंडारण पथ का उपयोग कर सके।
EXO को कॉन्फ़िगर करना ताकि NAS से सीधे बड़े LLM मॉडल खींच सकें।
testing: llm performance across nodes
सेटअप पूरा होने के बाद, प्रस्तावक विभिन्न पैमाने के मॉडलों के साथ कार्य करके क्लस्टरिंग की दक्षता का परीक्षण करता है। कदम शामिल हैं:
- एकल MacBook प्रारंभ करना: प्रारंभिक EXO सेटअप केवल एक नोड पर चलता है। सिस्टम को छोटे मॉडलों जैसे LLaMA 3 के 1 बिलियन पैरामीटर विकल्प के साथ परीक्षण किया जाता है, जो इस एकल मशीन पर स्थानीय रूप से कार्य करता है।
- क्लस्टर का विस्तार करना: अतिरिक्त MacBooks को जोड़ा जाता है और EXO द्वारा पहचाना जाता है, जिससे क्लस्टर का विस्तार तीन और अंततः चार नोड्स तक होता है।
- बड़े मॉडलों को संभालना: 14 बिलियन पैरामीटर वाले Quen-2.5B जैसे संसाधन-गहन मॉडलों को चलाने से यह पता चलता है कि EXO मशीनों के बीच लोड को कैसे प्रभावी ढंग से वितरित करता है। हालाँकि MacBook Airs को सीमित मेमोरी है, EXO यह सुनिश्चित करता है कि कार्यभार साझा RAM के कारण प्रबंधनीय बना रहे।
अवलोकन:
- छोटे मॉडल (जैसे, 1B पैरामीटर) तेजी से संसाधित होते हैं (40 टोकन/सेकंड तक)।
- हालाँकि, बड़े मॉडलों को संसाधित करने के लिए कार्यभार को सभी चार प्रणालियों के बीच वितरित करना आवश्यक है ताकि व्यक्तिगत नोड्स में मेमोरी सीमाओं को पार किया जा सके।
- EXO बुद्धिमानी से MacBook Pro की 64GB RAM का उपयोग करता है, यह सुनिश्चित करते हुए कि MacBook Airs अपनी 8GB मेमोरी सीमाओं को पार न करें।
EXO सभी चार MacBooks को एकल क्रियाशील क्लस्टर में निर्बाध रूप से पहचानता है और एकीकृत करता है।
additional setup challenges
कई उपकरणों के वातावरण को सेटअप करना अनिवार्य रूप से चुनौतियों को लाता है। एक ऐसी समस्या जो सामने आई वह थी अनुमतियों की त्रुटि, विशेष रूप से चार Macs में एक साथ NAS फ़ोल्डर तक पहुंचने से संबंधित। समस्या का तुरंत समाधान किया गया, जिससे सबसे संसाधन-गहन Quen 14B मॉडल भी क्लस्टर में सुचारु रूप से चलाने में सक्षम हो गया।
Interesting benchmarks:
- थ्रूपुट (टोकन/सेकंड) मशीन के आधार पर नाटकीय रूप से भिन्न होता है:
- M1 MacBook Air: 23 टोकन/सेकंड।
- M2 MacBook Air: 18 टोकन/सेकंड।
- M3 MacBook Air: 30 टोकन/सेकंड।
- M2 Max MacBook Pro: 48 टोकन/सेकंड।
ये परिणाम EXO की दक्षता को रेखांकित करते हैं, जो प्रत्येक उपकरण की विशिष्ट क्षमताओं का लाभ उठाकर सामंजस्यपूर्ण रूप से काम करता है।
final thoughts: a compact, scalable solution
यह प्रयोग साबित करता है कि NAS और EXO टूल की सहायता से MacBooks को क्लस्टर करना विशाल AI हार्डवेयर सेटअप के लिए एक व्यवहार्य, कुशल विकल्प है। NAS न केवल मॉडल स्टोरेज को केंद्रीकृत करता है बल्कि डेटा नकल को भी महत्वपूर्ण रूप से कम कर देता है, जबकि थंडरबोल्ट ब्रिज मशीनों के बीच तेज और स्थिर संचार सुनिश्चित करता है।
Takeaways:
- SSD-only NAS, हालांकि सस्ता नहीं है, शांत, तेज, और केंद्रीकृत स्टोरेज समाधानों की आवश्यकता रखने वालों के लिए निवेश करने योग्य है।
- EXO क्लस्टर पर बड़े पैमाने पर LLMs चलाने के काम को सरल बनाता है, विशेष रूप से जब इसे अच्छे हार्डवेयर और साझा भंडारण के साथ जोड़ा जाता है।
कुल मिलाकर, नया सेटअप उन डेवलपर्स के लिए रोमांचक दरवाजे खोलता है जिनके पास GPU-भारी सर्वरों तक पहुंच नहीं है लेकिन हल्के लैपटॉप का उपयोग करके AI कार्यप्रवाह के साथ प्रयोग करना चाहते हैं।
क्या आप और प्रयोगों की तलाश में हैं? निर्माता के पिछले प्रयोगों और EXO के आगे के अन्वेषण की जांच करें!
EXO द्वारा वितरित मशीन लर्निंग में नवाचार की जांच करना न भूलें!