Reference OS v8 5 دقائق قراءة ٢٠ يوليو ٢٠٢٦ informational: يبحث المطور العربي عن طريقة عملية لتشغيل نماذج كبيرة على أجهزة محدودة الإمكانيات ds4: تشغيل نماذج MoE على Mac بذاكرة 16GB - دليل تقريبي…

Show HN: Qwen3.6-35B-A3B on a 16 GB M1 Pro with SSD-streamed MoE
اختر القسم الذي تحتاجه الآن
الفكرة التي تمنع التسرع
تخيل أنك تشغل نموذج 35B على Mac بذاكرة 16GB - لكن ببطء شديد وغير مضمون.
قبل أن تطبق، اعرف أين تقف بالضبط
لا تعتمد على الانطباع؛ اختر مؤشراً تراجعه
إذا كنت تملك Mac M1 بذاكرة 16GB وتظن أنك لا تستطيع تشغيل نماذج AI كبيرة مثل Qwen3.6-35B-A3B، فهذا الدليل لك. مشروع ds4 على GitHub يقدم طريقة مبتكرة: بدلاً من تحميل النموذج كاملاً في الذاكرة، يتم دفق الأوزان من SSD مباشرة أثناء الاستدلال. هذا يسمح بتشغيل نماذج MoE (Mixture of Experts) التي تتجاوز ذاكرتك المتاحة، لكن مع بطء نسبي. تنبيه مهم: هذا الدليل مبني على هيكل المشروع وليس تجربة فعلية، لأن README غير واضح. المشروع تجريبي جداً (0 نجوم، 0 forks) وقد لا يعمل أصلاً. سنشرح الخطوات التقريبية، المتطلبات، الأخطاء الشائعة، وكيف تقرر إذا كان ds4 مناسباً لك.
ds4 أداة سطر أوامر (CLI) مكتوبة بلغة Rust تهدف إلى تشغيل نماذج MoE (خبراء مختلطون) على أجهزة بذاكرة محدودة. الفكرة: بدلاً من تحميل جميع أوزان النموذج (قد تصل إلى 20GB+ لنموذج 35B) في RAM، يتم تحميل الأجزاء الأساسية فقط، ويتم جلب الباقي من SSD حسب الحاجة. هذا يشبه التبديل (swapping) الذكي. المشروع جديد (0 نجوم، 0 forks) وظهر على Hacker News، مما يعني أن المجتمع التقني مهتم لكنه لم ينضج بعد. README غير واضح، لذا الخطوات في هذا الدليل تقريبية بناءً على بنية المشروع.
يناسب: مطور Mac M1/M2 بذاكرة 16GB أو أقل يريد تجربة نماذج MoE محلياً دون اشتراكات سحابية. مناسب للتجارب الأولية، وليس للإنتاج.
لا يناسب: من يحتاج سرعة استجابة عالية (مثل chatbots تفاعلية) أو يريد تشغيل نماذج غير MoE (مثل LLaMA العادي) أو يخشى على عمر SSD من كثرة القراءة/الكتابة.
لأن README غير واضح، إليك الخطوات المتوقعة بناءً على هيكل المشروع:
git clone https://github.com/andreaborio/ds4.gitcd ds4 && cargo build --release (يتطلب Rust)huggingface-cli لتنزيل Qwen3.6-35B-A3B بصيغة GGUF..env أو config.toml لتحديد مسار النموذج وإعدادات الدفق.ملاحظة: هذه الخطوات تخمينية؛ قد تختلف حسب تحديثات المشروع.
إذا كان المشروع يستخدم .env، فقد يحتوي على:
MODEL_PATH: المسار الكامل لملف النموذج.STREAM_BUFFER_SIZE: حجم المخزن المؤقت للدفق (مثلاً 512MB).MAX_MEMORY: الحد الأقصى للذاكرة المستخدمة (مثلاً 12GB).أنشئ ملف .env في جذر المشروع واملأ المتغيرات حسب جهازك.
بعد التركيب، شغّل الأمر (تقريبياً): ./target/release/ds4 --model-path /path/to/model.gguf
النتيجة: سيبدأ النموذج بالتحميل الجزئي، وقد ترى رسائل مثل Loading expert 1/32. الاستجابة الأولى قد تستغرق دقيقة أو أكثر، ثم تصبح أسرع نسبياً. توقع أداءً أقل من llama.cpp لكن بقدرة على تشغيل نماذج أكبر.
استخدم huggingface-cli download TheBloke/Qwen3.6-35B-A3B-GGUF qwen3.6-35b-a3b.Q4_K_M.gguf --local-dir ./models. تأكد من أن الصيغة مدعومة من ds4.
قد يحتوي المشروع على ملف config.toml بمحتوى مشابه لـ: [model] path = "/path/to/model.gguf"
[stream] buffer_size = 512. أنشئ الملف إذا لزم الأمر.
توقع سرعة استجابة أقل بكثير من llama.cpp. قد تستغرق أول استجابة دقيقة أو أكثر. سرعة SSD تؤثر بشكل كبير.
خطوات عملية مرتبة من التشخيص إلى النتيجة
لماذا؟ للحصول على كود ds4
كيف؟ git clone https://github.com/andreaborio/ds4.git
الناتج: مجلد ds4
لماذا؟ لتجميع الأداة من المصدر
كيف؟ cd ds4 && cargo build --release
الناتج: ملف تنفيذي في target/release/ds4
لماذا؟ ds4 يتوقع نموذجاً بصيغة GGUF
كيف؟ huggingface-cli download TheBloke/Qwen3.6-35B-A3B-GGUF qwen3.6-35b-a3b.Q4_K_M.gguf --local-dir ./models
الناتج: ملف .gguf في مجلد models
لماذا؟ لتحديد مسار النموذج وإعدادات الدفق
كيف؟ أنشئ ملف config.toml في جذر المشروع بالمحتوى: [model] path = "./models/qwen3.6-35b-a3b.Q4_K_M.gguf" [stream] buffer_size = 512
الناتج: ملف config.toml
لماذا؟ لبدء الاستدلال
كيف؟ ./target/release/ds4 --config config.toml
الناتج: مخرجات النموذج في الطرفية
حوّل القراءة إلى تنفيذ سريع
[model] path = "/path/to/model.gguf" [stream] buffer_size = 512
huggingface-cli download TheBloke/Qwen3.6-35B-A3B-GGUF qwen3.6-35b-a3b.Q4_K_M.gguf --local-dir ./models
اعرف أين يتعثر الناس وكيف تتجنب ذلك
ماذا تفعل حسب حالتك؟
إذا: إذا كان لديك Mac M1/M2 بذاكرة 16GB وتريد تشغيل نموذج MoE كبير
إذن: جرب ds4 مع نموذج أصغر أولاً، وتوقع أداءً بطيئاً
إذا: إذا كنت تحتاج سرعة استجابة عالية
إذن: استخدم llama.cpp أو Ollama بدلاً من ds4
إذا: إذا كان النموذج ليس MoE
إذن: ds4 غير مناسب؛ استخدم llama.cpp أو MLX
إذا: إذا كنت قلقاً على عمر SSD
إذن: تجنب ds4 لأنه يقرأ/يكتب بكثافة
جدول صغير يمنع التسويف
نقاط مختصرة ترجع لها لاحقاً
1. ds4 مشروع تجريبي جداً (0 نجوم، 0 forks).
2. يعمل فقط على Apple Silicon (M1/M2/M3).
3. يدعم نماذج MoE بصيغة GGUF فقط.
4. يحتاج SSD سريع (NVMe) لأداء مقبول.
5. الاستجابة الأولى قد تستغرق دقيقة أو أكثر.
6. النموذج Qwen3.6-35B-A3B يحتاج ~20GB تخزين.
7. البدائل الناضجة: llama.cpp وOllama وMLX.
8. لا يناسب التطبيقات التفاعلية أو الإنتاج.
9. قد يسبب تآكل SSD بسبب القراءة/الكتابة المكثفة.
إجابات مباشرة على ما يبحث عنه الزائر
تعريفات مختصرة تمنع الالتباس
نموذج ذكاء اصطناعي يتكون من عدة خبراء (sub-networks) يتم تفعيل جزء منهم فقط لكل إدخال، مما يقلل الحمل الحسابي.
صيغة ملفات لنماذج الذكاء الاصطناعي محسنة للتحميل السريع والتشغيل على وحدات المعالجة المختلفة.
تقنية تحميل أجزاء من أوزان النموذج من التخزين (SSD) إلى الذاكرة عند الحاجة، بدلاً من تحميلها كلها مرة واحدة.
استخدمها كمسارات متابعة داخل نفس الموضوع
تحول القارئ: من معتقد أن نماذج AI الكبيرة لا تعمل على أجهزته إلى مطور قادر على تشغيلها تجريبياً باستخدام ds4 وفهم حدوده.
القيمة الحقيقية تظهر عند العودة والتطبيق
لا تتعامل معه كمقال يُقرأ مرة واحدة. استخدمه كلوحة تشغيل: ارجع للتشخيص عند ظهور المشكلة، وللقوالب عند التطبيق، ولمؤشرات القياس عند المراجعة.
ds4 مشروع تجريبي يفتح الباب لتشغيل نماذج MoE على أجهزة محدودة الذاكرة، لكنه غير ناضج. إذا قررت تجربته، ابدأ بنموذج أصغر وتابع بحذر. وإذا لم يناسبك، فلديك بدائل ناضجة مثل llama.cpp أو Ollama. الأهم أنك الآن تعرف الخيارات المتاحة.
حتى يبقى المرجع صالحاً مع الوقت
FAQ