عن المشروع
يوفر llama.cpp تنفيذاً بسيطاً بلغة C/C++ لاستنتاج النماذج اللغوية الكبيرة (LLM) ونماذج الرؤية واللغة (VLM) دون الحاجة إلى تبعيات خارجية. يعتمد المشروع على مكتبة ggml ويدعم مجموعة واسعة من بنيات الأجهزة، بما في ذلك Apple Silicon (عبر Metal و ARM NEON و Accelerate)، و x86 (AVX و AVX2 و AVX512 و AMX)، و RISC-V.
تشمل القدرات الرئيسية ما يلي:
- التكميم (Quantization): يدعم التكميم الصحيح من 1.5 بت إلى 8 بت لتقليل استخدام الذاكرة وزيادة سرعة الاستنتاج.
- تسريع الأجهزة: نوى CUDA مخصصة لمعالجات NVIDIA GPUs، بالإضافة إلى دعم AMD (HIP)، و Moore Threads (MUSA)، و Vulkan، و SYCL، و OpenCL.
- الاستنتاج الهجين: القدرة على استخدام استنتاج هجين يجمع بين CPU و GPU للنماذج التي تتجاوز سعة VRAM المتاحة.
- الأدوات: يتضمن واجهة سطر أوامر (cli)، وأداة إكمال، وخادم REST API متوافق مع OpenAI مع واجهة مستخدم ويب مدمجة.
- دعم واسع للخلفيات البرمجية: متوافق مع BLAS و BLIS و CANN و Metal و WebGPU والعديد من الخلفيات البرمجية الأخرى الخاصة بالأجهزة.