تخطّى إلى المحتوى الرئيسي
استدلال

Tiny-vLLM: دليل تركيب وتشغيل محرك استدلال LLM بلغة C++ وCUDA

Tiny-vLLM: دليل تركيب وتشغيل محرك استدلال LLM بلغة C++ وCUDA
📑 محتويات المقال
    Reference OS v85 دقائق قراءة٢ يونيو ٢٠٢٦informational: يبحث المطورون عن طريقة تركيب وتجربة مشروع Tiny-vLLM الجديد الذي ظهر على Hacker News

    Tiny-vLLM: دليل تركيب وتشغيل محرك استدلال LLM بلغة C++ وCUDA

    ستتمكن من تثبيت وتشغيل Tiny-vLLM على نظام Linux مع CUDA في أقل من 30 دقيقة، وحل الأخطاء الشائعة بنفسك.

    الخلاصة: دليل عملي لتثبيت وتشغيل Tiny-vLLM (محرك استدلال LLM بلغة C++/CUDA) خطوة بخطوة، مع متطلبات النظام، أوامر البناء، تشغيل نموذج GPT-2، واستكشاف الأخطاء مثل 'nvcc not found' و'Out of memory'.
    Tiny-vLLM دليل تركيب446 كلمة تقريباًزارو — مكتبة الأدلة العملية
    Tiny-vLLM: دليل تركيب وتشغيل محرك استدلال LLM بلغة C++ وCUDA
    Photo by Anete Lusina on Pexels
    LIVE PROJECTjmaczan/tiny-vllm★ 0

    Show HN: Tiny-vLLM – high performance LLM inference engine in C++ and CUDA

    رابط المشروع على GitHub ↗

    MAP

    خريطة الصفحة

    اختر القسم الذي تحتاجه الآن

    1. المتطلبات الأساسية
    2. إعداد بيئة CUDA خطوة بخطوة
    3. تركيب Tiny-vLLM خطوة بخطوة
    4. تشغيل أول نموذج مع Tiny-vLLM
    5. استكشاف الأخطاء وإصلاحها: دليل عملي
    6. الخلاصة
    7. ما المشكلة التي يحلها هذا الدليل؟
    8. Input → Process → Output
    9. خطوات التطبيق العملية
    10. جدول مقارنة سريع
    11. مثال تطبيقي مختصر
    12. متى لا تستخدم هذا الحل؟
    !

    قبل أن تطبق

    الفكرة التي تمنع التسرع

    هل تريد تشغيل LLM محلياً بأداء عالٍ لكن README المشروع غير واضح؟ هذا الدليل يملأ الفجوة.

    Q

    أسئلة التشخيص السريع

    قبل أن تطبق، اعرف أين تقف بالضبط

    1. هل لديك بطاقة NVIDIA مع دعم CUDA وذاكرة VRAM 4GB على الأقل؟
    2. هل نظامك Linux أو Windows مع WSL2؟
    3. هل مثبت CUDA Toolkit 11.0+ وتم التحقق منه بـ nvcc --version؟
    4. هل لديك مترجم C++ يدعم C++17 (GCC 9+)؟
    5. هل قمت بتنزيل نموذج بصيغة Hugging Face (مثل GPT-2)؟
    6. هل واجهت خطأ 'nvcc not found' أو 'CUDA not found' أثناء cmake؟
    7. هل تحاول تشغيل نموذج أكبر من سعة VRAM لديك؟

    نظام التشغيل: Input → Process → Output

    INPUT
    نموذج LLM بصيغة مدعومة (مثل GPT-2 أو Llama) + نص استعلام
    PROCESS
    تحميل النموذج إلى الذاكرة باستخدام CUDA، تنفيذ الاستدلال عبر C++، إرجاع المخرجات
    OUTPUT
    نص مولد (استجابة النموذج)
    Decision Layer
    اختيار النموذج بناءً على حجم الذاكرة المتاحة؛ النماذج الصغيرة تعمل على GPU 4GB
    Memory Layer
    إدارة الذاكرة عبر CUDA لتقليل استهلاك VRAM
    Feedback Loop
    لا يوجد حلقة تغذية راجعة مدمجة؛ يمكن إضافتها يدوياً
    M

    لوحة قياس النجاح

    لا تعتمد على الانطباع؛ اختر مؤشراً تراجعه

    المؤشرطريقة القياسإشارة جيدة
    وقت التثبيتساعة توقيت من بداية git clone إلى أول تشغيل ناجحأقل من 30 دقيقة
    عدد الأخطاءعدد مرات ظهور رسائل خطأ أثناء البناء أو التشغيل0 أخطاء
    جودة المخرجاتهل النص المولد منطقي ومرتبط بالاستعلامنعم

    Tiny-vLLM محرك استدلال لنماذج اللغة الكبيرة (LLM) مكتوب بلغة C++ وCUDA، ظهر مؤخراً على Hacker News. لكن README لا يشرح خطوات التركيب بوضوح. هذا الدليل يقدم خطوات عملية قابلة للتنفيذ لتجربة المشروع، مع شرح متطلبات CUDA والأخطاء الشائعة.

    المتطلبات الأساسية

    نظام تشغيل Linux (مفضل) أو Windows مع WSL2. بطاقة NVIDIA مع دعم CUDA و4GB VRAM على الأقل. مترجم C++ يدعم C++17 (GCC 9+). CUDA Toolkit 11.0 أو أحدث. CMake 3.18+. نموذج LLM بصيغة Hugging Face (مثل GPT-2).

    إعداد بيئة CUDA خطوة بخطوة

    إعلان

    تأكد من تثبيت CUDA Toolkit: nvcc --version. إذا لم يعمل، ثبّت CUDA من موقع NVIDIA. أضف المسار: export CUDA_HOME=/usr/local/cuda و export PATH=$CUDA_HOME/bin:$PATH. اختبر: nvcc --version.

    تركيب Tiny-vLLM خطوة بخطوة

    استنساخ المستودع: git clone https://github.com/jmaczan/tiny-vllm.git. الدخول: cd tiny-vllm. إنشاء مجلد البناء: mkdir build && cd build. تشغيل CMake مع تحديد CUDA: cmake .. -DCMAKE_BUILD_TYPE=Release -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda. بناء: make -j$(nproc). تثبيت اختياري: sudo make install.

    تشغيل أول نموذج مع Tiny-vLLM

    بعد البناء، شغّل نموذج GPT-2: ./tiny-vllm --model /path/to/gpt2 --prompt "ما هي عاصمة السعودية؟". المخرجات المتوقعة: نص توليدي. إذا لم يعمل، تحقق من مسار النموذج.

    استكشاف الأخطاء وإصلاحها: دليل عملي

    خطأ nvcc not found: ثبّت CUDA Toolkit. خطأ CUDA not found: أضف -DCUDA_TOOLKIT_ROOT_DIR في CMake. خطأ Out of memory: استخدم نموذجاً أصغر أو قلل طول السياق. خطأ Model file not supported: استخدم نموذجاً بصيغة Hugging Face.

    الخلاصة

    Tiny-vLLM مشروع واعد لكنه في مراحله الأولى. جربه للتجربة والتعلم، لكن للإنتاج استخدم llama.cpp أو vLLM.

    ما المشكلة التي يحلها هذا الدليل؟

    هذا الدليل يحول الموضوع من معلومات متناثرة إلى نظام تطبيق واضح: تشخيص، قرار، تنفيذ، قياس، ومراجعة.

    Input → Process → Output

    • Input: نموذج LLM بصيغة مدعومة (مثل GPT-2 أو Llama) + نص استعلام
    • Process: تحميل النموذج إلى الذاكرة باستخدام CUDA، تنفيذ الاستدلال عبر C++، إرجاع المخرجات
    • Output: نص مولد (استجابة النموذج)

    خطوات التطبيق العملية

    1. حدد المشكلة بجملة واحدة.
    2. اختر النتيجة التي تريدها.
    3. نفذ خطوة صغيرة.
    4. قِس النتيجة.
    5. وثق الطريقة التي نجحت.

    جدول مقارنة سريع

    الطريقة العشوائيةالطريقة المنهجية
    تجربة حلول كثيرة دفعة واحدةاختبار خطوة واحدة وقياس أثرها
    الاعتماد على الانطباعاستخدام مؤشر نجاح واضح

    مثال تطبيقي مختصر

    اختر حالة واحدة من حياتك أو عملك، وطبّق عليها خطوة واحدة من الدليل. لا توسع التطبيق قبل أن ترى نتيجة قابلة للقياس.

    متى لا تستخدم هذا الحل؟

    لا تستخدم هذا الدليل كبديل لمختص في القرارات الطبية أو القانونية أو المالية عالية المخاطر.

    كيف تقيس النجاح؟

    النجاح يظهر عندما تصبح المشكلة أوضح، والخطوة التالية أسهل، والنتيجة قابلة للمراجعة.

    كيف تحافظ على النتيجة؟

    وثق ما نجح، راجع المؤشر كل أسبوع، وعدّل خطوة واحدة فقط في كل مرة.

    DO

    Playbook التطبيق

    خطوات عملية مرتبة من التشخيص إلى النتيجة

    خطوة 1

    تثبيت CUDA Toolkit

    لماذا؟ CUDA ضروري لتشغيل الاستدلال على GPU

    كيف؟ تحقق من وجود CUDA: nvcc --version. إن لم يكن، ثبّت من موقع NVIDIA وأضف المسار: export CUDA_HOME=/usr/local/cuda; export PATH=$CUDA_HOME/bin:$PATH

    الناتج: nvcc --version يعرض رقم الإصدار

    خطوة 2

    استنساخ وبناء Tiny-vLLM

    لماذا؟ بناء المحرك من المصدر

    كيف؟ git clone https://github.com/jmaczan/tiny-vllm.git; cd tiny-vllm; mkdir build && cd build; cmake .. -DCMAKE_BUILD_TYPE=Release -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda; make -j$(nproc)

    الناتج: ملف تنفيذي tiny-vllm في مجلد build

    خطوة 3

    تشغيل نموذج GPT-2

    لماذا؟ اختبار عمل المحرك

    كيف؟ ./tiny-vllm --model /path/to/gpt2 --prompt "ما هي عاصمة السعودية؟"

    الناتج: نص مولد (مثل 'الرياض')

    TMP

    قوالب جاهزة للنسخ

    حوّل القراءة إلى تنفيذ سريع

    أمر تشغيل نموذج مخصص
    ./tiny-vllm --model /path/to/model --prompt "نص الاستعلام" --max-tokens 100
    إعداد متغيرات البيئة لـ CUDA
    export CUDA_HOME=/usr/local/cuda
    export PATH=$CUDA_HOME/bin:$PATH
    export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH
    ERR

    مصفوفة الأخطاء

    اعرف أين يتعثر الناس وكيف تتجنب ذلك

    الخطألماذا يحدث؟التصحيح
    nvcc not foundCUDA Toolkit غير مثبت أو غير مضاف للمسارثبّت CUDA Toolkit وأضف المسار: export PATH=/usr/local/cuda/bin:$PATH
    CUDA not found أثناء cmakecmake لا يجد CUDAأضف -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda إلى أمر cmake
    Out of memoryنموذج كبير جدًا لسعة VRAMاستخدم نموذجًا أصغر (مثل GPT-2) أو قلل طول السياق (--max-tokens)
    Model file not supportedالنموذج ليس بصيغة Hugging Faceاستخدم نموذجًا بصيغة Hugging Face (مثل gpt2, llama)
    IF

    شجرة القرار

    ماذا تفعل حسب حالتك؟

    إذا: إذا كان لديك GPU NVIDIA مع 4GB VRAM

    إذن: اتبع دليل التثبيت الكامل

    إذا: إذا لم يكن لديك GPU

    إذن: استخدم CPU (أداء بطيء) أو جرب llama.cpp

    إذا: إذا واجهت خطأ nvcc not found

    إذن: ثبّت CUDA Toolkit وأضف المسار

    إذا: إذا واجهت خطأ Out of memory

    إذن: استخدم نموذجًا أصغر أو قلل max-tokens

    7D

    خطة تطبيق 7 أيام

    جدول صغير يمنع التسويف

    1. اليوم 1: تثبيت CUDA Toolkit والتحقق منه
    2. اليوم 2: استنساخ وبناء Tiny-vLLM
    3. اليوم 3: تنزيل نموذج GPT-2 وتشغيله
    4. اليوم 4: تجربة نموذج مختلف (مثل Llama)
    5. اليوم 5: اختبار مع استعلامات مختلفة
    6. اليوم 6: توثيق الخطوات الناجحة
    7. اليوم 7: مشاركة التجربة على GitHub
    FACT

    حقائق سريعة تحفظها

    نقاط مختصرة ترجع لها لاحقاً

    1. Tiny-vLLM مكتوب بلغة C++ وCUDA.

    2. يتطلب بطاقة NVIDIA مع 4GB VRAM على الأقل.

    3. يدعم نماذج بصيغة Hugging Face مثل GPT-2 وLlama.

    4. تم بناءه باستخدام CMake 3.18+ ومترجم C++17.

    5. ظهر المشروع مؤخرًا على Hacker News.

    6. لا يزال في مراحله الأولى، غير مناسب للإنتاج.

    7. للإنتاج، استخدم llama.cpp أو vLLM.

    8. يمكن تشغيله على Windows عبر WSL2.

    9. أمر التشغيل الأساسي: ./tiny-vllm --model --prompt "..."

    FAQ

    أسئلة شائعة

    إجابات مباشرة على ما يبحث عنه الزائر

    ما هو Tiny-vLLM؟

    محرك استدلال لنماذج اللغة الكبيرة (LLM) مكتوب بلغة C++ وCUDA، يسمح بتشغيل نماذج مثل GPT-2 على GPU.

    ما هي متطلبات النظام؟

    Linux (أو Windows مع WSL2)، بطاقة NVIDIA مع 4GB VRAM، CUDA Toolkit 11.0+، مترجم C++17، CMake 3.18+.

    كيف أحل خطأ 'nvcc not found'؟

    ثبّت CUDA Toolkit من موقع NVIDIA، ثم أضف المسار: export PATH=/usr/local/cuda/bin:$PATH.

    هل يمكن تشغيله على CPU؟

    نعم، لكن الأداء سيكون بطيئًا جدًا. يُفضل استخدام GPU.

    ما النماذج المدعومة؟

    النماذج بصيغة Hugging Face مثل GPT-2 وLlama. قد لا تعمل نماذج أخرى.

    ABC

    مصطلحات سريعة

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

    CUDA

    منصة حوسبة متوازية من NVIDIA تسمح بتسريع العمليات الحسابية على GPU.

    LLM

    نموذج لغة كبير، مثل GPT-2 أو Llama، قادر على توليد النصوص.

    VRAM

    ذاكرة الوصول العشوائي للبطاقة الرسومية، تستخدم لتخزين النماذج.

    CMake

    أداة لإدارة عملية بناء البرامج، تستخدم لتوليد ملفات Make.

    Q+

    أسئلة مرتبطة يبحث عنها الناس

    استخدمها كمسارات متابعة داخل نفس الموضوع

    كيفية تثبيت CUDA على Linuxأفضل محرك استدلال LLM مفتوح المصدرمقارنة Tiny-vLLM vs llama.cppتشغيل GPT-2 محليًا على GPUحل مشكلة CUDA not found في cmake

    لماذا هذا المرجع يتجاوز الموضوع نفسه؟

    تحول القارئ: من مطور يتردد في تجربة مشاريع GitHub الجديدة إلى مطور قادر على تقييم وتجربة أي مشروع LLM بثقة.

    • إذا كنت مهتماً بـ Tiny-vLLM، فقد يعجبك أيضاً مشروع whisper.cpp للتعرف على الصوت.
    • لتشغيل نماذج متعددة، جرب vLLM أو TGI من Hugging Face.
    SAVE

    كيف تستخدم هذا المرجع لاحقاً؟

    القيمة الحقيقية تظهر عند العودة والتطبيق

    لا تتعامل معه كمقال يُقرأ مرة واحدة. استخدمه كلوحة تشغيل: ارجع للتشخيص عند ظهور المشكلة، وللقوالب عند التطبيق، ولمؤشرات القياس عند المراجعة.

    Tiny-vLLM مشروع واعد لكنه في مراحله الأولى. جربه للتجربة والتعلم، لكن للإنتاج استخدم llama.cpp أو vLLM. شارك تجربتك على GitHub.

    UPD

    خطة تحديث هذا الدليل

    حتى يبقى المرجع صالحاً مع الوقت

    • تحقق من إصدارات CUDA Toolkit الجديدة كل 6 أشهر
    • تابع تحديثات مستودع Tiny-vLLM على GitHub
    • أضف نماذج جديدة مدعومة عند ظهورها
    • راجع أخطاء المستخدمين وأضف حلولاً جديدة

    زارو — مكتبة الأدلة العملية

    نحو مكتبة أدلة عملية: تشخيص، تنفيذ، قياس، وتحديث مستمر.

    Evergreen Reference + GitHub Intelligence + Multi-Stage AI OS v8.0.0-EVERGREEN-GITHUB-AI-INTELLIGENCE-OS

    [Object]
    كاتب في Ficus Web | تقرير إخباري وقصة قصيرة

    مقالات ذات صلة

    اقتراحات مبنية على أول تصنيف مرتبط بالمقال الحالي

    التعليقات (0)

    لا توجد تعليقات بعد. كن أول من يبدأ النقاش 👇