إنتقل إلى المحتوى الرئيسي

تشغيل نماذج الذكاء الاصطناعي محليًا باستخدام Ollama

متوسط

تعيش النماذج الرائدة في السحابة، لكن هناك فئة كاملة من النماذج المفتوحة الأوزان — Llama وMistral وQwen وDeepSeek وGemma — يمكنك تنزيلها وتشغيلها على حاسوبك المحمول أو خادمك أنت. Ollama هو أبسط طريقة لفعل ذلك: تثبيت واحد، وأمر واحد، ويصبح النموذج قيد التشغيل محليًا. تنقلك هذه الصفحة من الصفر إلى نموذج يعمل، واستدعائه من الشيفرة، ومعرفة المفاضلات كي لا تتوقّع من نموذج محلي بحجم 7B أن يتصرّف كنموذج رائد.

What you'll learn
  • معرفة لماذا قد تشغّل نموذجًا محليًا — والمفاضلات الصادقة مقابل النماذج الرائدة في السحابة
  • تثبيت Ollama وتشغيل أول نموذج لك في أمرين
  • استخدام أوامر واجهة سطر الأوامر الأساسية: pull وrun وlist وps وrm وstop
  • استدعاء نموذجك المحلي من الشيفرة عبر واجهة Ollama المتوافقة مع OpenAI
  • فهم احتياجات الذاكرة العشوائية وأحجام النماذج والتكميم — كي تختار نموذجًا يستطيع جهازك تشغيله فعلًا
  • معرفة متى يكون LM Studio (واجهة رسومية) نقطة البداية الأفضل

لماذا تشغّل نموذجًا محليًا (ومتى لا تفعل)

تشغيل نموذج على عتادك أنت يمنحك أربعة أشياء:

  • الخصوصية — لا تغادر أوامرك وبياناتك جهازك أبدًا. هذا هو السبب في لجوء الفرق العاملة في المجالات المنظَّمة أو الحساسة إلى النماذج المحلية. (راجع مفترق الخصوصية/الاستضافة الذاتية في اختيار نموذج.)
  • العمل بلا اتصال — لا إنترنت، ولا واجهة برمجية، ولا اعتماد على انقطاع الخدمة. النموذج ملف على قرصك.
  • التكلفة — لا فاتورة لكل توكِن. بمجرد تنزيله، يكون تشغيله "مجانيًا" (تدفع في الكهرباء والعتاد، لا في إنفاق الواجهة البرمجية). إن كان إنفاق التوكِنات هو قيدك على نطاق واسع، فقد يفوز المحلي.
  • التحكّم — ثبّت إصدارًا بعينه، وخصّص السلوك، وادمج دون حدود معدّل أو مفاجآت في شروط الخدمة.

المفاضلات الصادقة:

  • فجوة القدرة. النموذج الذي يمكنك تشغيله على حاسوب محمول (من 1B إلى 14B معامل) ليس في نفس مصاف النموذج الرائد في السحابة في مهام الاستدلال الصعبة أو السياق الطويل أو المهام الوكيلية. في كثير من المهام اليومية تكون الفجوة صغيرة؛ أما في أصعبها فتكون كبيرة.
  • العتاد. تحتاج النماذج الأكبر والأقدر إلى ذاكرة عشوائية/ذاكرة رسومية أكثر مما يمتلكه جهاز نموذجي. غالبًا ما تختار أكبر نموذج يستطيع عتادك تشغيله، لا أفضل نموذج موجود.
  • أنت من يشغّله. لا توسيع مُدار، ولا ترقيات تلقائية — هذا ثمن التحكّم.

نمط شائع ومتين: جرّب واختر بتقييم صغير (بنفس أسلوب النماذج السحابية — راجع اختيار نموذج)، واستخدم المحلي للعمل الخاص/غير المتصل/الرخيص على نطاق واسع، والجأ إلى واجهة برمجية رائدة حين تحتاج المهمة فعلًا إلى القدرة الإضافية.

تثبيت Ollama وتشغيل أول نموذج

Guided walkthrough1 of 4
  1. على macOS وWindows: نزّل المثبّت من ollama.com/download وشغّله. على Linux: استخدم سكربت التثبيت الرسمي (أدناه). يثبّت هذا أمر ollama وخدمة خلفية محلية.

تثبيت Linux (يستخدم macOS/Windows المثبّت المُنزَّل بدلًا من ذلك):

curl -fsSL https://ollama.com/install.sh | sh

اسحب وشغّل نموذجًا صغيرًا (خيار أول جيد)

ollama run llama3.2

هذا الأمر الواحد ينزّل llama3.2 (نموذج صغير من فئة 1B/3B يعمل على عتاد متواضع) ويبدأ محادثة تفاعلية معًا. للتنزيل دون محادثة بعد، استخدم ollama pull بدلًا من ذلك.

أوامر واجهة سطر الأوامر الأساسية

حفنة من الأوامر تغطي كل شيء تقريبًا. شغّل ollama --help للقائمة الكاملة.

# Download a model without starting a chat
ollama pull qwen3

# Start an interactive chat (downloads first if needed)
ollama run qwen3

# One-shot: pass the prompt inline, get the answer, exit
ollama run qwen3 "Summarize the CAP theorem in two sentences."

# List models you've downloaded
ollama list

# Show models currently loaded in memory
ollama ps

# Stop a running/loaded model (frees memory)
ollama stop qwen3

# Delete a downloaded model to reclaim disk
ollama rm qwen3

داخل جلسة ollama run التفاعلية، اكتب /bye للخروج و/? لرؤية أوامر الجلسة. الخدمة الخلفية التي تخدم النماذج فعلًا يبدؤها ollama serve (يبدؤها تطبيق سطح المكتب تلقائيًا نيابةً عنك).

استدعاؤها من الشيفرة (واجهة برمجية متوافقة مع OpenAI)

هذا هو الجزء الذي يجعل النماذج المحلية مفيدة حقًا في التطبيقات. تعرض خدمة Ollama الخلفية واجهة HTTP محلية على http://localhost:11434، على المنفذ الافتراضي 11434. لها نقاط نهاية أصلية خاصة بها (/api/generate و/api/chat) وطبقة متوافقة مع OpenAI على /v1 — لذا تعمل معظم الشيفرات المكتوبة لأجل OpenAI SDK مع نموذجك المحلي بتغيير سطرين.

HTTP خام باستخدام curl (نقطة النهاية الأصلية):

curl http://localhost:11434/api/chat -d '{
"model": "llama3.2",
"messages": [
{ "role": "user", "content": "Why is the sky blue?" }
],
"stream": false
}'

من Python باستخدام OpenAI SDK الرسمي — فقط وجّه base_url إلى Ollama ومرّر أي api_key غير فارغ (يتطلّب Ollama هذا الحقل لكنه يتجاهل قيمته):

from openai import OpenAI

client = OpenAI(
base_url="http://localhost:11434/v1",
api_key="ollama", # required by the SDK, ignored by Ollama
)

response = client.chat.completions.create(
model="llama3.2",
messages=[
{"role": "system", "content": "You are a concise assistant."},
{"role": "user", "content": "Explain gradient descent in two sentences."},
],
)

print(response.choices[0].message.content)

لأنها متوافقة مع OpenAI، تنتقل معك نفس الأنماط التي تستخدمها مع واجهة مستضافة — بما في ذلك البثّ واستخدام الأدوات / استدعاء الدوال، اللذان يعملان محليًا بنفس طريقة عملهما في السحابة (بشرط أن يكون النموذج بارعًا فيها فعلًا). تغطي طبقة /v1 في Ollama نقاط /v1/chat/completions و/v1/completions و/v1/models و/v1/embeddings، من بين غيرها.

العتاد وأحجام النماذج والتكميم

الرقم الذي ستراه ملحقًا بنموذج — 1B أو 7B أو 8B أو 70B — هو عدد معاملاته (بالمليارات). عدد المعاملات الأكبر يعني عمومًا قدرة أعلى وجوعًا أكبر للذاكرة. الحدّ العملي لما يمكنك تشغيله هو الذاكرة العشوائية (وعلى وحدة معالجة رسومية، الذاكرة الرسومية).

التكميم هو الحيلة الأساسية التي تجعل هذا ممكنًا على الأجهزة العادية. تُخزَّن أوزان النموذج في الأصل بدقة عالية (مثلًا 16-بت)، لكن يمكن ضغطها إلى نحو 4-بت بتكلفة جودة صغيرة، غالبًا لا تكاد تُلحَظ. يشحن Ollama معظم النماذج مكمّمة افتراضيًا — لهذا يمكن لنموذج بمليارات المعاملات أن يتّسع في بضعة غيغابايت. قاعدة تقريبية (تحقّق منها مقابل صفحة النموذج المحدّد):

  • نماذج ~1B–3B: تعمل بأريحية على معظم الحواسيب المحمولة الحديثة (بضعة غيغابايت من الذاكرة العشوائية).
  • نماذج ~7B–8B: النقطة المثلى للقدرة القابلة للتشغيل؛ خصّص عدة غيغابايت من الذاكرة العشوائية الحرة.
  • نماذج ~13B–14B: تحتاج جهازًا بمواصفات جيدة نسبيًا.
  • نماذج ~70B+: تحتاج محطة عمل/خادمًا بذاكرة عشوائية كبيرة أو وحدة معالجة رسومية قوية — ليست من نطاق الحاسوب المحمول المعتاد.

وصفة عملية: ابدأ بنموذج صغير (llama3.2)، وأكّد سير العمل من طرف إلى طرف، ثم كبّر الحجم إلى أكبر نموذج لا يزال يعمل بسلاسة على عتادك — لا أكبر نموذج موجود.

مفردات النماذج المحلية
اضغط Enter أو مفتاح المسافة لقلب البطاقة. استخدم مفتاحي السهمين الأيسر والأيمن للتنقل بين البطاقات.تم إظهار المصطلح.
1 / 6

LM Studio: بديل بواجهة رسومية

إن لم يكن سطر الأوامر من طبعك، فإن LM Studio تطبيق سطح مكتب (macOS وWindows وLinux) يؤدّي نفس المهمة عبر واجهة رسومية: تصفّح النماذج المفتوحة ونزّلها، وحاورها في واجهة مدمجة، و — مثل Ollama — شغّل خادمًا محليًا متوافقًا مع OpenAI كي تستطيع شيفرتك التحدّث إليه. إنه المدخل الأسهل لغير المطوّرين أو لأي شخص يفضّل الإشارة والنقر على الطرفية؛ ويميل Ollama إلى التفوّق حين تريد واجهة سطر أوامر قابلة للسكربتة وخدمة خلفية خفيفة. كلاهما يشغّل نفس أنواع النماذج المفتوحة الأوزان، فتنتقل مفاهيم هذه الصفحة مباشرةً.

اختبر نفسك

0/4
  1. ما أكبر مفاضلة صادقة منفردة لتشغيل نموذج محليًا مقابل نموذج رائد في السحابة؟
  2. أيّ أمر ينزّل نموذجًا (عند الحاجة) ويبدأ محادثته معًا؟
  3. لاستدعاء نموذجك المحلي من شيفرة OpenAI-SDK، ماذا تضبط؟
  4. لماذا يمكن لنموذج بمليارات المعاملات أن يتّسع في بضعة غيغابايت فقط من الذاكرة العشوائية؟
Key takeaways
  • المحلي = خصوصية + عمل بلا اتصال + بلا تكلفة لكل توكِن + تحكّم؛ والمفاضلة فجوة قدرة حقيقية وحدود عتاد.
  • أمران يشغّلانك: ثبّت Ollama، ثم ollama run llama3.2.
  • أوامر واجهة سطر الأوامر الأساسية: pull (تنزيل) وrun (محادثة) وlist وps وstop وrm — هذه معظمها.
  • استدعها من الشيفرة عبر نقطة النهاية المتوافقة مع OpenAI: base_url http://localhost:11434/v1، وأي api_key غير فارغ.
  • عدد المعاملات + التكميم يقرّران ما إذا كان جهازك يستطيع تشغيل نموذج — ابدأ صغيرًا، وكبّر إلى ما يعمل بسلاسة.
  • تفضّل واجهة رسومية؟ يؤدّي LM Studio نفس المهمة بالإشارة والنقر ويعرض أيضًا خادمًا محليًا متوافقًا مع OpenAI.

المصادر والقراءة الإضافية

التالي