النقاط الرئيسية
- مدمجة في Docker Desktop (macOS، Windows) و Docker Engine (Linux) — وليست تنزيلًا منفصلًا
- محرك الاستدلال المحلي هو llama.cpp لوحدات CPU وشرائح Apple Silicon، أو vLLM للخدمة المعتمدة على وحدات معالجة NVIDIA
- تعمل كعملية مضيف أصلية خارج بيئة تشغيل الحاويات، للوصول المباشر إلى وحدة معالجة الرسوميات
- واجهة الأوامر:
docker model pull <النموذج>،docker model run <النموذج>،docker model list - واجهة برمجية متوافقة مع OpenAI عند
http://localhost:12434/engines/v1من المضيف، أوhttp://model-runner.docker.internal/engines/v1من حاوية أخرى - تأتي النماذج من كتالوج نماذج الذكاء الاصطناعي في Docker Hub، أو سجلات أخرى متوافقة مع OCI، أو Hugging Face
- دون أي تكلفة إضافية — تأتي الميزة مع Docker Desktop؛ وحاجة Docker Desktop نفسه لاشتراك مدفوع تعتمد على حجم الشركة
📍 في جملة واحدة
Docker Model Runner ميزة مدمجة في Docker Desktop و Docker Engine تُشغّل نماذج اللغة الكبيرة محليًا عبر أوامر CLI من نوع docker model، مع llama.cpp أو vLLM كمحرك استدلال يعمل كعملية مضيف أصلية، وتكشف عن واجهة برمجية متوافقة مع OpenAI.
💬 بعبارات بسيطة
إذا كنت تستخدم Docker بالفعل لتشغيل الحاويات، فإن Docker Model Runner تتيح لك سحب وتشغيل نموذج ذكاء اصطناعي بنفس الطريقة — docker model pull و docker model run — دون تثبيت تطبيق دردشة منفصل، ودون أن يعمل النموذج فعليًا داخل حاوية.
📌ملاحظة: هذه المراجعة هي المكمّل المتعمّق لإدخال Docker Model Runner في دليل برمجيات نماذج اللغة الكبيرة المحلية — راجع تلك الصفحة لمعرفة كيف تقارن بسرعة مع عشرات أدوات الذكاء الاصطناعي المحلية الأخرى.
ما هي Docker Model Runner؟
Docker Model Runner ميزة في Docker Desktop و Docker Engine لسحب وتشغيل نماذج اللغة الكبيرة محليًا، باستخدام نفس واجهة أوامر docker التي يستخدمها المطورون بالفعل للحاويات. وفقًا لصفحة المنتج الرسمية من Docker، توفّر استدلالًا محليًا أولًا مع واجهة برمجية متوافقة مع OpenAI، وتسحب النماذج من Docker Hub أو سجلات أخرى متوافقة مع OCI أو Hugging Face. إنها ليست تطبيق دردشة بنافذة رسومية — بل ميزة واجهة أوامر مع خادم استدلال محلي، مصممة للاستخدام من طرفية، أو من Docker Compose، أو من كود يستدعي واجهتها البرمجية.
- تأتي ضمن Docker Desktop (macOS، Windows) وكحزمة
docker-model-pluginلـ Docker Engine على Linux — وليست مثبتًا منفصلًا - محركات الاستدلال المحلية: llama.cpp لوحدات CPU وشرائح Apple Silicon، و vLLM للخدمة المعتمدة على وحدات معالجة NVIDIA، وفقًا لوثائق Docker
- مصادر النماذج: كتالوج الذكاء الاصطناعي المنسّق في Docker Hub، أو أي سجل متوافق مع OCI، أو Hugging Face
- تتكامل مع الأدوات التي يستخدمها المطورون بالفعل حول Docker: Docker Compose وTestcontainers، وأطر عمل مثل LangChain وSpring AI وOpen WebUI عبر الواجهة البرمجية المتوافقة مع OpenAI
- المطوّر: Docker, Inc.
التثبيت والبدء
Docker Model Runner هي ميزة واجهة أوامر مدمجة في Docker Desktop و Docker Engine، وليست تطبيقًا مستقلًا يُحمَّل — لذا لا يوجد مثبّت منفصل أو زر تنزيل. تُثبّت Docker Desktop (أو، على Linux، Docker Engine مع إضافة model-runner)، وتصبح أوامر docker model متاحة.
- 1ثبّت Docker Desktop لنظامي macOS أو Windows، أو ثبّت على Linux، Docker Engine مع إضافة model-runner (
sudo apt-get install docker-model-pluginعلى Debian/Ubuntu، أوsudo dnf install docker-model-pluginعلى Fedora/RHEL). - 2فعّل Model Runner إن لم يكن مفعّلًا بالفعل:
docker desktop enable model-runner(Docker Desktop)، أو تأكد من أن الإضافة مفعّلة على Docker Engine. - 3اسحب نموذجًا من كتالوج الذكاء الاصطناعي في Docker Hub:
docker model pull ai/smollm2:360M-Q4_K_M. - 4شغّله مباشرة من سطر الأوامر:
docker model run ai/smollm2:360M-Q4_K_M "Give me a fact about whales." - 5اعرض في أي وقت النماذج المسحوبة محليًا باستخدام
docker model list. - 6للوصول إلى النموذج عبر HTTP بدلًا من واجهة الأوامر، استخدم الواجهة البرمجية المتوافقة مع OpenAI — راجع الواجهة البرمجية المتوافقة مع OpenAI أدناه لمعرفة نقطة النهاية الدقيقة.
لماذا تعمل كعملية مضيف وليس داخل حاوية
رغم بادئة أمر docker، لا تُشغّل Docker Model Runner استدلال النموذج داخل حاوية. يوضح منشور المدونة الرسمي من Docker الذي يقدّم هذه الميزة ذلك بوضوح: تشغيل docker model run "لن يُشغّل أي نوع من الحاويات". بدلًا من ذلك، يستدعي الأمر واجهة برمجية لخادم استدلال تستضيفه Model Runner عبر Docker Desktop، ويُشغّل خادم الاستدلال هذا محركه (llama.cpp أو vLLM) كـعملية مضيف أصلية — وهي عملية عادية تعمل مباشرة على نظام التشغيل لديك، تمامًا مثل أي برنامج آخر مثبّت محليًا.
- السبب المذكور هو الوصول إلى وحدة معالجة الرسوميات: يمكن للعملية المضيفة الأصلية استخدام وحدة معالجة الرسوميات في جهازك (وحدة المعالجة الرسومية المدمجة في Apple Silicon، أو وحدة معالجة NVIDIA) مباشرة، دون التوسّط الإضافي لتمرير وحدة المعالجة الرسومية من الحاوية إلى المضيف
- هذا خيار معماري متعمّد من أجل الأداء، وليس قيدًا في بيئة تشغيل الحاويات الخاصة بـ Docker — تستخدم Docker Model Runner الحاويات في أجزاء أخرى من سير عملها (على سبيل المثال، بعض تعبئة النماذج تعتمد على OCI) لكن ليس لعملية الاستدلال نفسها
- عمليًا، هذا يعني أن نموذجًا قيد التشغيل يتصرف أشبه بخدمة تعمل في الخلفية على جهازك، وليس كحاوية يمكنك فحصها باستخدام
docker ps - تبقى النماذج محمّلة في الذاكرة حتى يُطلب نموذج آخر أو تمرّ فترة من عدم النشاط، لذا يكون الطلب الأول بعد بدء التشغيل أبطأ من الطلبات اللاحقة
llama.cpp مقابل vLLM: أي محرك يُشغّل نموذجك
لا تُنفّذ Docker Model Runner محرك استدلال خاصًا بها — بل تُغلّف محركين مفتوحي المصدر موجودين مسبقًا وتختار بينهما بناءً على عتادك وتنسيق النموذج، وفقًا لوثائق Docker.
llama.cpp
- الاستخدام:
- التطوير المحلي، استدلال فعّال في استهلاك الموارد
- تنسيق النموذج:
- GGUF (مُكمّم)
- المنصات:
- CPU وApple Silicon؛ إضافة إلى بعض واجهات وحدة معالجة الرسوميات على Windows/Linux
vLLM
- الاستخدام:
- خدمة موجهة نحو الإنتاج، بإنتاجية أعلى
- تنسيق النموذج:
- Safetensors
- المنصات:
- Linux وWindows (WSL2) مع وحدة معالجة NVIDIA
هذا هو نفس محرك llama.cpp الذي تناولناه بالتفصيل في شرح llama.cpp على هذا الموقع، ونفس محرك vLLM الذي تناولناه في شرح vLLM — Docker Model Runner هي طبقة تعبئة وواجهة أوامر فوق هذين المحركين، وليست بديلًا مبنيًا من الصفر لأي منهما. توثّق Docker أيضًا دعمًا تجريبيًا لـ Diffusers الخاص بنماذج توليد الصور (Stable Diffusion) على Linux مع وحدات معالجة NVIDIA، وهو ما يخرج عن نطاق هذه المراجعة المركزة على نماذج اللغة الكبيرة.
الواجهة البرمجية المتوافقة مع OpenAI
تكشف Docker Model Runner عن واجهة برمجية HTTP متوافقة مع OpenAI حتى يتمكن كود العميل الحالي المخصص لـ OpenAI من التوجه إلى نموذج محلي بدلًا من نقطة نهاية سحابية، وفقًا لمنشور مدونة Docker حول هذه الميزة.
- من الجهاز المضيف:
http://localhost:12434/engines/v1(يجب تفعيل الوصول عبر TCP مرة واحدة باستخدامdocker desktop enable model-runner --tcp 12434) - من حاوية أخرى على نفس شبكة Docker:
http://model-runner.docker.internal/engines/v1 - متوافقة مع الأدوات وأطر العمل المبنية مسبقًا لتنسيق واجهة OpenAI البرمجية، بما في ذلك LangChain وSpring AI وOpen WebUI، وفقًا لأمثلة التكامل الخاصة بـ Docker نفسها
- تُحمَّل النماذج عند الطلب فور وصول طلب، وتبقى مقيمة في الذاكرة حتى يُطلب نموذج آخر أو ينقضي وقت خمول
المنصات المدعومة
يختلف دعم العتاد في Docker Model Runner حسب نظام التشغيل ومحرك الاستدلال المستخدم، وفقًا لوثائق Docker.
macOS
- التفاصيل:
- شرائح Apple Silicon، عبر llama.cpp مع تسريع GPU أصلي
Windows
- التفاصيل:
- AMD64 مع وحدة معالجة NVIDIA (تعريف 576.57 أو أحدث) عبر llama.cpp أو vLLM (WSL2)؛ ARM64 مع وحدات معالجة Qualcomm Adreno من فئة 6xx عبر llama.cpp
Linux
- التفاصيل:
- CPU فقط، أو واجهات NVIDIA CUDA وAMD ROCm وVulkan عبر llama.cpp؛ ووحدة معالجة NVIDIA عبر vLLM (تعريف 575.57.08 أو أحدث)
تتغيّر الإصدارات الدنيا الدقيقة لبرامج التعريف وفئات وحدات معالجة الرسوميات المدعومة مع تحديث Docker لهذه الميزة — تحقّق من المتطلبات الحالية عبر docs.docker.com/ai/model-runner قبل التخطيط لنشر يعتمد على وحدة معالجة رسومية محددة.
أسعار Docker Model Runner
لا تضيف Docker Model Runner نفسها أي تكلفة منفصلة — فهي ميزة مضمّنة في Docker Desktop و Docker Engine. يعتمد ما إذا كنت مدينًا بأي شيء كليًا على ما إذا كان استخدامك لـ Docker Desktop مؤهلًا للمجانية، وفقًا لاتفاقية خدمة اشتراك Docker الخاصة بها.
Personal (مجانية)
- لمن هي مخصصة:
- الأفراد، والتعليم، والمشاريع مفتوحة المصدر غير التجارية، والشركات التي يقل عدد موظفيها عن 250 موظفًا وإيراداتها السنوية عن 10 ملايين دولار أمريكي
- هل تشمل Docker Model Runner؟:
- نعم
Pro / Team / Business (مدفوعة)
- لمن هي مخصصة:
- الشركات الأكبر، أو أي جهة تحتاج ميزات فرق العمل بما يتجاوز نطاق الخطة المجانية
- هل تشمل Docker Model Runner؟:
- نعم
يمكن سحب نماذج الذكاء الاصطناعي المنسّقة في Docker Hub مجانًا بغض النظر عن مستوى الاشتراك. تضيف خطط Docker المدفوعة (Pro وTeam وBusiness) ميزات لا علاقة لها بـ Model Runner نفسها، مثل مقاعد الفريق والإدارة المركزية — راجع docker.com/pricing للاطلاع على الأسعار الحالية، إذ تتغيّر بشكل مستقل عن ميزة Model Runner.
لمن تناسب Docker Model Runner؟
تناسب Docker Model Runner سير عمل محددًا: المطورين الذين يعيشون بالفعل داخل Docker ويريدون إضافة استدلال نماذج لغوية محلي دون إضافة أداة ثانية إلى مجموعتهم التقنية.
المنافسون والبدائل
تقع Docker Model Runner في فئة أدوات تشغيل الاستدلال المحلي، إلى جانب محركات تعتمد على واجهة الأوامر أولًا وتطبيقات سطح مكتب تُغلّف نفس المحركات الأساسية. راجع دليل برمجيات نماذج اللغة الكبيرة المحلية للاطلاع على الكتالوج الكامل.
- llama.cpp — محرك الاستدلال الذي تستخدمه Docker Model Runner نفسها لوحدات CPU وشرائح Apple Silicon؛ تشغيله مباشرة يمنحك تحكمًا في خيارات البناء والتكميم لا تكشف عنها طبقة تغليف Docker.
- vLLM — نفس محرك الخدمة عبر وحدة معالجة الرسوميات الذي تستخدمه Docker Model Runner لأحمال العمل الإنتاجية؛ تشغيله مباشرة يناسب أكثر إذا احتجت إلى كامل مساحة إعدادات vLLM بدلًا من واجهة أوامر Docker المبسّطة فوقه.
- Ollama — أقرب مقارنة "بأمر واحد": مثل Docker Model Runner، تُغلّف Ollama llama.cpp خلف واجهة أوامر بسيطة للسحب والتشغيل وواجهة برمجية متوافقة مع OpenAI، لكن كأداة مستقلة وليس كميزة في Docker Desktop — خيار أفضل إذا لم تكن تستخدم Docker بعد.
- Jan — تطبيق سطح مكتب مجاني ومفتوح المصدر بنافذة دردشة رسومية، مبني على نفس محرك llama.cpp، للمطورين الذين يريدون واجهة بالنقر بدلًا من سير عمل يعتمد على واجهة الأوامر وواجهة برمجية.
- GPT4All — تطبيق دردشة محلي آخر مفتوح المصدر ومبني على llama.cpp، لنفس حالة الاستخدام "أريد نافذة، لا طرفية" التي يخدمها Jan.
أخطاء شائعة
يأتي معظم الالتباس حول Docker Model Runner من افتراض أنها تتصرف مثل أي حِمل عمل عادي في Docker، أو من إغفال أنها ميزة في Docker Desktop وليست منتجًا منفصلًا يُثبَّت.
الأسئلة الشائعة
ما هي Docker Model Runner؟
Docker Model Runner ميزة مدمجة في Docker Desktop و Docker Engine تُشغّل نماذج اللغة الكبيرة محليًا عبر أوامر CLI من نوع docker model، مع llama.cpp أو vLLM كمحرك استدلال وواجهة برمجية متوافقة مع OpenAI.
هل Docker Model Runner مجانية؟
لا تضيف الميزة نفسها أي تكلفة منفصلة — فهي جزء من Docker Desktop و Docker Engine. تعتمد الحاجة إلى اشتراك Docker مدفوع على حجم مؤسستك: Docker Desktop مجاني للأفراد والمشاريع مفتوحة المصدر غير التجارية والشركات التي يقل عدد موظفيها عن 250 موظفًا وإيراداتها السنوية عن 10 ملايين دولار أمريكي، وفقًا لاتفاقية خدمة اشتراك Docker.
هل تُشغّل Docker Model Runner النماذج داخل حاوية؟
لا. رغم بادئة أمر docker model، يعمل محرك الاستدلال (llama.cpp أو vLLM) كعملية مضيف أصلية خارج بيئة تشغيل الحاويات، وفقًا لمنشور مدونة Docker الرسمي الذي يقدّم هذه الميزة — ما يمنحه وصولًا مباشرًا إلى عتاد وحدة معالجة الرسوميات بدلًا من المرور عبر عزل الحاويات.
ما أوامر CLI التي تستخدمها Docker Model Runner؟
الأوامر الأساسية هي docker model pull <النموذج> لتنزيل نموذج، و docker model run <النموذج> لتشغيل الاستدلال من سطر الأوامر، و docker model list لعرض النماذج المسحوبة محليًا بالفعل.
ما هي نقطة نهاية واجهة Docker Model Runner البرمجية؟
تُكشف واجهة برمجية متوافقة مع OpenAI عند http://localhost:12434/engines/v1 من الجهاز المضيف (بعد تفعيل الوصول عبر TCP)، أو عند http://model-runner.docker.internal/engines/v1 من حاوية أخرى على نفس شبكة Docker.
هل تستخدم Docker Model Runner محرك llama.cpp أم vLLM؟
كلاهما، حسب الحالة. يتولى llama.cpp استدلال CPU وApple Silicon للتطوير المحلي؛ ويتولى vLLM الخدمة المعتمدة على وحدة معالجة NVIDIA على Linux وWindows WSL2، بهدف استخدام إنتاجي بإنتاجية أعلى.
ما المنصات التي تدعمها Docker Model Runner؟
macOS على شرائح Apple Silicon؛ وWindows على AMD64 مع وحدة معالجة NVIDIA أو ARM64 مع وحدة معالجة Qualcomm Adreno من فئة 6xx؛ وLinux مع واجهات CPU فقط، أو NVIDIA CUDA، أو AMD ROCm، أو Vulkan. راجع قسم المنصات المدعومة أعلاه للتفاصيل.
كيف تختلف Docker Model Runner عن Ollama؟
يُغلّف كلاهما llama.cpp خلف واجهة أوامر بسيطة للسحب والتشغيل وواجهة برمجية متوافقة مع OpenAI. الفرق الرئيسي هو في التعبئة: Ollama أداة مستقلة تُثبّتها بمفردها، بينما Docker Model Runner ميزة في Docker Desktop/Engine — خيار أفضل إذا كنت تستخدم Docker يوميًا بالفعل، لأنها لا تضيف أداة ثانية إلى سير عملك.
من أين تأتي نماذج Docker Model Runner؟
يمكن سحب النماذج من كتالوج نماذج الذكاء الاصطناعي المنسّق في Docker Hub، أو أي سجل آخر متوافق مع OCI، أو Hugging Face، وفقًا لصفحة منتج Docker.
