अंतिम गाइड: Mac M3 पर Ollama चलाएं

laptop_mac macOS Sonoma Intermediate schedule 8 min read
Author by Alex Rivera • May 14, 2024

आप पहले से ही दुनिया के सबसे शक्तिशाली local AI मशीनों में से एक के मालिक हैं। चाहे आप एक base MacBook Pro M3, एक MacBook Pro M3 Max, या एक Mac Studio चला रहे हों — यह गाइड आपको सिखाएगी कि Ollama के साथ इसकी पूरी क्षमता को कैसे अनलॉक करें। कोई cloud नहीं। कोई API बिल नहीं। बस शुद्ध, निजी intelligence।


Step 1 परिचय

Ollama के लिए macOS 11 Big Sur या उससे बाद का संस्करण आवश्यक है। हालाँकि, बेहतरीन Apple Silicon GPU acceleration और सर्वोत्तम Metal Performance Shaders (MPS) support के लिए, आपको macOS 14 Sonoma या उससे बाद का संस्करण चलाना चाहिए।

हम macOS Terminal का उपयोग करेंगे। Cmd + Space दबाएँ और "Terminal" टाइप करें, या iTerm2 या Warp जैसे आधुनिक विकल्प का उपयोग करें।


Step 2 Ollama इंस्टॉल करना

आपके Mac पर Ollama इंस्टॉल करने के लिए दो विकल्प हैं: आधिकारिक macOS GUI installer या Homebrew (macOS के लिए package manager)। हम Homebrew की अत्यधिक अनुशंसा करते हैं क्योंकि यह अपडेट करना अविश्वसनीय रूप से सरल बना देता है।

यदि आपके पास पहले से Homebrew इंस्टॉल है, तो अपना terminal खोलें और चलाएँ:

Terminal
brew install ollama

इंस्टॉल हो जाने के बाद, Ollama background service शुरू करें ताकि यह commands सुन सके:

Terminal
ollama serve

(नोट: इस terminal विंडो को खुला रखें, या brew services start ollama चलाएँ ताकि यह boot पर background में चुपचाप चलता रहे)।


Step 3 अपना पहला Model डाउनलोड करना

Ollama एक Large Language Model (LLM) डाउनलोड करना उतना ही आसान बनाता है जितना कि Docker container खींचना।

हम Meta के Llama 3 (8B parameters) से शुरुआत करेंगे। यह तेज़, अत्यधिक सक्षम है, और किसी भी M3 Mac की memory में बिल्कुल सही बैठता है। एक नई terminal विंडो खोलें और चलाएँ:

Terminal
ollama run llama3

आगे क्या होता है? - Ollama registry से जुड़ता है। - यह 4.7GB model weights को आपकी local drive पर डाउनलोड करता है। - यह आपको एक interactive chat prompt में ले जाता है।

अब आप टाइप कर सकते हैं: Write a python script to scrape a website और देखें कि आपका local Mac पूरी तरह offline रहते हुए तुरंत code generate करता है।


Step 4 Hardware और RAM की सीमाएँ

Apple Silicon Mac AI के लिए इतने अच्छे क्यों हैं? Unified Memory

एक PC पर, आपके पास System RAM और Graphics RAM (GPU पर VRAM) होती है। किसी AI model को तेज़ी से चलाने के लिए, उसे पूरी तरह VRAM के अंदर फिट होना चाहिए। लेकिन M3 Mac पर, CPU और GPU एक ही memory के साझा pool का उपयोग करते हैं। यदि आपके पास 36GB Unified Memory वाला Mac है, तो आपका GPU उसे पूरा access कर सकता है!

यहाँ बताया गया है कि आप अपने Mac की RAM के आधार पर वास्तव में क्या चला सकते हैं:

आपके Mac की RAM अधिकतम Model Size अनुशंसित Models नोट्स
8GB (Base M3) ~7B से 8B parameters Llama 3 (8B), Mistral (7B), Gemma (2B) Memory swapping से बचने के लिए अन्य apps बंद करें।
16GB / 18GB ~13B से 14B parameters Qwen 2.5 (14B), Command R सबसे उपयुक्त। Llama 3 (8B) को बहुत तेज़ चलाएँ।
36GB / 64GB ~30B से 70B parameters Mixtral (8x7B), Llama 3 (70B at Q2) Desktop-class AI natively।
128GB+ ~120B+ parameters Llama 3 (70B Q8), Command R+ आप एक personal supercomputer के मालिक हैं।

Step 5 प्रदर्शन के लिए अनुकूलन

आप कैसे जानते हैं कि Ollama वास्तव में आपके M3 के GPU का उपयोग कर रहा है और धीमे CPU पर वापस नहीं जा रहा? आइए इसे गणितीय रूप से सत्यापित करें।

  1. अपने Mac पर Activity Monitor खोलें (Cmd + Space -> "Activity Monitor")।
  2. GPU History विंडो खोलने के लिए Cmd + 4 दबाएं।
  3. उस विंडो को दृश्यमान रखें, और ollama run llama3 चला रहे अपने टर्मिनल पर वापस जाएं।
  4. इसे एक बड़ा प्रॉम्प्ट दें: Write a 1000 word essay about the history of artificial intelligence.

GPU History ग्राफ को देखें। आपको एक विशाल, निरंतर स्पाइक दिखनी चाहिए जो आपके GPU को 90-100% उपयोग पर पहुंचा दे। यदि आप यह देखते हैं, तो Apple का Metal acceleration पूरी तरह से काम कर रहा है!


Step 6 लोकल API को उजागर करना

टर्मिनल बहुत अच्छा है, लेकिन क्या होगा यदि आप एक सुंदर वेब इंटरफेस का उपयोग करना चाहते हैं या अपने लोकल मॉडल को किसी ऐप में एकीकृत करना चाहते हैं जिसे आप कोड कर रहे हैं?

Ollama डिफ़ॉल्ट रूप से एक लोकल API सर्वर चलाता है। एक ब्राउज़र खोलें और यहाँ जाएं: http://localhost:11434

अब आप इस API को curl या Python के माध्यम से ठीक OpenAI API की तरह उपयोग कर सकते हैं:

Terminal
curl http://localhost:11434/api/generate -d '{
  "model": "llama3",
  "prompt": "Why is the sky blue?",
  "stream": false
}'

आपने सफलतापूर्वक अपने Mac M3 को एक निजी, ऑफलाइन AI सर्वर में बदल दिया है। आपका डेटा कभी भी आपकी मशीन से बाहर नहीं जाता, और आप कोई भी API शुल्क नहीं देते।