كيف يمكنني ترقية Ollama؟
يقوم Ollama على أنظمة macOS و Windows بتنزيل التحديثات تلقائيًا. انقر على عنصر شريط المهام أو شريط القوائم، ثم انقر على "إعادة التشغيل لتطبيق التحديث" لتطبيق التحديث. يمكن أيضًا تثبيت التحديثات عن طريق تنزيل الإصدار الأخير يدويًا.
على أنظمة Linux، أعد تشغيل نص التثبيت:
shell
curl -fsSL https://ollama.com/install.sh | shكيف يمكنني عرض السجلات؟
راجع وثائق استكشاف الأخطاء وإصلاحها لمزيد من المعلومات حول استخدام السجلات.
هل GPU الخاصة بي متوافقة مع Ollama؟
يرجى الرجوع إلى وثائق GPU.
كيف يمكنني تحديد حجم نافذة السياق؟
بشكل افتراضي، يستخدم Ollama حجم نافذة سياق يبلغ 4096 رمزًا (token).
يمكن تجاوز هذا الإعداد باستخدام متغير البيئة OLLAMA_CONTEXT_LENGTH. على سبيل المثال، لتعيين نافذة السياق الافتراضية إلى 8 كيلو رمز، استخدم:
shell
OLLAMA_CONTEXT_LENGTH=8192 ollama serveلتغيير هذا الإعداد عند استخدام ollama run، استخدم الأمر /set parameter:
shell
/set parameter num_ctx 4096عند استخدام واجهة برمجة التطبيقات (API)، حدد المعامل num_ctx:
shell
curl http://localhost:11434/api/generate -d '{
"model": "llama3.2",
"prompt": "Why is the sky blue?",
"options": {
"num_ctx": 4096
}
}'كيف يمكنني معرفة ما إذا تم تحميل النموذج الخاص بي على GPU؟
استخدم الأمر ollama ps لمعرفة النماذج المحملة حاليًا في الذاكرة.
shell
ollama psINFO
المخرجات:
NAME ID SIZE PROCESSOR UNTIL
llama3:70b bcfb190ca3a7 42 GB 100% GPU 4 minutes from nowتُظهر عمود Processor الذاكرة التي تم تحميل النموذج إليها:
- يعني
100% GPUأن النموذج تم تحميله بالكامل على GPU - يعني
100% CPUأن النموذج تم تحميله بالكامل في ذاكرة النظام - يعني
48%/52% CPU/GPUأن النموذج تم تحميله جزئيًا على كل من GPU وذاكرة النظام
كيف أقوم بتكوين خادم Ollama؟
يمكن تكوين خادم Ollama باستخدام متغيرات البيئة.
تعيين متغيرات البيئة على نظام ماك
إذا كان Ollama يعمل كتطبيق لنظام macOS، فيجب تعيين متغيرات البيئة باستخدام launchctl:
لكل متغير بيئة، استدعي الأمر
launchctl setenv.bashlaunchctl setenv OLLAMA_HOST "0.0.0.0:11434"أعد تشغيل تطبيق Ollama.
تعيين متغيرات البيئة على نظام لينكس
إذا كان Ollama يعمل كخدمة systemd، فيجب تعيين متغيرات البيئة باستخدام systemctl:
قم بتحرير خدمة systemd باستدعاء الأمر
systemctl edit ollama.service. سيؤدي هذا إلى فتح محرر نصوص.لكل متغير بيئة، أضف سطر
Environmentتحت قسم[Service]:ini[Service] Environment="OLLAMA_HOST=0.0.0.0:11434"احفظ التغييرات واخرج من المحرر.
أعد تحميل
systemdثم أعد تشغيل Ollama:shellsystemctl daemon-reload systemctl restart ollama
تعيين متغيرات البيئة على نظام ويندوز
على نظام ويندوز، يرث Ollama متغيرات البيئة الخاصة بالمستخدم والنظام.
أولاً، أغلق Ollama بالنقر عليه في شريط المهام.
افتح تطبيق الإعدادات (لنظام ويندوز 11) أو لوحة التحكم (لنظام ويندوز 10) وابحث عن متغيرات البيئة.
انقر على تحرير متغيرات البيئة لحسابك.
قم بتحرير أو إنشاء متغير جديد لحسابك الخاص بـ
OLLAMA_HOSTوOLLAMA_MODELSوغيرها.انقر على موافق/تطبيق لحفظ التغييرات.
ابدأ تشغيل تطبيق Ollama من قائمة ابدأ في ويندوز.
كيف يمكنني استخدام Ollama خلف خادم بروكسي (proxy)؟
يقوم Ollama بجلب النماذج من الإنترنت وقد يتطلب خادم بروكسي للوصول إلى هذه النماذج. استخدم متغير HTTPS_PROXY لإعادة توجيه الطلبات الصادرة عبر البروكسي. تأكد من تثبيت شهادة البروكسي كشهادة نظام. راجع القسم أعلاه لمعرفة كيفية استخدام متغيرات البيئة على منصتك.
ملاحظة
تجنب تعيين متغير HTTP_PROXY. لا يستخدم Ollama بروتوكول HTTP لجلب النماذج، بل يستخدم فقط HTTPS. قد يؤدي تعيين HTTP_PROXY إلى قطع اتصالات العملاء بالخادم.
كيف يمكنني استخدام Ollama خلف بروكسي في Docker؟
يمكن تكوين صورة حاوية Docker الخاصة بـ Ollama لاستخدام بروكسي عن طريق تمرير المعامل -e HTTPS_PROXY=https://proxy.example.com عند بدء تشغيل الحاوية.
بدلاً من ذلك، يمكن تكوين برنامج Docker daemon لاستخدام بروكسي. تتوفر التعليمات لـ Docker Desktop على أنظمة macOS و ويندوز و لينكس، وبرنامج Docker daemon مع systemd.
تأكد من تثبيت الشهادة كشهادة نظام عند استخدام HTTPS. قد يتطلب هذا إنشاء صورة Docker جديدة عند استخدام شهادة موقعة ذاتيًا.
dockerfile
FROM ollama/ollama
COPY my-ca.pem /usr/local/share/ca-certificates/my-ca.crt
RUN update-ca-certificatesقم ببناء وتشغيل هذه الصورة:
shell
docker build -t ollama-with-ca .
docker run -d -e HTTPS_PROXY=https://my.proxy.example.com -p 11434:11434 ollama-with-caهل يرسل Ollama مطالباتي وإجاباتي مرة أخرى إلى موقع ollama.com؟
يعمل Ollama محليًا. نحن لا نرى مطالباتك أو بياناتك عند تشغيله محليًا. عند استخدام النماذج المستضافة على السحابة، نقوم بمعالجة مطالباتك واستجاباتك لتقديم الخدمة، لكننا لا نخزن أو نسجل هذا المحتوى ولا نستخدمه أبدًا للتدريب. نجمع معلومات الحساب الأساسية وبيانات استخدام محدودة لتقديم الخدمة، ولا تتضمن هذه البيانات محتوى المطالبات أو الاستجابات. نحن لا نبيع بياناتك. يمكنك حذف حسابك في أي وقت.
كيف يمكنني تعطيل ميزات السحابة الخاصة بـ Ollama؟
يمكن تشغيل Ollama في الوضع المحلي فقط عن طريق تعطيل ميزات السحابة الخاصة به. عند إيقاف تشغيل ميزات السحابة، ستفقد القدرة على استخدام نماذج السحابة الخاصة بـ Ollama وخدمة البحث على الويب.
قم بتعيين المعامل disable_ollama_cloud في الملف ~/.ollama/server.json:
json
{
"disable_ollama_cloud": true
}يمكنك أيضًا تعيين متغير البيئة:
shell
OLLAMA_NO_CLOUD=1أعد تشغيل Ollama بعد تغيير التكوين. بمجرد التعطيل، ستظهر سجلات Ollama الرسالة Ollama cloud disabled: true.
كيف يمكنني جعل Ollama متاحًا على شبكتي؟
يربط Ollama بشكل افتراضي بالمنفذ 11434 على عنوان 127.0.0.1. قم بتغيير عنوان الربط باستخدام متغير البيئة OLLAMA_HOST.
راجع القسم أعلاه لمعرفة كيفية تعيين متغيرات البيئة على منصتك.
كيف يمكنني استخدام Ollama مع خادم بروكسي؟
يعمل Ollama كخادم HTTP ويمكن جعله متاحًا باستخدام خادم بروكسي مثل Nginx. للقيام بذلك، قم بتكوين البروكسي لتحويل الطلبات، واختياريًا تعيين الرؤوس المطلوبة (إذا لم تكن تجعل Ollama متاحًا على الشبكة). على سبيل المثال، مع Nginx:
nginx
server {
listen 80;
server_name example.com; # Replace with your domain or IP
location / {
proxy_pass http://localhost:11434;
proxy_set_header Host localhost:11434;
}
}كيف يمكنني استخدام Ollama مع ngrok؟
يمكن الوصول إلى Ollama باستخدام مجموعة من تطبيقات النفق. على سبيل المثال مع Ngrok:
shell
ngrok http 11434 --host-header="localhost:11434"كيف يمكنني استخدام Ollama مع نفق Cloudflare؟
لاستخدام Ollama مع نفق Cloudflare، استخدم العلامات --url و --http-host-header:
shell
cloudflared tunnel --url http://localhost:11434 --http-host-header="localhost:11434"كيف يمكنني السماح لأصول ويب إضافية بالوصول إلى Ollama؟
يسمح Ollama بشكل افتراضي بالطلبات من أصول مختلفة عن 127.0.0.1 و 0.0.0.0. يمكن تكوين أصول إضافية باستخدام متغير OLLAMA_ORIGINS.
لإضافات المتصفح، ستحتاج إلى السماح بشكل صريح بنمط أصل الإضافة. قم بتعيين OLLAMA_ORIGINS ليتضمن chrome-extension://* و moz-extension://* و safari-web-extension://* إذا كنت ترغب في السماح لجميع إضافات المتصفح بالوصول، أو إضافات محددة حسب الحاجة:
# Allow all Chrome, Firefox, and Safari extensions
OLLAMA_ORIGINS=chrome-extension://*,moz-extension://*,safari-web-extension://* ollama serveراجع القسم أعلاه لمعرفة كيفية تعيين متغيرات البيئة على منصتك.
أين يتم تخزين النماذج؟
- ماك:
~/.ollama/models - لينكس:
/usr/share/ollama/.ollama/models - ويندوز:
C:\Users\%username%\.ollama\models
كيف يمكنني تغيير موقع تخزينها إلى مكان آخر؟
إذا كنت بحاجة إلى استخدام دليل مختلف، قم بتعيين متغير البيئة OLLAMA_MODELS إلى الدليل المختار.
ملاحظة
على نظام لينكس عند استخدام المثبت القياسي، يحتاج المستخدم ollama إلى صلاحيات قراءة وكتابة على الدليل المحدد. لتعيين الدليل للمستخدم ollama، قم بتشغيل الأمر sudo chown -R ollama:ollama <directory>.
راجع القسم أعلاه لمعرفة كيفية تعيين متغيرات البيئة على منصتك.
كيف يمكنني استخدام Ollama في Visual Studio Code؟
تتوفر بالفعل مجموعة كبيرة من الإضافات لـ VS Code بالإضافة إلى محررات أخرى تستخدم Ollama. راجع قائمة الإضافات والملحقات في أسفل ملف README الرئيسي للمستودع.
كيف يمكنني استخدام Ollama مع تسريع GPU في Docker؟
يمكن تكوين حاوية Docker الخاصة بـ Ollama مع تسريع GPU على نظامي لينكس أو ويندوز (مع WSL2). يتطلب هذا الأمر nvidia-container-toolkit. راجع ollama/ollama لمزيد من التفاصيل.
تسريع GPU غير متاح لـ Docker Desktop على نظام ماك بسبب عدم وجود ميزة تمرير GPU وتحاكيتها.
لماذا يكون الاتصال بالشبكة بطيئًا في WSL2 على ويندوز 10؟
يمكن أن يؤثر هذا على كل من تثبيت Ollama وتنزيل النماذج.
افتح لوحة التحكم > الشبكة والإنترنت > عرض حالة الشبكة والمهام وانقر على تغيير إعدادات المحول في اللوحة اليمنى. ابحث عن محول vEthernet (WSL)، انقر بزر الماوس الأيمن واختر خصائص. انقر على تكوين وافتح علامة التبويب متقدم. ابحث في جميع الخصائص حتى تجد Large Send Offload Version 2 (IPv4) و Large Send Offload Version 2 (IPv6). عطل كلتا هاتين الخاصيتين.
كيف يمكنني تحميل نموذج مسبقًا في Ollama للحصول على أوقات استجابة أسرع؟
إذا كنت تستخدم API، يمكنك تحميل نموذج مسبقًا عن طريق إرسال طلب فارغ إلى خادم Ollama. يعمل هذا مع نقاط نهاية API كلاً من /api/generate و /api/chat.
لتحميل نموذج mistral مسبقًا باستخدام نقطة نهاية التوليد، استخدم:
shell
curl http://localhost:11434/api/generate -d '{"model": "mistral"}'لاستخدام نقطة نهاية إكمال المحادثات، استخدم:
shell
curl http://localhost:11434/api/chat -d '{"model": "mistral"}'لتحميل نموذج مسبقًا باستخدام واجهة سطر الأوامر (CLI)، استخدم الأمر:
shell
ollama run llama3.2 ""كيف يمكنني الاحتفاظ بنموذج محمل في الذاكرة أو إفراغه فورًا؟
بشكل افتراضي، يتم الاحتفاظ بالنماذج في الذاكرة لمدة 5 دقائق قبل إفراغها. يسمح هذا بأوقات استجابة أسرع إذا كنت ترسل العديد من الطلبات إلى نموذج اللغة الكبير (LLM). إذا كنت ترغب في إفراغ نموذج من الذاكرة فورًا، استخدم الأمر ollama stop:
shell
ollama stop llama3.2إذا كنت تستخدم API، استخدم المعامل keep_alive مع نقاط نهاية /api/generate و /api/chat لتعيين المدة التي يبقى فيها النموذج في الذاكرة. يمكن تعيين المعامل keep_alive إلى:
- سلسلة مدة (مثل "10m" أو "24h")
- رقم بالثواني (مثل 3600)
- أي رقم سالب سيحتفظ بالنموذج محملًا في الذاكرة (مثل -1 أو "-1m")
- '0' الذي سيفرغ النموذج فورًا بعد إنشاء استجابة
على سبيل المثال، لتحميل نموذج مسبقًا والاحتفاظ به في الذاكرة، استخدم:
shell
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": -1}'لإفراغ النموذج وتحرير الذاكرة، استخدم:
shell
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": 0}'بدلاً من ذلك، يمكنك تغيير المدة التي يتم تحميل جميع النماذج بها في الذاكرة عن طريق تعيين متغير البيئة OLLAMA_KEEP_ALIVE عند بدء تشغيل خادم Ollama. يستخدم متغير OLLAMA_KEEP_ALIVE نفس أنواع المعاملات المذكورة أعلاه لمعامل keep_alive. راجع القسم الذي يشرح كيفية تكوين خادم Ollama لتعيين متغير البيئة بشكل صحيح.
سيقوم معامل API keep_alive مع نقاط نهاية /api/generate و /api/chat بتجاوز إعداد OLLAMA_KEEP_ALIVE.
كيف يمكنني إدارة الحد الأقصى لعدد الطلبات التي يمكن لخادم Ollama وضعها في قائمة الانتظار؟
إذا تم إرسال عدد كبير جدًا من الطلبات إلى الخادم، فسيرد بخطأ 503 يشير إلى أن الخادم محمل بشكل زائد. يمكنك ضبط عدد الطلبات المسموح بوضعها في قائمة الانتظار عن طريق تعيين متغير OLLAMA_MAX_QUEUE.
كيف يتعامل Ollama مع الطلبات المتزامنة؟
يدعم Ollama مستويين من المعالجة المتزامنة. إذا كان نظامك يحتوي على ذاكرة متاحة كافية (ذاكرة نظام عند استخدام استدلال CPU، أو ذاكرة الوصول العشوائي للفيديو (VRAM) لاستدلال GPU)، فيمكن تحميل عدة نماذج في نفس الوقت. بالنسبة لنموذج معين، إذا كانت هناك ذاكرة متاحة كافية عند تحميل النموذج، فسيتم تكوينه للسماح بمعالجة الطلبات المتوازية.
إذا كانت الذاكرة المتاحة غير كافية لتحميل نموذج جديد بينما يتم تحميل نموذج أو أكثر بالفعل، فسيتم وضع جميع الطلبات الجديدة في قائمة الانتظار حتى يمكن تحميل النموذج الجديد. عندما تصبح النماذج السابقة خاملة، سيتم إفراغ نموذج واحد أو أكثر لتوفير مساحة للنموذج الجديد. ستتم معالجة الطلبات في قائمة الانتظار بالترتيب. عند استخدام استدلال GPU، يجب أن تناسب النماذج الجديدة بالكامل في VRAM للسماح بتحميل نماذج متزامنة.
تؤدي معالجة الطلبات المتوازية لنموذج معين إلى زيادة حجم السياق بعدد الطلبات المتوازية. على سبيل المثال، سيؤدي سياق بحجم 2 كيلو رمز مع 4 طلبات متوازية إلى سياق بحجم 8 كيلو رمز وتخصيص ذاكرة إضافي.
يمكن استخدام إعدادات الخادم التالية لضبط كيفية تعامل Ollama مع الطلبات المتزامنة على معظم المنصات:
OLLAMA_MAX_LOADED_MODELS- الحد الأقصى لعدد النماذج التي يمكن تحميلها بشكل متزامن بشرط أن تناسب في الذاكرة المتاحة. القيمة الافتراضية هي 3 ضعف عدد وحدات GPU أو 3 لاستدلال CPU.OLLAMA_NUM_PARALLEL- الحد الأقصى لعدد الطلبات المتوازية التي سيعالجها كل نموذج في نفس الوقت، القيمة الافتراضية 1. سيتوسع حجم الذاكرة العشوائية (RAM) المطلوب بمقدارOLLAMA_NUM_PARALLEL*OLLAMA_CONTEXT_LENGTH.OLLAMA_MAX_QUEUE- الحد الأقصى لعدد الطلبات التي سيقوم Ollama بوضعها في قائمة الانتظار عندما يكون مشغولاً قبل رفض الطلبات الإضافية. القيمة الافتراضية هي 512
ملاحظة: يبلغ الحد الأقصى الافتراضي للنماذج على ويندوز مع وحدات GPU Radeon حاليًا نموذج واحد فقط بسبب قيود في الإصدار 5.7 من ROCm للإبلاغ عن ذاكرة الوصول العشوائي للفيديو (VRAM) المتاحة. بمجرد توفر الإصدار 6.2 من ROCm، سيتبع Radeon على ويندوز الإعدادات الافتراضية المذكورة أعلاه. يمكنك تمكين تحميل النماذج المتزامنة على Radeon في ويندوز، لكن تأكد من عدم تحميل نماذج أكثر مما تناسب في ذاكرة الوصول العشوائي للفيديو (VRAM) الخاصة بوحدة GPU.
كيف يقوم Ollama بتحميل النماذج على وحدات GPU متعددة؟
عند تحميل نموذج جديد، يقيم Ollama ذاكرة الوصول العشوائي للفيديو (VRAM) المطلوبة للنموذج مقارنة بالذاكرة المتاحة حاليًا. إذا كان النموذج يناسب بالكامل على أي وحدة GPU واحدة، فسيقوم Ollama بتحميل النموذج على تلك الوحدة. يوفر هذا عادة أفضل أداء لأنه يقلل من كمية البيانات المنقولة عبر ناقل PCI أثناء الاستدلال. إذا لم يناسب النموذج بالكامل على وحدة GPU واحدة، فسيتم توزيعه على جميع وحدات GPU المتاحة.
كيف يمكنني تفعيل Flash Attention؟
Flash Attention هو ميزة متوفرة في معظم النماذج الحديثة، ويمكنه تقليل استهلاك الذاكرة بشكل كبير مع نمو حجم السياق. يستخدم Ollama Flash Attention تلقائيًا عندما يكون الواجهة الخلفية المحددة والأجهزة تدعمه. لإجبار تفعيل Flash Attention، اضبط المتغير البيئي OLLAMA_FLASH_ATTENTION=1 عند بدء تشغيل خادم Ollama. لتعطيله، اضبط OLLAMA_FLASH_ATTENTION=0.
كيف يمكنني تحديد نوع التكميم لذاكرة التخزين المؤقت K/V؟
يمكن تكميم ذاكرة التخزين المؤقت للسياق K/V لتقليل استهلاك الذاكرة بشكل كبير عند تفعيل Flash Attention.
لاستخدام ذاكرة التخزين المؤقت K/V المكمّمة مع Ollama، يمكنك ضبط المتغير البيئي التالي:
OLLAMA_KV_CACHE_TYPE- نوع التكميم لذاكرة التخزين المؤقت K/V. القيمة الافتراضية هيf16.
ملاحظة
هذا الخيار حاليًا خيار عام - أي أن جميع النماذج ستعمل بنوع التكميم المحدد.
أنواع التكميم المتوفرة حاليًا لذاكرة التخزين المؤقت K/V هي:
f16- دقة عالية واستهلاك ذاكرة مرتفع (افتراضي).q8_0- تكميم 8 بت، يستهلك تقريبًا نصف ذاكرةf16مع فقدان دقة ضئيل جدًا، ولا يؤثر هذا عادةً بشكل ملحوظ على جودة النموذج (موصى به إذا لم تكن تستخدم f16).q4_0- تكميم 4 بت، يستهلك تقريبًا ربع ذاكرةf16مع فقدان دقة صغير إلى متوسط، قد يكون هذا أكثر وضوحًا عند أحجام سياق أعلى.
يعتمد مدى تأثير تكميم الذاكرة المؤقتة على جودة استجابة النموذج على النموذج والمهمة. قد تلاحظ النماذج التي تحتوي على عدد عالي من GQA (مثل Qwen2) تأثيرًا أكبر على الدقة من التكميم مقارنة بالنماذج التي تحتوي على عدد منخفض من GQA.
قد تحتاج إلى تجربة أنواع تكميم مختلفة للعثور على أفضل توازن بين استهلاك الذاكرة والجودة.
أين يمكنني العثور على مفتاحي العام لـ Ollama؟
مفتاحك العام لـ Ollama هو الجزء العام من زوج المفاتيح الذي يسمح لنسخة Ollama المحلية الخاصة بك بالتواصل مع ollama.com.
ستحتاج إليه لـ:
- دفع النماذج إلى Ollama
- سحب النماذج الخاصة من Ollama إلى جهازك
- تشغيل النماذج المستضافة في Ollama Cloud
كيفية إضافة المفتاح
- تسجيل الدخول عبر صفحة الإعدادات في تطبيقي Mac و Windows
- تسجيل الدخول عبر CLI
shell
ollama signin- نسخ ولصق المفتاح يدويًا على صفحة مفاتيح Ollama: https://ollama.com/settings/keys
مكان وجود المفتاح العام لـ Ollama
| نظام التشغيل | المسار إلى id_ed25519.pub |
|---|---|
| macOS | ~/.ollama/id_ed25519.pub |
| Linux | /usr/share/ollama/.ollama/id_ed25519.pub |
| Windows | C:\Users\<username>\.ollama\id_ed25519.pub |
ملاحظة
استبدل <username> باسم مستخدم Windows الفعلي الخاص بك.
كيف يمكنني منع Ollama من البدء عند تسجيل الدخول إلى جهاز الكمبيوتر الخاص بي؟
يسجل Ollama لأنظمة Windows و macOS كعنصر تسجيل دخول أثناء التثبيت. يمكنك تعطيل هذا إذا كنت تفضل عدم بدء Ollama تلقائيًا. ستحترم Ollama هذا الإعداد عبر عمليات الترقية، ما لم تقم بإلغاء تثبيت التطبيق.
Windows
- في
إدارة المهامانتقل إلى علامة التبويبتطبيقات بدء التشغيل، ابحث عنollamaثم انقر علىتعطيل
MacOS
- افتح
الإعداداتوابحث عن "عناصر تسجيل الدخول"، اعثر على إدخالOllamaضمنالسماح في الخلفية، ثم انقر على شريط التمرير لتعطيله.