يدمج OpenClaw مع واجهة Ollama الأصلية (Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
/api/chat) لنماذج السحابة المستضافة وخوادم Ollama المحلية/ذاتية الاستضافة. يمكنك استخدام Ollama بثلاثة أوضاع: Cloud + Local عبر مضيف Ollama قابل للوصول، أو Cloud only عبر https://ollama.com، أو Local only عبر مضيف Ollama قابل للوصول.
يستخدم إعداد موفر Ollama المفتاح baseUrl كمفتاح أساسي. يقبل OpenClaw أيضاً baseURL للتوافق مع أمثلة أسلوب OpenAI SDK، لكن يجب أن تفضل الإعدادات الجديدة baseUrl.
قواعد المصادقة
المضيفون المحليون ومضيفو LAN
المضيفون المحليون ومضيفو LAN
ollama-local المحلي فقط لعناوين URL الأساسية الخاصة بـ Ollama التي تستخدم local loopback والشبكة الخاصة و.local وأسماء المضيف العارية.المضيفون البعيدون ومضيفو Ollama Cloud
المضيفون البعيدون ومضيفو Ollama Cloud
https://ollama.com) اعتماداً حقيقياً عبر OLLAMA_API_KEY أو ملف تعريف مصادقة أو apiKey الخاص بالموفر.معرّفات الموفر المخصصة
معرّفات الموفر المخصصة
api: "ollama" القواعد نفسها. على سبيل المثال، يمكن لموفر ollama-remote يشير إلى مضيف Ollama خاص على LAN أن يستخدم apiKey: "ollama-local"، وستحل الوكلاء الفرعية ذلك الوسم عبر خطاف موفر Ollama بدلاً من معاملته كاعتماد مفقود. يمكن لبحث الذاكرة أيضاً ضبط agents.defaults.memorySearch.provider على معرّف الموفر المخصص هذا لكي تستخدم التضمينات نقطة نهاية Ollama المطابقة.ملفات تعريف المصادقة
ملفات تعريف المصادقة
auth-profiles.json الاعتماد لمعرّف موفر. ضع إعدادات نقطة النهاية (baseUrl وapi ومعرّفات النماذج والرؤوس والمهلات) في models.providers.<id>. ملفات تعريف المصادقة المسطحة الأقدم مثل { "ollama-windows": { "apiKey": "ollama-local" } } ليست صيغة تشغيل؛ شغّل openclaw doctor --fix لإعادة كتابتها إلى ملف تعريف مفتاح API الأساسي ollama-windows:default مع نسخة احتياطية. وجود baseUrl في ذلك الملف ضجيج توافق ويجب نقله إلى إعداد الموفر.نطاق تضمين الذاكرة
نطاق تضمين الذاكرة
- يُرسل مفتاح مستوى الموفر فقط إلى مضيف Ollama الخاص بذلك الموفر.
- يُرسل
agents.*.memorySearch.remote.apiKeyفقط إلى مضيف التضمين البعيد الخاص به. - تُعامل قيمة البيئة
OLLAMA_API_KEYالخالصة كاصطلاح Ollama Cloud، ولا تُرسل افتراضياً إلى المضيفات المحلية أو ذاتية الاستضافة.
بدء الاستخدام
اختر طريقة الإعداد والوضع المفضلين لديك.- الإعداد الأولي (موصى به)
- الإعداد اليدوي
اختيار وضعك
- Cloud + Local — مضيف Ollama محلي إضافة إلى نماذج سحابية تُمرر عبر ذلك المضيف
- Cloud only — نماذج Ollama مستضافة عبر
https://ollama.com - Local only — نماذج محلية فقط
اختيار نموذج
Cloud only قيمة OLLAMA_API_KEY ويقترح افتراضيات سحابية مستضافة. يطلب Cloud + Local وLocal only عنوان URL أساسياً لـ Ollama، ويكتشفان النماذج المتاحة، ويسحبان تلقائياً النموذج المحلي المحدد إذا لم يكن متاحاً بعد. عندما يبلغ Ollama عن وسم :latest مثبت مثل gemma4:latest، يعرض الإعداد ذلك النموذج المثبت مرة واحدة بدلاً من عرض كل من gemma4 وgemma4:latest أو سحب الاسم المستعار العاري مرة أخرى. يتحقق Cloud + Local أيضاً مما إذا كان مضيف Ollama هذا مسجلاً دخوله للوصول السحابي.الوضع غير التفاعلي
نماذج السحابة
- Cloud + Local
- Cloud only
- Local only
Cloud + Local مضيف Ollama قابل للوصول كنقطة تحكم لكل من النماذج المحلية والسحابية. هذا هو التدفق الهجين المفضل لدى Ollama.استخدم Cloud + Local أثناء الإعداد. يطلب OpenClaw عنوان URL الأساسي لـ Ollama، ويكتشف النماذج المحلية من ذلك المضيف، ويتحقق مما إذا كان المضيف مسجلاً دخوله للوصول السحابي باستخدام ollama signin. عندما يكون المضيف مسجلاً الدخول، يقترح OpenClaw أيضاً افتراضيات سحابية مستضافة مثل kimi-k2.5:cloud وminimax-m2.7:cloud وglm-5.1:cloud.إذا لم يكن المضيف مسجلاً الدخول بعد، يبقي OpenClaw الإعداد محلياً فقط إلى أن تشغّل ollama signin.اكتشاف النماذج (موفر ضمني)
عندما تضبطOLLAMA_API_KEY (أو ملف تعريف مصادقة) ولا تعرّف models.providers.ollama أو موفراً بعيداً مخصصاً آخر مع api: "ollama"، يكتشف OpenClaw النماذج من نسخة Ollama المحلية على http://127.0.0.1:11434.
| السلوك | التفاصيل |
|---|---|
| استعلام الكتالوج | يستعلم /api/tags |
| اكتشاف القدرات | يستخدم عمليات بحث /api/show بأفضل جهد لقراءة contextWindow، ومعلمات num_ctx الموسعة في Modelfile، والقدرات بما فيها الرؤية/الأدوات |
| نماذج الرؤية | النماذج التي تبلغ /api/show عن قدرة vision لها تُوسم بأنها قادرة على الصور (input: ["text", "image"])، لذلك يحقن OpenClaw الصور تلقائياً في الموجه |
| اكتشاف الاستدلال | يستخدم قدرات /api/show عند توفرها، بما في ذلك thinking؛ ويعود إلى استدلال من اسم النموذج (r1 وreasoning وthink) عندما يحذف Ollama القدرات |
| حدود الرموز | يضبط maxTokens على سقف الحد الأقصى الافتراضي للرموز في Ollama الذي يستخدمه OpenClaw |
| التكاليف | يضبط كل التكاليف على 0 |
ollama/<pulled-model>:latest في infer model run المحلي؛ يحل OpenClaw ذلك النموذج المثبت من كتالوج Ollama المباشر دون الحاجة إلى إدخال models.json مكتوب يدوياً.
بالنسبة إلى مضيفات Ollama المسجلة الدخول، قد تكون بعض نماذج :cloud قابلة للاستخدام عبر /api/chat
و/api/show قبل أن تظهر في /api/tags. عندما تحدد صراحة مرجعاً
كاملاً ollama/<model>:cloud، يتحقق OpenClaw من ذلك النموذج المفقود بعينه عبر
/api/show ويضيفه إلى كتالوج التشغيل فقط إذا أكد Ollama بيانات النموذج
الوصفية. لا تزال الأخطاء المطبعية تفشل كنماذج غير معروفة بدلاً من إنشائها تلقائياً.
infer model run المحلي مع مرجع نموذج Ollama كامل:
infer model run. يرسل هذا الموجه والصورة مباشرة إلى
نموذج رؤية Ollama المحدد دون تحميل أدوات الدردشة أو الذاكرة أو سياق
جلسة سابق:
model run --file الملفات المكتشفة كـ image/*، بما في ذلك مدخلات PNG
وJPEG وWebP الشائعة. تُرفض الملفات غير الصورية قبل استدعاء Ollama.
للتعرف على الكلام، استخدم openclaw infer audio transcribe بدلاً من ذلك.
عندما تبدّل محادثة باستخدام /model ollama/<model>، يتعامل OpenClaw مع
ذلك كتحديد مستخدم دقيق. إذا كان baseUrl المضبوط لـ Ollama
غير قابل للوصول، يفشل الرد التالي بخطأ الموفر بدلاً من الرد بصمت
من نموذج احتياطي مضبوط آخر.
مهام Cron المعزولة تنفذ فحص أمان محليًا إضافيًا قبل أن تبدأ
دورة الوكيل. إذا كان النموذج المحدد يُحل إلى موفر Ollama محلي أو على شبكة خاصة أو .local
وكان /api/tags غير قابل للوصول، يسجل OpenClaw تشغيل Cron ذلك
كـ skipped مع ollama/<model> المحدد في نص الخطأ. يتم تخزين فحص
نقطة النهاية المسبق مؤقتًا لمدة 5 دقائق، لذلك لا تطلق عدة مهام Cron موجهة إلى نفس
خادم Ollama المتوقف طلبات نماذج فاشلة كلها.
تحقق حيًا من مسار النص المحلي، ومسار البث الأصلي، والتضمينات مقابل
Ollama المحلي باستخدام:
models.providers.ollama صراحةً، أو كوّنت موفرًا بعيدًا مخصصًا مثل models.providers.ollama-cloud مع api: "ollama"، يتم تخطي الاكتشاف التلقائي ويجب عليك تعريف النماذج يدويًا. لا يزال يتم التعامل مع الموفرين المخصصين عبر loopback مثل http://127.0.0.2:11434 كموفرين محليين. راجع قسم التكوين الصريح أدناه.الرؤية ووصف الصور
يسجل Plugin Ollama المضمن Ollama كموفر قادر على الصور لفهم الوسائط. يتيح هذا لـ OpenClaw توجيه طلبات وصف الصور الصريحة وافتراضيات نماذج الصور المكوّنة عبر نماذج رؤية Ollama المحلية أو المستضافة. للرؤية المحلية، اسحب نموذجًا يدعم الصور:--model مرجعًا كاملًا بصيغة <provider/model>. عند تعيينه، يشغّل openclaw infer image describe ذلك النموذج مباشرة بدلًا من تخطي الوصف لأن النموذج يدعم الرؤية الأصلية.
استخدم infer image describe عندما تريد تدفق موفر فهم الصور في OpenClaw، وagents.defaults.imageModel المكوّن، وشكل مخرجات وصف الصور. استخدم infer model run --file عندما تريد فحصًا خامًا لنموذج متعدد الوسائط مع مطالبة مخصصة وصورة واحدة أو أكثر.
لجعل Ollama نموذج فهم الصور الافتراضي للوسائط الواردة، كوّن agents.defaults.imageModel:
ollama/<model>. إذا كان النموذج نفسه مدرجًا ضمن models.providers.ollama.models مع input: ["text", "image"] ولا يكشف أي موفر صور مكوّن آخر معرّف النموذج المجرد نفسه، يقوم OpenClaw أيضًا بتطبيع مرجع imageModel مجرد مثل qwen2.5vl:7b إلى ollama/qwen2.5vl:7b. إذا كان لدى أكثر من موفر صور مكوّن المعرّف المجرد نفسه، فاستخدم بادئة الموفر صراحةً.
قد تحتاج نماذج الرؤية المحلية البطيئة إلى مهلة أطول لفهم الصور من نماذج السحابة. كما يمكن أن تتعطل أو تتوقف عندما يحاول Ollama تخصيص سياق الرؤية الكامل المعلن عنه على عتاد محدود. عيّن مهلة للقدرة، وحدد سقفًا لـ num_ctx في إدخال النموذج عندما لا تحتاج إلا إلى دورة وصف صورة عادية:
image الصريحة التي يستطيع الوكيل استدعاءها أثناء دورة. لا يزال models.providers.ollama.timeoutSeconds على مستوى الموفر يتحكم في حارس طلب HTTP الأساسي إلى Ollama لاستدعاءات النموذج العادية.
تحقق حيًا من أداة الصور الصريحة مقابل Ollama المحلي باستخدام:
models.providers.ollama.models يدويًا، فميّز نماذج الرؤية بدعم إدخال الصور:
/api/show عن قدرة رؤية.
التكوين
- أساسي (اكتشاف ضمني)
- صريح (نماذج يدوية)
- عنوان URL أساسي مخصص
وصفات شائعة
استخدم هذه كنقاط بداية واستبدل معرفات النماذج بالأسماء الدقيقة منollama list أو openclaw models list --provider ollama.
نموذج محلي مع اكتشاف تلقائي
نموذج محلي مع اكتشاف تلقائي
models.providers.ollama إلا إذا كنت تريد تعريف النماذج يدويًا.مضيف Ollama على LAN مع نماذج يدوية
مضيف Ollama على LAN مع نماذج يدوية
/v1.contextWindow هي ميزانية السياق من جانب OpenClaw. يتم إرسال params.num_ctx إلى Ollama للطلب. أبقهما متوافقين عندما لا يستطيع عتادك تشغيل السياق الكامل المعلن عنه للنموذج.Ollama Cloud فقط
Ollama Cloud فقط
السحابة إضافة إلى المحلي عبر خادم مسجّل الدخول
السحابة إضافة إلى المحلي عبر خادم مسجّل الدخول
ollama signin ويجب أن يخدم النماذج المحلية ونماذج :cloud معًا.عدة مضيفين لـ Ollama
عدة مضيفين لـ Ollama
ollama-large/qwen3.5:27b إلى Ollama كـ qwen3.5:27b.ملف تعريف نموذج محلي خفيف
ملف تعريف نموذج محلي خفيف
compat.supportsTools: false فقط عندما يفشل النموذج أو الخادم بشكل موثوق مع مخططات الأدوات. هذا يستبدل جزءًا من قدرة الوكيل بمزيد من الاستقرار.
يزيل localModelLean المتصفح وCron وأدوات الرسائل من سطح الوكيل، لكنه لا يغيّر سياق تشغيل Ollama أو وضع التفكير. اقرنه بـ params.num_ctx صريح وparams.thinking: false لنماذج التفكير الصغيرة بأسلوب Qwen التي تدخل في حلقات أو تستهلك ميزانية الاستجابة في الاستدلال المخفي.اختيار النموذج
بعد الإعداد، تصبح كل نماذج Ollama لديك متاحة:ollama-spark/qwen3:32b، يزيل OpenClaw تلك البادئة فقط قبل استدعاء Ollama كي يتلقى الخادم qwen3:32b.
للنماذج المحلية البطيئة، فضّل ضبط الطلب على نطاق الموفر قبل رفع مهلة تشغيل الوكيل بالكامل:
timeoutSeconds على طلب HTTP للنموذج، بما في ذلك إعداد الاتصال، والترويسات، وبث الجسم، وإيقاف الجلب المحروس الإجمالي. يُمرَّر params.keep_alive إلى Ollama كـ keep_alive من المستوى الأعلى في طلبات /api/chat الأصلية؛ عيّنه لكل نموذج عندما يكون وقت تحميل الدور الأول هو عنق الزجاجة.
التحقق السريع
127.0.0.1 بالمضيف المستخدم في baseUrl. إذا كان curl يعمل لكن OpenClaw لا يعمل، فتحقق مما إذا كان Gateway يعمل على جهاز أو حاوية أو حساب خدمة مختلف.
بحث Ollama على الويب
يدعم OpenClaw بحث Ollama على الويب كموفرweb_search مضمّن.
| الخاصية | التفاصيل |
|---|---|
| المضيف | يستخدم مضيف Ollama المُعدّ لديك (models.providers.ollama.baseUrl عند ضبطه، وإلا http://127.0.0.1:11434)؛ يستخدم https://ollama.com واجهة API المستضافة مباشرة |
| المصادقة | بلا مفتاح لمضيفي Ollama المحليين المسجّل دخولهم؛ OLLAMA_API_KEY أو مصادقة الموفر المُعدّة للبحث المباشر عبر https://ollama.com أو المضيفين المحميين بالمصادقة |
| المتطلب | يجب أن تكون المضيفات المحلية/ذاتية الاستضافة قيد التشغيل ومسجّلًا دخولها باستخدام ollama signin؛ يتطلب البحث المستضاف المباشر baseUrl: "https://ollama.com" بالإضافة إلى مفتاح Ollama API حقيقي |
openclaw onboard أو openclaw configure --section web، أو اضبط:
/api/experimental/web_search. وبالنسبة إلى https://ollama.com، يستدعي نقطة النهاية المستضافة /api/web_search مباشرة.
الإعداد المتقدم
Legacy OpenAI-compatible mode
Legacy OpenAI-compatible mode
api: "openai-completions" صراحة:params: { streaming: false } في إعداد النموذج.عند استخدام api: "openai-completions" مع Ollama، يحقن OpenClaw القيمة options.num_ctx افتراضيًا حتى لا يعود Ollama بصمت إلى نافذة سياق 4096. إذا كان الوكيل الوسيط/المنبع يرفض حقول options غير المعروفة، فعطّل هذا السلوك:Context windows
Context windows
PARAMETER num_ctx الأكبر من ملفات Modelfile المخصصة. وإلا فإنه يعود إلى نافذة سياق Ollama الافتراضية التي يستخدمها OpenClaw.يمكنك ضبط القيم الافتراضية contextWindow وcontextTokens وmaxTokens على مستوى الموفر لكل نموذج ضمن موفر Ollama ذلك، ثم تجاوزها لكل نموذج عند الحاجة. contextWindow هي ميزانية المطالبة وCompaction في OpenClaw. تترك طلبات Ollama الأصلية options.num_ctx غير مضبوطة ما لم تُعدّ params.num_ctx صراحة، كي يتمكن Ollama من تطبيق نموذجه الخاص أو OLLAMA_CONTEXT_LENGTH أو القيمة الافتراضية المستندة إلى VRAM. للحد من سياق تشغيل Ollama لكل طلب أو فرضه بدون إعادة بناء Modelfile، اضبط params.num_ctx؛ يتم تجاهل القيم غير الصالحة، والصفرية، والسالبة، وغير المنتهية. ما زال محوّل Ollama المتوافق مع OpenAI يحقن options.num_ctx افتراضيًا من params.num_ctx أو contextWindow المُعدّة؛ عطّل ذلك باستخدام injectNumCtxForOpenAICompat: false إذا كان المنبع يرفض options.تقبل إدخالات نماذج Ollama الأصلية أيضًا خيارات تشغيل Ollama الشائعة ضمن params، بما في ذلك temperature وtop_p وtop_k وmin_p وnum_predict وstop وrepeat_penalty وnum_batch وnum_thread وuse_mmap. يمرر OpenClaw مفاتيح طلب Ollama فقط، لذلك لا تتسرب معاملات تشغيل OpenClaw مثل streaming إلى Ollama. استخدم params.think أو params.thinking لإرسال think الخاص بـ Ollama من المستوى الأعلى؛ تعطل false التفكير على مستوى API لنماذج التفكير بأسلوب Qwen.agents.defaults.models["ollama/<model>"].params.num_ctx لكل نموذج. إذا تم إعداد كليهما، يفوز إدخال نموذج الموفر الصريح على الإعداد الافتراضي للوكيل.Thinking control
Thinking control
think من المستوى الأعلى، وليس options.think. النماذج المكتشفة تلقائيًا التي تتضمن استجابة /api/show لديها قدرة thinking تعرض /think low و/think medium و/think high و/think max؛ أما النماذج غير المفكرة فتعرض فقط /think off.params.think أو params.thinking لكل نموذج تعطيل أو فرض تفكير Ollama API لنموذج مُعدّ محدد. يحافظ OpenClaw على معاملات النموذج الصريحة هذه عندما لا يحتوي التشغيل النشط إلا على الإعداد الافتراضي الضمني off؛ أما أوامر وقت التشغيل غير off مثل /think medium فما زالت تتجاوز التشغيل النشط.Reasoning models
Reasoning models
deepseek-r1 أو reasoning أو think كنماذج قادرة على الاستدلال افتراضيًا.Model costs
Model costs
Memory embeddings
Memory embeddings
/api/embed، ويجمع
عدة أجزاء ذاكرة في طلب input واحد عندما يكون ذلك ممكنًا.| الخاصية | القيمة |
|---|---|
| النموذج الافتراضي | nomic-embed-text |
| السحب التلقائي | نعم — يُسحب نموذج التضمين تلقائيًا إذا لم يكن موجودًا محليًا |
nomic-embed-text وqwen3-embedding وmxbai-embed-large. تبقى دفعات مستندات الذاكرة خامًا حتى لا تحتاج الفهارس الموجودة إلى ترحيل تنسيق.لاختيار Ollama كموفر تضمينات بحث الذاكرة:Streaming configuration
Streaming configuration
/api/chat) افتراضيًا، وهي تدعم البث واستدعاء الأدوات معًا بشكل كامل. لا يلزم أي إعداد خاص.بالنسبة إلى طلبات /api/chat الأصلية، يمرر OpenClaw أيضًا التحكم في التفكير مباشرةً إلى Ollama: يرسل /think off وopenclaw agent --thinking off القيمة العلوية think: false ما لم تُضبط قيمة صريحة للنموذج params.think/params.thinking، بينما يرسل /think low|medium|high سلسلة جهد think العلوية المطابقة. يتطابق /think max مع أعلى جهد أصلي في Ollama، وهو think: "high".استكشاف الأخطاء وإصلاحها
WSL2 crash loop (repeated reboots)
WSL2 crash loop (repeated reboots)
ollama.service مع Restart=always. إذا بدأت هذه الخدمة تلقائيًا وحمّلت نموذجًا مدعومًا بوحدة GPU أثناء إقلاع WSL2، فقد يثبّت Ollama ذاكرة المضيف أثناء تحميل النموذج. لا يستطيع استرداد الذاكرة في Hyper-V دائمًا استعادة تلك الصفحات المثبتة، لذلك قد ينهي Windows جهاز WSL2 الافتراضي، ثم يبدأ systemd تشغيل Ollama مرة أخرى، وتتكرر الحلقة.أدلة شائعة:- عمليات إعادة تشغيل أو إنهاء متكررة لـ WSL2 من جهة Windows
- ارتفاع استخدام CPU في
app.sliceأوollama.serviceبعد وقت قصير من بدء تشغيل WSL2 - إشارة SIGTERM من systemd بدلًا من حدث قاتل OOM في Linux
ollama.service مع Restart=always، ووجود علامات CUDA مرئية.التخفيف:%USERPROFILE%\.wslconfig على جهة Windows، ثم شغّل wsl --shutdown:Ollama not detected
Ollama not detected
OLLAMA_API_KEY (أو ملف تعريف مصادقة)، وأنك لم تعرّف إدخالًا صريحًا باسم models.providers.ollama:No models available
No models available
models.providers.ollama.Connection refused
Connection refused
Remote host works with curl but not OpenClaw
Remote host works with curl but not OpenClaw
- يشير
baseUrlإلىlocalhost، لكن Gateway يعمل في Docker أو على مضيف آخر. - يستخدم URL المسار
/v1، ما يختار سلوكًا متوافقًا مع OpenAI بدلًا من Ollama الأصلي. - يحتاج المضيف البعيد إلى تغييرات في جدار الحماية أو ربط LAN من جهة Ollama.
- النموذج موجود على خادم laptop لديك لكنه غير موجود على الخادم البعيد.
Model outputs tool JSON as text
Model outputs tool JSON as text
compat.supportsTools: false على إدخال ذلك النموذج وأعد الاختبار.Kimi or GLM returns garbled symbols
Kimi or GLM returns garbled symbols
Cloud + Local أو Cloud only، ثم جرّب جلسة جديدة ونموذجًا احتياطيًا:Cold local model times out
Cold local model times out
timeoutSeconds يمدّد أيضًا مهلة اتصال Undici المحمية لهذا المزوّد.Large-context model is too slow or runs out of memory
Large-context model is too slow or runs out of memory
params.num_ctx. حدّد كلًا من ميزانية OpenClaw وسياق طلب Ollama عندما تريد زمن وصول قابلًا للتنبؤ لأول رمز:contextWindow أولًا إذا كان OpenClaw يرسل قدرًا كبيرًا جدًا من الموجه. خفّض params.num_ctx إذا كان Ollama يحمّل سياق وقت تشغيل أكبر مما يناسب الجهاز. خفّض maxTokens إذا استغرق التوليد وقتًا طويلًا جدًا.