Key Takeaways
- Ollama: الإعداد الأبسط، مثالي للمبتدئين
- MLX: الأسرع على Apple Silicon (أسرع بنسبة 15–25%)
- llama.cpp: صيغ نماذج أكثر، متعدد المنصات
- لمعظم المستخدمين: ابدأ بـ Ollama، وانتقل إلى MLX إذا احتجت السرعة
Ollama هو الأسهل (Metal تلقائي، REST API، إعداد في دقيقتين)؛ MLX أسرع بنسبة 15–25% ويدعم Python والضبط الدقيق؛ llama.cpp هو الأكثر توافقاً عبر المنصات مع أوسع دعم لنماذج GGUF — معظم مستخدمي Mac يبدؤون بـ Ollama ثم يتحولون إلى MLX عند الحاجة إلى السرعة.
هذه ثلاثة برامج مفتوحة المصدر تتيح لجهاز Mac تشغيل نماذج الذكاء الاصطناعي محلياً. "Metal" يعني استخدام GPU جهاز Mac لمعالجة الذكاء الاصطناعي بسرعة. GGUF هو أكثر تنسيقات الملفات شيوعاً لنماذج الذكاء الاصطناعي القابلة للتنزيل. يتيح الضبط الدقيق LoRA تدريب نموذج على بياناتك الخاصة دون إعادة التدريب من الصفر.
مقارنة مباشرة
| الخاصية | Ollama | MLX | llama.cpp |
|---|---|---|---|
| وقت الإعداد | 2 دقيقة | 5 دقائق | 10 دقائق |
| Metal GPU | تلقائي | أصلي | مدعوم |
| صيغة النموذج | GGUF | صيغة MLX | GGUF |
| API | REST (localhost:11434) | Python أصلي | CLI + HTTP |
| السرعة (8B Q4) | 45–50 tok/s | 55–65 tok/s | 45–55 tok/s |
| السرعة (70B Q4) | 12–16 tok/s | 18–22 tok/s | 14–18 tok/s |
| الضبط الدقيق | لا | نعم (LoRA) | لا |
| مثالي لـ | المبتدئون، API | مطورو ML | متعدد المنصات |
Ollama على Apple Silicon
- التثبيت بأمر واحد: `brew install ollama`
- Metal GPU تلقائي — بلا تهيئة إضافية
- API REST للتكامل (أي لغة)
- إدارة النماذج: `ollama pull`، `ollama list`، `ollama rm`
- قيد: بلا ضبط دقيق، بلا تكميم مخصص
- قيد: أبطأ قليلًا من MLX بسبب عبء GGUF
- مثالي لـ: المبتدئون، مستخدمو API، التكامل مع Whisper
النماذج المتوافقة مع Ollama (100+ منسّقة)
- Llama 3.3 (1B، 3B، 8B، 70B، 405B)
- Mistral Small، Mixtral 8x22B/22B
- Qwen3 (0.5B حتى 72B)
- Phi-3، Phi-4
- Gemma 2 (2B، 9B، 27B)
- DeepSeek Coder V2
- الرؤية: Llama 3.2 Vision، LLaVA
- Embeddings: nomic-embed-text، mxbai-embed-large
MLX — إطار العمل الأصلي من Apple
- مطوّر من Apple خصيصًا لـ Apple Silicon
- API بلغة Python شبيه بـ NumPy: `import mlx.core as mx`
- التقييم المؤجل + الذاكرة الموحدة = استغلال أمثل
- MLX-LM: حزمة مخصصة لاستدلال نماذج LLM وضبطها الدقيق
- الاستدلال الأسرع على Apple Silicon (أسرع بنسبة 10–25% من Ollama)
- دعم الضبط الدقيق: LoRA وQLoRA مباشرة على Mac
- قيد: نماذج بصيغة MLX فقط (مكتبة متنامية)
- قيد: macOS فقط — الشيفرة غير قابلة للنقل
- مثالي لـ: مطورو ML، أقصى سرعة، الضبط الدقيق
النماذج المتوافقة مع MLX (mlx-community على HuggingFace)
- جميع نماذج LLM الرئيسية (Llama، Mistral، Qwen، Gemma، Phi)
- الإصدارات المكمّمة (Q3، Q4، Q5، Q6، Q8)
- نماذج الرؤية: Llama 3.2 Vision، LLaVA، Qwen2-VL
- ملاحظة: يتطلب التحويل إلى صيغة MLX (المجتمع يحوّل معظمها)
llama.cpp على Apple Silicon
- C/C++ متعدد المنصات — نفس الملف الثنائي يعمل على Mac وLinux وWindows
- دعم Metal عبر راية تجميع: `make LLAMA_METAL=1`
- صيغة GGUF: أكبر مكتبة نماذج
- وضع الخادم: `./llama-server -m model.gguf` — API REST
- Whisper.cpp من المؤلف نفسه — دعم Metal لـ STT
- قيد: التجميع من الشيفرة المصدرية (بلا تثبيت بنقرة واحدة)
- قيد: أبطأ من MLX، مماثل لـ Ollama
- مثالي لـ: المشاريع متعددة المنصات، أقصى دعم لصيغ النماذج
النماذج المتوافقة مع llama.cpp (أي GGUF)
- أي GGUF من HuggingFace يعمل (أكثر من 10,000 نموذج)
- أكبر منظومة من النماذج المضبوطة دقيقًا والمخصصة
- النماذج الأصلية والتجريبية تظهر هنا أولًا عادةً
- للنماذج الأكثر شيوعًا (Llama، Mistral، Qwen)، تغطيها أطر العمل الثلاثة. للنماذج غير المعروفة أو التجريبية، يفوز llama.cpp بحجم المنظومة.
مقارنة الإعداد: 5 أسطر من الشيفرة لتشغيل Llama 3.3 8B
Ollama (أمران):
```bash
brew install ollama
ollama run llama3.3:8b "Hello, world"
```
MLX (4 أسطر Python):
```python
from mlx_lm import load, generate
model, tokenizer = load("mlx-community/Llama-3.1-8B-Instruct-4bit")
response = generate(model, tokenizer, prompt="Hello, world", max_tokens=100)
print(response)
```
llama.cpp (5 أوامر):
```bash
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
make LLAMA_METAL=1
wget https://huggingface.co/ggml-org/models/resolve/main/llama-3.1-8b-q4.gguf
./main -m llama-3.1-8b-q4.gguf -p "Hello, world"
```
اختبارات الأداء: نفس النموذج، ثلاثة أطر عمل، M5 Pro 64 GB
| النموذج | Ollama tok/s | MLX tok/s | llama.cpp tok/s |
|---|---|---|---|
| Llama 3.3 8B Q4 | 48 | 62 | 52 |
| Llama 3.3 8B Q8 | 38 | 48 | 40 |
| Llama 3.3 70B Q4 | 10 | 14 | 11 |
| Mistral Small Q4 | 52 | 66 | 55 |
| Phi-4 Q4 | 58 | 72 | 60 |
MLX أسرع بنسبة 15–25% بفضل التحسين الأصلي لـ Metal. اختبارات أولية — يُتوقع تحسّن في أطر العمل.

استخدام الذاكرة: نفس النموذج، ثلاثة أطر عمل (M5 Pro 64 GB)
| النموذج | Ollama RAM | MLX RAM | llama.cpp RAM |
|---|---|---|---|
| Llama 3.3 8B Q4 | 5.2 GB | 4.8 GB | 5.0 GB |
| Llama 3.3 70B Q4 | 43 GB | 41 GB | 42 GB |
| Mistral Small Q4 | 4.6 GB | 4.3 GB | 4.4 GB |
يستخدم MLX ذاكرة أقل بنسبة 5–10% من Ollama لنفس النموذج بفضل تحسين الذاكرة الموحدة. في التهيئات ذات الذاكرة المنخفضة (16 GB، 36 GB)، قد يكون هذا الفرق بين أن يتسع النموذج في RAM أو أن يضطر لاستخدام swap.
مصفوفة القرار: متى تستخدم كل إطار عمل
- 1البدء من الصفر
Why it matters: Ollama — إعداد في دقيقتين، يعمل فورًا. - 2تطوير تطبيق بلغة Python
Why it matters: MLX — Python أصلي، أقصى سرعة. - 3تحتاج API REST
Why it matters: Ollama — خادم API مدمج. - 4الضبط الدقيق على Mac
Why it matters: MLX — الخيار الوحيد بدعم LoRA. - 5مشروع متعدد المنصات
Why it matters: llama.cpp — نفس الشيفرة على Mac + Linux + Windows. - 6
- 7أقصى سرعة
Why it matters: MLX — أسرع بنسبة 15–25% من البدائل. - 8نماذج غير معروفة
Why it matters: llama.cpp — أكبر مكتبة نماذج GGUF.

متى لا تستخدم كل إطار عمل
لا تستخدم Ollama إذا:
• كنت تحتاج الضبط الدقيق (غير مدعوم)
• كنت تحتاج عصر كل قطرة من السرعة (أبطأ بنسبة 15–25% من MLX)
• كنت تريد تكميمًا مخصصًا بالكامل (تحكم محدود)
لا تستخدم MLX إذا:
• كنت تحتاج نشرًا متعدد المنصات (macOS فقط)
• لم تكن مرتاحًا مع Python
• كنت تحتاج API REST جاهزًا للاستخدام (يجب تغليفه)
• كنت تحتاج نماذج رؤية في الإنتاج (تشكيلة أضيق)
لا تستخدم llama.cpp إذا:
• كنت تريد تجربة بنقرة واحدة (يتطلب التجميع)
• كنت تحتاج الضبط الدقيق (غير مدعوم)
• لم ترغب في إدارة تنزيلات النماذج بنفسك
هل يمكنك استخدام عدة أطر عمل في آنٍ واحد؟
نعم — لا تتعارض. ثبّت الثلاثة. النمط المعتاد: Ollama للاستخدام اليومي، MLX للمهام الحرجة في السرعة، llama.cpp للنماذج غير الموجودة في Ollama/MLX. تشترك في نفس النماذج الأساسية (بصيغ مختلفة).
أي إطار عمل هو الأسرع؟
MLX، أسرع بنسبة 15–25% من Ollama على Apple Silicon. llama.cpp مماثل لـ Ollama. لا يهم فرق السرعة إلا في النماذج الكبيرة (70B+)؛ لنموذج 8B، الثلاثة سريعة بما يكفي.
هل يمكنني تغيير إطار العمل لاحقًا؟
نعم. ثبّت Ollama اليوم، وانتقل إلى MLX غدًا. النماذج متوافقة (بصيغ مختلفة فقط). بلا ارتباط بمزوّد.
هل MLX لـ Python فقط؟
لـ MLX واجهة Python أصلية، لكن يمكنك استدعاؤه من لغات أخرى عبر subprocess أو غلاف خادم HTTP. الأمثل استخدامه من Python.
هل لـ Ollama واجهة رسومية؟
Ollama نفسه CLI فقط. استخدم واجهات مفتوحة المصدر مثل Open-WebUI للحصول على واجهة محادثة.
هل يمكنني تشغيل Ollama وMLX في الوقت نفسه؟
نعم. يستخدمان أدلة نماذج منفصلة ولا يتعارضان. كثير من المطورين يشغّلون Ollama كخدمة في الخلفية للوصول إلى API ويستخدمون MLX للتجارب في دفاتر Python. مع ذاكرة موحدة كافية، يمكنهما حتى تحميل النموذج نفسه في الذاكرة في آنٍ واحد.
هل يعمل MLX على أجهزة Mac بمعالج Intel؟
لا. صُمم MLX خصيصًا لـ Apple Silicon (M1+). على مستخدمي Mac بمعالج Intel استخدام Ollama أو llama.cpp. كلاهما يعمل على Intel، لكن بلا تسريع Metal GPU — أبطأ بشكل ملحوظ من Apple Silicon.
أي إطار عمل له أفضل دعم لنماذج الرؤية؟
يقدّم Ollama التكامل الأنظف لنماذج الرؤية عبر `ollama run llama3.2-vision`. يدعم MLX نماذج الرؤية لكنه يتطلب مزيدًا من التهيئة. لـ llama.cpp دعم رؤية عبر ملف تنفيذي llava منفصل. للعمل متعدد الوسائط، ابدأ بـ Ollama.
إصدارات أطر العمل وحداثتها
• Ollama: مُختبَر مع الإصدار 0.7.x (الأحدث المتاح حتى يونيو 2026)
• MLX: مُختبَر مع mlx-lm 0.22
• llama.cpp: مُختبَر مع بناء مايو 2026
• آخر تحقق: 2026-05-15
• يتحسّن أداء أطر العمل كل شهر — يُوصى بتكرار الاختبارات ربع سنويًا للحصول على أرقام محدّثة
