إنفيديا
يدعم Ollama بطاقات إنفيديا الرسومية (GPUs) ذات قدرة الحوسبة 5.0 فأعلى، وبرامج تشغيل (drivers) إصدار 550 فأحدث. تتطلب بطاقات إنفيديا الرسومية ذات قدرة الحوسبة من 5.0 إلى 6.2 برامج تشغيل إصدار 570 فأحدث.
تحقق من توافق قدرة الحوسبة لبطاقتك لمعرفة ما إذا كانت مدعومة: https://developer.nvidia.com/cuda-gpus
| قدرة الحوسبة | العائلة | البطاقات |
|---|---|---|
| 12.1 | NVIDIA | GB10 (DGX Spark) |
| 12.0 | GeForce RTX 50xx | RTX 5060 RTX 5060 Ti RTX 5070 RTX 5070 Ti RTX 5080 RTX 5090 |
| NVIDIA Professional | RTX PRO 4000 Blackwell RTX PRO 4500 Blackwell RTX PRO 5000 Blackwell RTX PRO 6000 Blackwell | |
| 9.0 | NVIDIA | H200 H100 |
| 8.9 | GeForce RTX 40xx | RTX 4090 RTX 4080 SUPER RTX 4080 RTX 4070 Ti SUPER RTX 4070 Ti RTX 4070 SUPER RTX 4070 RTX 4060 Ti RTX 4060 |
| NVIDIA Professional | L4 L40 RTX 6000 | |
| 8.6 | GeForce RTX 30xx | RTX 3090 Ti RTX 3090 RTX 3080 Ti RTX 3080 RTX 3070 Ti RTX 3070 RTX 3060 Ti RTX 3060 RTX 3050 Ti RTX 3050 |
| NVIDIA Professional | A40 RTX A6000 RTX A5000 RTX A4000 RTX A3000 RTX A2000 A10 A16 A2 | |
| 8.0 | NVIDIA | A100 A30 |
| 7.5 | GeForce GTX/RTX | GTX 1650 Ti TITAN RTX RTX 2080 Ti RTX 2080 RTX 2070 RTX 2060 |
| NVIDIA Professional | T4 RTX 5000 RTX 4000 RTX 3000 T2000 T1200 T1000 T600 T500 | |
| Quadro | RTX 8000 RTX 6000 RTX 5000 RTX 4000 | |
| 7.0 | NVIDIA | TITAN V V100 Quadro GV100 |
| 6.1 | NVIDIA TITAN | TITAN Xp TITAN X |
| GeForce GTX | GTX 1080 Ti GTX 1080 GTX 1070 Ti GTX 1070 GTX 1060 GTX 1050 Ti GTX 1050 | |
| Quadro | P6000 P5200 P4200 P3200 P5000 P4000 P3000 P2200 P2000 P1000 P620 P600 P500 P520 | |
| Tesla | P40 P4 | |
| 6.0 | NVIDIA | Tesla P100 Quadro GP100 |
| 5.2 | GeForce GTX | GTX TITAN X GTX 980 Ti GTX 980 GTX 970 GTX 960 GTX 950 |
| Quadro | M6000 24GB M6000 M5000 M5500M M4000 M2200 M2000 M620 | |
| Tesla | M60 M40 | |
| 5.0 | GeForce GTX | GTX 750 Ti GTX 750 NVS 810 |
| Quadro | K2200 K1200 K620 M1200 M520 M5000M M4000M M3000M M2000M M1000M K620M M600M M500M |
لبناء Ollama محليًا لدعم البطاقات الرسومية القديمة، راجع المطور
اختيار البطاقة الرسومية
إذا كان لديك عدة بطاقات إنفيديا رسومية في نظامك وتريد تقييد استخدام Ollama لفرع منها، يمكنك تعيين متغير البيئة CUDA_VISIBLE_DEVICES إلى قائمة مفصولة بفواصل من معرفات البطاقات الرسومية. يمكن استخدام المعرفات الرقمية، لكن ترتيبها قد يختلف، لذا فإن UUIDs أكثر موثوقية. يمكنك اكتشاف UUID لبطاقاتك الرسومية عن طريق تشغيل الأمر nvidia-smi -L. إذا كنت تريد تجاهل البطاقات الرسومية وإجبار النظام على استخدام CPU، استخدم معرف بطاقة رسومية غير صالح (مثل "-1")
استئناف التشغيل بعد الإيقاف المؤقت في لينكس
في أنظمة لينكس، بعد دورة إيقاف مؤقت/استئناف تشغيل، قد يفشل Ollama أحيانًا في اكتشاف بطاقة إنفيديا الرسومية الخاصة بك، ويتراجع إلى التشغيل على CPU. يمكنك تجاوز هذا العطل في برنامج التشغيل عن طريق إعادة تحميل برنامج تشغيل NVIDIA UVM باستخدام الأمر sudo rmmod nvidia_uvm && sudo modprobe nvidia_uvm
AMD راديون
يدعم Ollama بطاقات AMD الرسومية التالية عبر مكتبة ROCm:
ملاحظة: يتم تقديم دعم إضافي لبطاقات AMD الرسومية عبر مكتبة Vulkan – راجع القسم أدناه.
دعم لينكس
يتطلب Ollama برنامج تشغيل AMD ROCm الإصدار 7 على أنظمة لينكس. يمكنك تثبيته أو ترقيته باستخدام أداة amdgpu-install من توثيق ROCm من AMD.
| العائلة | البطاقات والمعجلات |
|---|---|
| AMD Radeon RX | 9070 XT 9070 GRE 9070 9060 XT 9060 XT LP 9060 7900 XTX 7900 XT 7900 GRE 7800 XT 7700 XT 7700 7600 XT 7600 6950 XT 6900 XTX 6900XT 6800 XT 6800 |
| AMD Radeon AI PRO | R9700 R9600D |
| AMD Radeon PRO | W7900 W7800 W7700 W7600 W7500 W6900X W6800X Duo W6800X W6800 V620 |
| AMD Ryzen AI | Ryzen AI Max+ 395 Ryzen AI Max 390 Ryzen AI Max 385 Ryzen AI 9 HX 475 Ryzen AI 9 HX 470 Ryzen AI 9 465 Ryzen AI 9 HX 375 Ryzen AI 9 HX 370 Ryzen AI 9 365 |
| AMD Instinct | MI350X MI300X MI300A MI250X MI250 MI210 MI100 |
دعم ويندوز
يتطلب Ollama مجموعة برامج تشغيل AMD ROCm الإصدار 7 / المتوافقة مع HIP7 على أنظمة ويندوز.
| العائلة | البطاقات والمعجلات |
|---|---|
| AMD Radeon RX | 7900 XTX 7900 XT 7900 GRE 7800 XT 7700 XT 7600 XT 7600 |
| AMD Radeon PRO | W7900 W7800 W7700 W7600 W7500 |
تجاوزات الإعدادات في لينكس
يعتمد Ollama على مكتبة AMD ROCm، التي لا تدعم جميع بطاقات AMD الرسومية. في بعض الحالات، يمكنك إجبار النظام على محاولة استخدام هدف LLVM مشابه و أقرب ما يكون. على سبيل المثال، بطاقة Radeon RX 5400 تستخدم الهدف gfx1034 (المعروف أيضًا باسم 10.3.4)، لكن ROCm لا تدعم هذا الهدف حاليًا. أقرب دعم متاح هو الهدف gfx1030. يمكنك استخدام متغير البيئة HSA_OVERRIDE_GFX_VERSION مع صيغة x.y.z. لذا، على سبيل المثال، لإجبار النظام على التشغيل على بطاقة RX 5400، يمكنك تعيين HSA_OVERRIDE_GFX_VERSION="10.3.0" كمتغير بيئة للخادم. إذا كان لديك بطاقة AMD رسومية غير مدعومة، يمكنك التجربة باستخدام قائمة الأنواع المدعومة أدناه.
إذا كان لديك عدة بطاقات رسومية بإصدارات GFX مختلفة، أضف الرقم التعريفي الرقمي للجهاز إلى نهاية متغير البيئة لتعيينها بشكل فردي. على سبيل المثال، HSA_OVERRIDE_GFX_VERSION_0=10.3.0 و HSA_OVERRIDE_GFX_VERSION_1=11.0.0
حتى وقتنا الحالي، أنواع البطاقات الرسومية المدعومة المعروفة على لينكس هي أهداف LLVM التالية. توضح هذه الجدول بعض الأمثلة على البطاقات الرسومية التي تتوافق مع أهداف LLVM هذه:
| هدف LLVM | بطاقة رسومية مثال |
|---|---|
| gfx908 | Radeon Instinct MI100 |
| gfx90a | Radeon Instinct MI210/MI250 |
| gfx942 | Radeon Instinct MI300X/MI300A |
| gfx950 | Radeon Instinct MI350X |
| gfx1030 | Radeon PRO V620 |
| gfx1100 | Radeon PRO W7900 |
| gfx1101 | Radeon PRO W7700 |
| gfx1102 | Radeon RX 7600 |
| gfx1150 | Ryzen AI 9 HX 375 |
| gfx1151 | Ryzen AI Max+ 395 |
| gfx1200 | Radeon RX 9070 |
| gfx1201 | Radeon RX 9070 XT |
للحصول على مساعدة إضافية، تواصل معنا على Discord أو أبلغ عن مشكلة.
اختيار البطاقة الرسومية
إذا كان لديك عدة بطاقات AMD رسومية في نظامك وتريد تقييد استخدام Ollama لفرع منها، يمكنك تعيين متغير البيئة ROCR_VISIBLE_DEVICES إلى قائمة مفصولة بفواصل من معرفات البطاقات الرسومية. يمكنك عرض قائمة الأجهزة باستخدام الأمر rocminfo. إذا كنت تريد تجاهل البطاقات الرسومية وإجبار النظام على استخدام CPU، استخدم معرف بطاقة رسومية غير صالح (مثل "-1"). عند التوفر، استخدم Uuid لتحديد الجهاز بشكل فريد بدلاً من القيمة الرقمية.
أذونات الحاويات
في بعض توزيعات لينكس، قد يمنع SELinux الحاويات من الوصول إلى أجهزة البطاقات الرسومية AMD. على النظام المضيف، يمكنك تشغيل الأمر sudo setsebool container_use_devices=1 للسماح للحاويات باستخدام الأجهزة.
ميتال (بطاقات Apple الرسومية)
يدعم Ollama تسريع البطاقات الرسومية على أجهزة Apple عبر واجهة برمجة التطبيقات Metal.
دعم بطاقات Vulkan الرسومية
يتم تقديم دعم إضافي للبطاقات الرسومية على ويندوز ولينكس عبر Vulkan. يتم تفعيل Vulkan افتراضيًا عند تثبيت الواجهة الخلفية. على ويندوز، تأتي برامج تشغيل معظم بائعي البطاقات الرسومية مع دعم مدمج لـ Vulkan ولا تتطلب خطوات إعداد إضافية. تتطلب معظم توزيعات لينكس تثبيت مكونات إضافية، و قد يكون لديك خيارات متعددة لبرامج تشغيل Vulkan بين Mesa وحزم البائعين الخاصة بالبطاقات الرسومية
- تعليمات بطاقات Intel الرسومية على لينكس - https://dgpu-docs.intel.com/driver/client/overview.html
- تعليمات بطاقات AMD الرسومية على لينكس - https://amdgpu-install.readthedocs.io/en/latest/install-script.html#specifying-a-vulkan-implementation
لبطاقات AMD الرسومية على بعض توزيعات لينكس، قد تحتاج إلى إضافة المستخدم ollama إلى مجموعة render.
يستفيد مجدول مهام Ollama من بيانات VRAM المتاحة التي تبلغ عنها مكتبات البطاقات الرسومية لاتخاذ قرارات جدولة مثالية. يتطلب Vulkan قدرات إضافية أو تشغيل كroot لكشف بيانات VRAM المتاحة هذه. إذا لم يتم منح صلاحية الوصول كroot أو هذه القدرات، سيعتمد Ollama على الأحجام التقريبية للنماذج لاتخاذ قرارات جدولة بأفضل جهد ممكن.
bash
sudo setcap cap_perfmon+ep /usr/local/bin/ollamaاختيار البطاقة الرسومية
لتحديد بطاقات Vulkan رسومية معينة، يمكنك تعيين متغير البيئة GGML_VK_VISIBLE_DEVICES إلى معرف أو أكثر من المعرفات الرقمية على خادم Ollama كما هو موضح في الأسئلة الشائعة. إذا واجهت أي مشاكل مع البطاقات الرسومية المعتمدة على Vulkan، يمكنك تعطيل جميع بطاقات Vulkan الرسومية عن طريق تعيين OLLAMA_VULKAN=0 أو GGML_VK_VISIBLE_DEVICES=-1.
على الأنظمة المختلطة iGPU/dGPU حيث تكون بطاقة iGPU المعتمدة على Vulkan غير مستقرة، أبقِ Vulkan مفعلًا وعيّن GGML_VK_VISIBLE_DEVICES إلى فهرس البطاقة الرسومية المنفصلة. على سبيل المثال، استخدم GGML_VK_VISIBLE_DEVICES=1 عندما تكون Vulkan1 هي البطاقة الرسومية المنفصلة.