تخطى إلى المحتوى الرئيسي
PromptQuorumمصمم للبشر. منظم للذكاء الاصطناعي.
الرئيسية/LLM المحلية المتقدمة
Overview & Reference

مراجعة candle-vllm: تقديم نماذج لغوية أصلي بلغة Rust على CUDA وMetal

·9 دقائق للقراءةبقلم Hans Kuepper · مؤسس PromptQuorum · محرك اكتشاف للذكاء الاصطناعي مفتوح الأوزان ومفتوح المصدر

candle-vllm هو محرك استدلال وتقديم مجاني ومفتوح المصدر للنماذج اللغوية الكبيرة، مكتوب بالكامل بلغة Rust ومبني على إطار عمل التعلم الآلي Candle من Hugging Face، ويوفر خادم API متوافقًا مع OpenAI مع ميزات تقديم شبيهة بـ vLLM (المعالجة الدُفعية المستمرة، إدارة ذاكرة شبيهة بـ PagedAttention، دعم الضغط الكمّي) منفَّذة أصليًا بلغة Rust وليست منقولة عن Python. يستخدم نفس قاعدة الكود على NVIDIA CUDA (على Linux) وApple Metal (على macOS/Apple Silicon)، بالإضافة إلى العمل الاحتياطي على المعالج CPU، ويدعم مجموعة واسعة من عائلات النماذج المفتوحة بصيغ SafeTensors وGGUF وGPTQ وAWQ وغيرها.

النقاط الرئيسية

  • candle-vllm (github.com/EricLBuehler/candle-vllm) محرك استدلال وتقديم مجاني ومفتوح المصدر وأصلي بلغة Rust
  • مبني على إطار عمل Candle للتعلم الآلي من Hugging Face، من تطوير المطور EricLBuehler
  • مرخّص بموجب MIT، ومؤكد من خلال رخصة المستودع
  • يستمد نهج التقديم فيه — المعالجة الدُفعية المستمرة، الإدارة الفعّالة لذاكرة التخزين المؤقت KV — من مشروع vLLM بلغة Python، وذلك بالاستناد إلى ورقة vLLM البحثية (arxiv.org/abs/2309.06180)، لكنه إعادة تنفيذ كاملة بلغة Rust من الصفر، وليس نقلاً لكود vLLM بلغة Python
  • يشغّل خادم API متوافقًا مع OpenAI على http://localhost:2000 افتراضيًا، مع واجهة ويب مدمجة اختيارية
  • يعمل على منصات متعددة بنفس قاعدة الكود: NVIDIA CUDA 11/12/13 على Linux، وApple Metal على macOS/Apple Silicon (يُنصح بذاكرة موحدة 16 جيجابايت أو أكثر)، والعمل الاحتياطي على CPU
  • حوالي 728 نجمة على GitHub وقت إعداد هذه المراجعة

📍 في جملة واحدة

candle-vllm هو محرك تقديم نماذج لغوية مجاني ومفتوح المصدر (رخصة MIT)، مكتوب أصليًا بلغة Rust فوق إطار عمل Candle من Hugging Face، ويوفر خادم API متوافقًا مع OpenAI مع سلوك تقديم شبيه بـ vLLM على كل من NVIDIA CUDA وApple Metal.

💬 بعبارات بسيطة

candle-vllm هو برنامج يشغّل نموذج لغة بالذكاء الاصطناعي على جهاز الكمبيوتر أو الخادم الخاص بك، ويسمح لتطبيقات أخرى بالتواصل معه باستخدام نفس صيغة الطلبات التي تستخدمها واجهة OpenAI — لذلك يمكن للأدوات المبنية لواجهة OpenAI الاتصال به غالبًا بتغيير بسيط في الإعدادات. وهو مبني بالكامل بلغة Rust بدلاً من Python، وهو ما يصفه مطوره كميزة من حيث الأمان والترجمة الأصلية للكود، وهو يستنسخ تصميم التقديم لمشروع Python المعروف vLLM دون إعادة استخدام كود Python الخاص به حرفيًا.

📌ملاحظة: تستند هذه المراجعة إلى مستودع GitHub وملف README الخاص بالمشروع نفسه. ولا تُعرض مقاييس سرعة فك التشفير التي يعلن عنها المشروع بنفسه كأرقام تم التحقق منها بشكل مستقل، إذ لم تُجرِ PromptQuorum اختبارات أداء عملية خاصة بها على candle-vllm.

candle-vllm (github.com/EricLBuehler/candle-vllm) هو محرك استدلال وتقديم مجاني ومفتوح المصدر للنماذج اللغوية الكبيرة، مكتوب بالكامل بلغة Rust، ومبني على إطار عمل التعلم الآلي Candle من Hugging Face. يوفر خادم API متوافقًا مع OpenAI، ويهدف إلى سلوك تقديم شبيه بـ vLLM دون الحاجة إلى بيئة تشغيل Python. يعمل بنفس قاعدة الكود على كل من NVIDIA CUDA وApple Metal. تتناول هذه المراجعة ما يقدمه، ومقارنته بمشروع vLLM المكتوب بلغة Python الذي استمد منه نموذج التقديم، ومن هي الفئة المناسبة له.

ما هو candle-vllm؟

candle-vllm هو محرك استدلال وتقديم مجاني ومفتوح المصدر للنماذج اللغوية الكبيرة، مكتوب بالكامل بلغة Rust، ومبني على إطار عمل Candle للتعلم الآلي من Hugging Face بدلاً من Python. طوّره EricLBuehler وهو موزَّع عبر GitHub.

  • نوع المنتج: محرك تقديم / خادم API تقوم بتشغيله بنفسك، وليس خدمة مستضافة أو تطبيق دردشة لسطح المكتب
  • المطور: EricLBuehler
  • الإطار الأساسي: Candle، إطار عمل التعلم الآلي الأصلي بلغة Rust من Hugging Face — candle-vllm مبني فوقه، وليس نسخة متفرعة أو إعادة تسمية لـ Candle نفسه
  • الترخيص: MIT
  • التمويل: لم يُعثر على أي جولة تمويل أو مستثمر أو جهة دعم تجارية لهذه المراجعة — يُعامَل كمشروع مفتوح المصدر يُصان بشكل مستقل من قِبل المجتمع
  • الحجم: حوالي 728 نجمة على GitHub، وحوالي 90 نسخة متفرعة (forks)، وسجل التزامات (commits) نشط وحديث وقت إعداد هذه المراجعة

ماذا يقدم candle-vllm فعليًا؟

يقوم candle-vllm بتحميل نموذج لغوي مفتوح وتقديمه عبر واجهة API متوافقة مع OpenAI عبر HTTP، مطبِّقًا تحسينات تقديم قريبة في جوهرها من مشروع vLLM بلغة Python — المعالجة الدُفعية المستمرة، الإدارة الفعّالة للذاكرة الخاصة بذاكرة الانتباه المؤقتة، ودعم الضغط الكمّي — منفَّذة أصليًا بلغة Rust.

  • خادم API متوافق مع OpenAI: يستمع افتراضيًا على http://localhost:2000، لذا يمكن للعملاء المبنيين لصيغة واجهة OpenAI الاتصال غالبًا بتغيير عنوان URL الأساسي فقط
  • واجهة ويب مدمجة اختيارية: وفقًا لملف README الخاص بالمشروع، يمكن تشغيل واجهة دردشة على غرار ChatGPT جنبًا إلى جنب مع واجهة API، على منفذ مختلف عن منفذ الـ API
  • دعم واسع لعائلات النماذج وفقًا لملف README: Qwen وLlama وMistral وPhi3/Phi4 وDeepSeek (بما في ذلك V3/R1) وGLM وYi وStableLM وGemma وQwQ ونماذج الرؤية واللغة
  • دعم صيغ النماذج وفقًا لوثائق المشروع: SafeTensors وGGUF وGPTQ وAWQ وMarlin وMXFP4 وNVFP4
  • ميزات الأداء الموضحة في README: Flash Attention، خيار خلفية FlashInfer، CUDA Graphs، المعالجة الدُفعية المستمرة، والتخزين المؤقت للبادئة (prefix caching) لإعادة استخدام ذاكرة KV المؤقتة بين الطلبات
  • ميزة كفاءة الذاكرة: ضغط ذاكرة KV المؤقتة المسمى "TurboQuant"، والذي يصفه README بأنه يحقق توسيعًا كبيرًا في طول السياق عبر إصدارات ضغط كمّي للذاكرة المؤقتة بين 2 و4 بت
  • دعم تعدد وحدات معالجة الرسوميات (GPU) وتعدد العقد: استدلال متعدد GPU بالتوازي الموتري (يُنصح بوضع تعدد العمليات وفقًا لـ README)، وتنسيق متعدد العقد قائم على TCP دون الاعتماد على MPI
  • تكامل الأدوات: دعم موثَّق لبروتوكول سياق النموذج (MCP) واستدعاء الأدوات/الوظائف المتوافق مع OpenAI

المنصة والتسعير والترخيص

المنصة

ما يذكره candle-vllm:
عملية خادم مستضافة ذاتيًا، تُشغَّل من سطر الأوامر أو كمكتبة Rust. متعددة المنصات: Linux (CUDA 11/12/13)، وmacOS/Apple Silicon (Metal)، والعمل الاحتياطي على CPU، بنفس قاعدة الكود في الثلاثة.

التكلفة

ما يذكره candle-vllm:
مجاني ومفتوح المصدر، بلا مستوى مدفوع. توفّر قدرة الحوسبة الخاصة بك وتنزّل أوزان النماذج المفتوحة بشكل منفصل (مثلاً من Hugging Face).

الترخيص

ما يذكره candle-vllm:
رخصة MIT.

طريقة التثبيت

ما يذكره candle-vllm:
وفقًا لملف README الخاص بالمشروع: مثبِّت shell بسطر واحد لتثبيتات DEB/الملفات الثنائية، أو بناء من المصدر عبر cargo install مع أعلام ميزات CUDA/Metal/CPU، أو صورة Docker بإصدار CUDA/SM قابل للتهيئة.

تحقق من طريقة التثبيت الموصى بها حاليًا وتوافق CUDA/برامج التشغيل على github.com/EricLBuehler/candle-vllm قبل تشغيل أي أمر، إذ قد تتغير تعليمات التثبيت وإصدارات CUDA المدعومة بين الإصدارات.

candle-vllm مقابل vLLM بلغة Python

candle-vllm ليس نسخة متفرعة أو منقولة من مشروع vLLM الأصلي بلغة Python — بل هو تنفيذ Rust مستقل ومبني من الصفر، يتبع تصميم تقديم مشابهًا (المعالجة الدُفعية المستمرة، الإدارة الفعّالة لذاكرة KV المؤقتة)، ويستشهد بورقة vLLM البحثية كنهج مرجعي.

اللغة/بيئة التشغيل

candle-vllm:
Rust، لا حاجة إلى بيئة تشغيل Python لتشغيل الخادم
vLLM بلغة Python:
Python، يتطلب بيئة Python

الإطار الأساسي

candle-vllm:
Hugging Face Candle (إطار تعلم آلي بلغة Rust)
vLLM بلغة Python:
PyTorch

توافق واجهة API

candle-vllm:
واجهة API عبر HTTP متوافقة مع OpenAI
vLLM بلغة Python:
واجهة API عبر HTTP متوافقة مع OpenAI

دعم المنصات

candle-vllm:
CUDA وApple Metal وCPU — نفس قاعدة الكود
vLLM بلغة Python:
يركّز أساسًا على CUDA/ROCm، دون خلفية Apple Metal أصلية

نضج النظام البيئي

candle-vllm:
مجتمع أصغر (حوالي 728 نجمة)، مشروع أحدث
vLLM بلغة Python:
كبير، ومنشور على نطاق واسع في بيئات إنتاج لتقديم النماذج اللغوية

تعكس هذه المقارنة وثائق كل مشروع الخاصة به، وليست اختبار قياس أداء مستقل من PromptQuorum. تحقق من تكافؤ الميزات والأداء الحاليين مباشرة من كل مشروع قبل الاختيار.

من يجب أن يستخدم candle-vllm؟

candle-vllm مناسب للمطورين الذين يريدون محرك تقديم محلي متوافق مع OpenAI دون الاعتماد على Python، ويقدّرون تشغيل نفس قاعدة الكود على CUDA وApple Metal.

استخدم candle-vllm إذا كنت

  • تريد تجنّب الاعتماد على بيئة تشغيل Python في طبقة تقديم الاستدلال لديك، لأسباب تتعلق ببساطة النشر أو الترجمة الأصلية للكود
  • تحتاج إلى تشغيل نفس قاعدة كود التقديم على خادم NVIDIA CUDA وجهاز Mac بمعالج Apple Silicon في آن واحد
  • مرتاح للعمل مع أدوات Rust (cargo) أو ملفات ثنائية/صور Docker جاهزة بدلاً من حزمة Python مثبَّتة عبر pip
  • تريد سلوك تقديم شبيه بـ vLLM (المعالجة الدُفعية المستمرة، إعادة استخدام ذاكرة KV المؤقتة) دون تبنّي حزمة vLLM الكاملة بلغة Python
  • تحتاج إلى دعم واسع لصيغ الضغط الكمّي (GGUF وGPTQ وAWQ وMarlin وMXFP4 وNVFP4) في محرك تقديم واحد

ابحث في مكان آخر إذا كنت

  • تحتاج إلى أكبر نظام بيئي وأكثره نضجًا وأوسع دعم من المجتمع — يمتلك vLLM بلغة Python نشرات إنتاجية وتكاملات خارجية أكثر بكثير
  • تريد مثبِّتًا برسوميًا دون طرفية — candle-vllm مكوّن خادم/API يُهيَّأ من سطر الأوامر أو Docker
  • تعتمد على تكامل أو إضافة معيّنة خاصة بـ vLLM بلغة Python فقط، دون مكافئ لها في Rust/candle-vllm
  • تحتاج إلى أرقام إنتاجية تم التحقق منها بشكل مستقل وخاصة بعتاد معين قبل الالتزام — لا تعرض هذه المراجعة مقاييس المشروع المعلَنة ذاتيًا كأرقام مؤكدة

ما لا يصلح له candle-vllm

candle-vllm ليس خيارًا جيدًا إذا كنت بحاجة إلى أكبر نظام بيئي موجود من التكاملات، أو مثبِّت رسومي دون طرفية، أو أرقام أداء تم التحقق منها بشكل مستقل قبل الالتزام.

  • ليس النظام البيئي الأكثر نضجًا — يمتلك vLLM بلغة Python مجتمعًا أكبر بكثير، وتكاملات خارجية أكثر، وسجل إنتاجي أوسع وقت إعداد هذه المراجعة
  • ليس تثبيتًا رسوميًا أو بنقرة واحدة لسطح المكتب — إنه مكوّن خادم/API يُعَدّ عبر سكربت shell أو بناء cargo أو Docker
  • ليس بديلاً مباشرًا لكل إضافة أو سير عمل خاص بـ vLLM بلغة Python — بعض الأدوات المبنية خصيصًا حول آليات vLLM الداخلية بلغة Python ليس لها مكافئ مباشر في Rust هنا
  • لم تُقيَّم أداؤه بشكل مستقل من PromptQuorum — لا تؤكد هذه المراجعة أرقام سرعة فك التشفير المعلَنة ذاتيًا من المشروع من خلال اختباراتها العملية الخاصة
  • لا توجد جولة تمويل أو شركة يمكن لهذه المراجعة التحقق منها — يُعامَل كمشروع يُصان بشكل مستقل وبدعم من المجتمع

أخطاء شائعة عند تقييم candle-vllm

ينشأ معظم اللبس حول candle-vllm من افتراض أنه نسخة منقولة من Python إلى Rust لمشروع vLLM، أو افتراض أنه مكتوب بلغة Python بسبب كلمة "vllm" في اسمه.

الخطأ 1: افتراض أن candle-vllm نسخة منقولة بلغة Rust من vLLM بلغة Python

إنه تنفيذ Rust مستقل ومبني من الصفر على إطار عمل Candle، يتبع تصميم تقديم مشابهًا ويستشهد بورقة vLLM البحثية كمرجع — ولا يعيد استخدام كود vLLM بلغة Python أو يغلّفه.

الخطأ 2: افتراض أنه مكتوب بلغة Python

يحتوي الاسم على كلمة "vllm"، لكن الخادم بالكامل مكتوب بلغة Rust فوق إطار عمل Candle من Hugging Face. لا حاجة إلى أي بيئة تشغيل Python لتشغيله.

الخطأ 3: التعامل مع أرقام الإنتاجية المعلَنة ذاتيًا كأنها تم التحقق منها بشكل مستقل

يذكر ملف README الخاص بالمشروع أرقام سرعة فك التشفير لنماذج وعتاد محددين. لا تعرض هذه المراجعة هذه الأرقام كمقاييس أكدتها PromptQuorum — تحقق من الأرقام الحالية على عتاد مشابه لإعدادك الخاص.

الخطأ 4: الخلط بين candle-vllm وإطار عمل Candle نفسه

Candle هو إطار عمل التعلم الآلي العام بلغة Rust من Hugging Face؛ بينما candle-vllm مشروع محرك تقديم منفصل مبني فوقه، ويحافظ عليه مؤلف رئيسي مختلف (EricLBuehler).

المنافسون والبدائل

ضمن محركات استدلال وتقديم النماذج اللغوية المحلية، يُقارَن candle-vllm غالبًا بمنصات تقديم أخرى مستضافة ذاتيًا ومتوافقة مع OpenAI — أبرز ما يميّزه هو كونه أصليًا بلغة Rust بدلاً من كونه قائمًا على Python، مع دعم أصلي لـ Apple Metal إلى جانب CUDA.

Tool
أشهر ما يُعرف به
Link
LMDeployأداة تقديم نماذج لغوية بلغة Python من فريق InternLM، مع الضغط الكمّي والاستدلال عالي الإنتاجيةمراجعة LMDeploy
NVIDIA Dynamoإطار عمل تقديم استدلال موزَّع لعمليات نشر النماذج اللغوية الكبيرة متعددة العقد وواسعة النطاقمراجعة Dynamo
LoRAXإطار عمل تقديم متعدد محولات LoRA لتشغيل العديد من النسخ المضبوطة بدقة من نموذج أساسي واحدمراجعة LoRAX

تعكس هذه القائمة أدوات تُقارَن بشكل شائع بـ candle-vllm ضمن قطاع محركات الاستدلال/التقديم، وليست ترتيبًا مستقلاً من PromptQuorum — تحقق من مجموعة الميزات الحالية لكل أداة قبل الاختيار.

قارن في الدليل

الأسئلة الشائعة

ما هو candle-vllm؟

candle-vllm (github.com/EricLBuehler/candle-vllm) محرك استدلال وتقديم مجاني ومفتوح المصدر وأصلي بلغة Rust للنماذج اللغوية الكبيرة، مبني على إطار عمل Candle من Hugging Face، ويوفر خادم API متوافقًا مع OpenAI.

هل candle-vllm مكتوب بلغة Python؟

لا. رغم وجود كلمة "vllm" في اسمه، فإن candle-vllm مكتوب بالكامل بلغة Rust فوق إطار عمل Candle للتعلم الآلي من Hugging Face. لا حاجة إلى أي بيئة تشغيل Python لتشغيل الخادم.

هل candle-vllm هو نفس مشروع vLLM؟

لا. إنه تنفيذ Rust مستقل ومبني من الصفر، يتبع تصميم تقديم مشابهًا (المعالجة الدُفعية المستمرة، إدارة ذاكرة KV المؤقتة) لمشروع vLLM بلغة Python ويستشهد بورقته البحثية، لكنه لا يعيد استخدام كود vLLM بلغة Python.

هل candle-vllm مجاني؟

نعم، إنه مجاني ومفتوح المصدر بموجب رخصة MIT، بلا مستوى مدفوع.

ما المنصات التي يدعمها candle-vllm؟

تعمل نفس قاعدة الكود على NVIDIA CUDA (11/12/13) على Linux، وApple Metal على macOS/Apple Silicon (يُنصح بذاكرة موحدة 16 جيجابايت أو أكثر)، وCPU كخيار احتياطي.

كيف أثبّت candle-vllm؟

وفقًا لملف README الخاص بالمشروع: مثبِّت shell بسطر واحد لتثبيتات DEB/الملفات الثنائية، أو بناء من المصدر عبر cargo install مع أعلام CUDA/Metal/CPU المناسبة، أو صورة Docker.

هل يدعم candle-vllm النماذج المضغوطة كميًا؟

نعم. وفقًا لوثائق المشروع، يدعم صيغ النماذج SafeTensors وGGUF وGPTQ وAWQ وMarlin وMXFP4 وNVFP4.

من أنشأ candle-vllm؟

أنشأ المطور EricLBuehler محرك candle-vllm ويحافظ عليه، وهو مبني على إطار عمل Candle للتعلم الآلي من Hugging Face.

هل يمتلك candle-vllm واجهة ويب؟

يمكنه اختياريًا تشغيل واجهة ويب مدمجة على غرار ChatGPT جنبًا إلى جنب مع خادم API الخاص به، على منفذ مختلف عن منفذ الـ API، وفقًا لملف README الخاص بالمشروع.

هل تحقّقت PromptQuorum بشكل مستقل من ادعاءات أداء candle-vllm؟

لا. تستند هذه المراجعة إلى مستودع GitHub وملف README الخاص بالمشروع نفسه، وليس إلى اختبارات أداء عملية أجرتها PromptQuorum.

المصادر

← العودة إلى LLM المحلية المتقدمة

MCP