Concepts and configuration

CLI للنماذج

يختار مرجع النموذج (provider/model) موفرًا ونموذجًا، وليس وقت تشغيل الوكيل منخفض المستوى. عندما تكون سياسة وقت التشغيل غير معيّنة أو auto، قد تختار سياسة المسار المملوكة لموفر OpenAI وقت تشغيل Codex فقط لمسار رسمي مطابق تمامًا عبر HTTPS لمنصة Responses أو ChatGPT Responses من دون تجاوز مؤلَّف للطلب؛ ولا تؤدي بادئة openai/* وحدها إلى اختيار Codex مطلقًا. تظل محوّلات Completions، ونقاط النهاية المخصصة، وسلوك الطلب المؤلَّف على OpenClaw. تُرفض نقاط نهاية HTTP الرسمية ذات النص الصريح. راجع وقت تشغيل وكيل OpenAI الضمني.

يمكن تمكين مراجع اشتراك Copilot (github-copilot/*) لاستخدام Plugin وقت تشغيل وكيل GitHub Copilot الخارجي، لكن هذا المسار صريح دائمًا (ولا يختاره auto مطلقًا). تنتمي تجاوزات وقت التشغيل إلى سياسة الموفر/النموذج، لا إلى الوكيل أو الجلسة بأكملها. لا يحدد اختيار وقت التشغيل الفوترة: تظل بيانات اعتماد مفتاح OpenAI API واشتراك ChatGPT/Codex منفصلة. راجع أوقات تشغيل الوكلاء و وقت تشغيل وكيل GitHub Copilot.

ترتيب الاختيار

  • النموذج الأساسي

    agents.defaults.model.primary (أو agents.defaults.model كسلسلة نصية عادية).

  • البدائل الاحتياطية

    agents.defaults.model.fallbacks، وتُجرَّب بالترتيب.

  • تجاوز فشل المصادقة

    يحدث تدوير ملفات تعريف المصادقة داخل الموفر قبل انتقال OpenClaw إلى النموذج الاحتياطي التالي.

  • أسطح إعداد النموذج ذات الصلة:

    • agents.defaults.models هي قائمة السماح/دليل النماذج التي يمكن لـ OpenClaw استخدامها، إضافةً إلى الأسماء البديلة. استخدم إدخالات provider/* للسماح بكل نموذج مكتشف من موفر من دون إدراج كل نموذج على حدة.
    • agents.defaults.utilityModel هو نموذج اختياري أقل تكلفة للمهام الداخلية القصيرة مثل عناوين جلسات لوحة المعلومات المُنشأة، وعناوين سلاسل المحادثات/الموضوعات في القنوات المدعومة، وسرد التقدم. يتجاوزه agents.list[].utilityModel الخاص بكل وكيل. عندما لا يكون معيّنًا، يستخدم OpenClaw النموذج الصغير الافتراضي المعلَن للموفر الأساسي عند وجوده (OpenAI ← gpt-5.6-luna، وAnthropic ← claude-haiku-4-5)؛ وإلا فيستخدم النموذج الأساسي للوكيل. عيّنه إلى سلسلة فارغة لتعطيل توجيه الأدوات المساعدة. مهام الأدوات المساعدة هي استدعاءات نماذج منفصلة وقد ترسل محتوى محدودًا للمهمة إلى موفر النموذج المحدد.
    • agents.defaults.imageModel يُستخدم فقط عندما يتعذر على النموذج الأساسي قبول الصور.
    • agents.defaults.pdfModel تستخدمه أداة pdf. إذا لم يكن معيّنًا، تعود الأداة إلى imageModel، ثم إلى نموذج الجلسة/النموذج الافتراضي الذي جرى حله.
    • agents.defaults.imageGenerationModel وmusicGenerationModel وvideoGenerationModel تدعم أدوات إنشاء الوسائط المشتركة. إذا لم تكن معيّنة، تستنتج كل أداة قيمة افتراضية لموفر مدعوم بالمصادقة: الموفر الافتراضي الحالي أولًا، ثم بقية الموفرين المسجلين لتلك الإمكانية بترتيب معرّف الموفر. عيّن agents.defaults.mediaGenerationAutoProviderFallback: false لتعطيل هذا الاستنتاج عبر الموفرين مع إبقاء البدائل الاحتياطية الصريحة.
    • يتجاوز agents.list[].model الخاص بكل وكيل (إضافةً إلى الارتباطات) القيمة agents.defaults.model — راجع توجيه الوكلاء المتعددين.

    للمرجع الكامل للمفاتيح والقيم الافتراضية وأمثلة JSON5: مرجع الإعدادات.

    مصدر الاختيار وصرامة البدائل الاحتياطية

    يتصرف provider/model نفسه بصورة مختلفة اعتمادًا على مصدره:

    المصدر السلوك
    القيمة الافتراضية المضبوطة (agents.defaults.model.primary، الأساسي الخاص بكل وكيل) نقطة البدء العادية؛ تستخدم agents.defaults.model.fallbacks.
    البديل الاحتياطي التلقائي حالة استرداد مؤقتة، تُخزَّن في صورة modelOverrideSource: "auto". يعيد OpenClaw فحص النموذج الأساسي الأصلي دوريًا، ويمحو الاختيار التلقائي عند الاسترداد، ويعلن انتقالات التبديل الاحتياطي/الاسترداد مرة واحدة لكل تغيير في الحالة.
    اختيار جلسة المستخدم دقيق وصارم. تخزّن /model، وأداة اختيار النموذج، وsession_status(model=...)، وsessions.patch القيمة modelOverrideSource: "user". إذا تعذر الوصول إلى ذلك الموفر/النموذج، يفشل التشغيل بصورة ظاهرة بدلًا من الانتقال إلى نموذج آخر مضبوط.
    Cron ‏--model / حمولة model نموذج أساسي لكل مهمة. يظل يستخدم البدائل الاحتياطية المضبوطة ما لم توفر المهمة fallbacks خاصًا بها في الحمولة (fallbacks: [] يفرض تشغيلًا صارمًا).

    قواعد اختيار أخرى:

    • لا تؤدي تغييرات agents.defaults.model.primary إلى إعادة كتابة تثبيتات الجلسات الحالية. إذا أبلغت الحالة عن This session is pinned to X; config primary Y will apply to new/unpinned sessions.، فشغّل /model default لمسح التثبيت.
    • تحترم أدوات اختيار النموذج الافتراضي وقائمة السماح في CLI القيمة models.mode: "replace" عبر إدراج models.providers.*.models فقط بدلًا من الدليل المضمّن الكامل.
    • تطلب أداة اختيار النموذج في واجهة التحكم من Gateway عرض النماذج المضبوط لديه: agents.defaults.models عند تعيينه (بما في ذلك إدخالات أحرف البدل provider/*)؛ وإلا فتستخدم models.providers.*.models إضافةً إلى الموفرين ذوي المصادقة القابلة للاستخدام. يقتصر الدليل المضمّن الكامل على عروض التصفح الصريحة (models.list مع view: "all"، أو openclaw models list --all).
    • تستخدم واجهات مخزون الموفرين models.list مع view: "provider-config" لإظهار صفوف models.providers.*.models المؤلَّفة من المصدر من دون تطبيق قوائم السماح الخاصة بأدوات الاختيار.

    للتفاصيل الكاملة: تجاوز فشل النموذج.

    سياسة سريعة للنماذج

    • عيّن نموذجك الأساسي إلى أقوى نموذج من أحدث جيل متاح لك.
    • استخدم البدائل الاحتياطية للمهام الحساسة للتكلفة/زمن الاستجابة وللمحادثات الأقل أهمية.
    • بالنسبة إلى الوكلاء المزودين بأدوات أو المدخلات غير الموثوقة، تجنّب فئات النماذج الأقدم/الأضعف.

    الإعداد الأولي

    bash
    openclaw onboard

    يضبط النموذج والمصادقة للموفرين الشائعين من دون تحرير الإعدادات يدويًا، بما في ذلك OAuth لاشتراك OpenAI Codex وAnthropic (مفتاح API أو إعادة استخدام Claude CLI).

    عند عدم ضبط نموذج أساسي، يختار إعداد مفتاح OpenAI API الجديد openai/gpt-5.6؛ ويُحل معرّف API المباشر المجرّد إلى فئة Sol. يختار إعداد OAuth الجديد لـ ChatGPT/Codex مرجع الدليل المطابق openai/gpt-5.6-sol. تحافظ إعادة المصادقة على نموذج أساسي صريح موجود، بما في ذلك openai/gpt-5.5. إذا لم يكن GPT-5.6 متاحًا للحساب، فاختر openai/gpt-5.5 صراحةً؛ ولا يخفض OpenClaw إصداره تلقائيًا وبصمت.

    «النموذج غير مسموح به» (وسبب توقف الردود)

    إذا كانت agents.defaults.models معيّنة، فإنها تصبح قائمة السماح لـ /model وتجاوزات الجلسة. يؤدي اختيار نموذج خارج قائمة السماح هذه إلى إرجاع ما يلي، قبل إنشاء أي رد عادي:

    text
    النموذج "provider/model" غير مسموح به. استخدم /models لإدراج الموفرين، أو /models <provider> لإدراج النماذج.أضفه باستخدام: openclaw config set agents.defaults.models '{"provider/model":{}}' --strict-json --merge

    أصلح ذلك بإضافة النموذج إلى agents.defaults.models، أو مسح قائمة السماح بالكامل (إزالة المفتاح)، أو اختيار نموذج من /model list. إذا تضمّن الأمر المرفوض تجاوزًا لوقت التشغيل مثل /model openai/gpt-5.5 --runtime codex، فأصلح قائمة السماح أولًا، ثم أعد محاولة أمر /model ... --runtime ... نفسه.

    بالنسبة إلى نماذج local/GGUF، تحتاج قائمة السماح إلى المرجع الكامل مسبوقًا بالموفر، مثل ollama/gemma4:26b أو lmstudio/Gemma4-26b-a4-it-gguf — راجع openclaw models list --provider <provider> لمعرفة السلسلة الدقيقة. لا تكفي أسماء الملفات المجرّدة أو أسماء العرض بعد تفعيل قائمة السماح.

    لتقييد الموفرين من دون إدراج كل نموذج، استخدم إدخالات أحرف البدل provider/*:

    json5
    {  agents: {    defaults: {      models: {        "openai/*": {},        "vllm/*": {},      },    },  },}

    تعرض /model و/models وأدوات اختيار النماذج عندئذٍ الدليل المكتشف لهؤلاء الموفرين فقط، ويمكن أن تظهر نماذج جديدة من دون تحرير قائمة السماح. امزج إدخالات provider/model الدقيقة مع إدخالات provider/* لجلب نموذج محدد واحد من موفر آخر.

    مثال لقائمة سماح بأسماء بديلة:

    json5
    {  agents: {    defaults: {      model: { primary: "anthropic/claude-sonnet-4-6" },      models: {        "anthropic/claude-sonnet-4-6": { alias: "Sonnet" },        "anthropic/claude-opus-4-6": { alias: "Opus" },      },    },  },}
    تعديلات آمنة لقائمة السماح من CLI

    استخدم --merge لإجراء تغييرات إضافية:

    bash
    openclaw config set agents.defaults.models '{"openai/gpt-5.4":{}}' --strict-json --merge

    يرفض openclaw config set تعيينات الكائنات العادية إلى agents.defaults.models أو models.providers أو models.providers.<id>.models عندما قد تسقط الإدخالات الحالية؛ استخدم --replace فقط عندما ينبغي أن تصبح القيمة الجديدة هي القيمة المستهدفة الكاملة. يدمج إعداد الموفر التفاعلي وopenclaw configure --section model بالفعل الاختيارات الخاصة بالموفر في قائمة السماح، لذلك لا تؤدي إضافة موفر إلى إسقاط إدخالات غير مرتبطة؛ ويحافظ configure على agents.defaults.model.primary موجود. تظل الأوامر الصريحة مثل openclaw models auth login --provider <id> --set-default وopenclaw models set <model> تستبدل النموذج الأساسي.

    /model في المحادثة

    text
    /model/model list/model 3/model openai/gpt-5.4/model default/model status
    • /model و/model list يعرضان منتقيًا رقميًا موجزًا (عائلة النموذج + المزوّدون المتاحون)؛ ويختار /model <#> منه. في Discord، يفتح هذا قوائم منسدلة للمزوّد/النموذج تتضمن خطوة Submit؛ وفي Telegram، تقتصر اختيارات المنتقي على الجلسة ولا تعيد أبدًا كتابة الإعداد الافتراضي الدائم للوكيل في openclaw.json. أما /models add فقد أُهمل ويُرجع رسالة بدلًا من تسجيل النماذج من المحادثة.
    • /model يحفظ اختيار الجلسة الجديد فورًا. إذا كان الوكيل خاملًا، يستخدمه التشغيل التالي مباشرةً؛ وإذا كان هناك تشغيل نشط بالفعل، فيُدرج التبديل في قائمة الانتظار إلى نقطة إعادة المحاولة النظيفة التالية (أو نقطة لاحقة، إذا كان نشاط الأداة أو إخراج الرد قد بدأ بالفعل).
    • /model default يمسح اختيار الجلسة لتعود إلى وراثة الإعداد الأساسي المُهيأ.
    • مرجع /model الذي يختاره المستخدم صارم لتلك الجلسة: إذا تعذّر الوصول إليه، يفشل الرد بصورة ظاهرة بدلًا من الرجوع بصمت عبر agents.defaults.model.fallbacks. تظل الإعدادات الافتراضية المُهيأة والنماذج الأساسية لمهام Cron تستخدم سلاسل الرجوع.
    • /model status هو العرض التفصيلي: مرشحو المصادقة لكل مزوّد، وعند التهيئة، نقطة نهاية المزوّد baseUrl بالإضافة إلى وضع api.
    • تُحلّل مراجع النماذج بالتقسيم عند أول /؛ اكتب provider/model. إذا كان معرّف النموذج نفسه يحتوي على / (بأسلوب OpenRouter)، فأدرج بادئة المزوّد، مثل /model openrouter/moonshotai/kimi-k2. إذا حذفت المزوّد، يحاول OpenClaw: (1) مطابقة الاسم المستعار، (2) مطابقة مزوّد مُهيأ فريد لمعرّف النموذج غير المسبوق نفسه تمامًا، (3) المزوّد الافتراضي المُهيأ (رجوع مُهمل) — وإذا لم يعد ذلك المزوّد يوفّر النموذج الافتراضي المُهيأ، فيستخدم أول مزوّد/نموذج مُهيأ بدلًا منه، لتجنّب إظهار إعداد افتراضي قديم لمزوّد أُزيل.
    • تُطبّع مراجع النماذج إلى أحرف صغيرة؛ وتظل معرّفات المزوّدين مطابقة تمامًا فيما عدا ذلك، لذا استخدم المعرّف الذي يعلنه Plugin.

    السلوك الكامل للأوامر والتهيئة: أوامر الشرطة المائلة.

    CLI

    bash
    openclaw models statusopenclaw models listopenclaw models set <provider/model>openclaw models set-image <provider/model>openclaw models scanopenclaw models aliases list|add|removeopenclaw models fallbacks list|add|remove|clearopenclaw models image-fallbacks list|add|remove|clearopenclaw models auth list|add|login|paste-api-key|paste-token|setup-token|order

    يُعد openclaw models من دون أمر فرعي اختصارًا لـ models status، الذي يعرض أيضًا انتهاء صلاحية OAuth لملفات تعريف مخزن المصادقة (ويحذّر خلال 24h افتراضيًا). العلامات الكاملة وبُنى JSON والأوامر الفرعية لملفات تعريف المصادقة: مرجع CLI للنماذج.

    الفحص (نماذج OpenRouter المجانية)

    يفحص openclaw models scan كتالوج OpenRouter العام للنماذج المجانية، ويمكنه اختبار المرشحين مباشرةً للتحقق من دعم الأدوات والصور. الكتالوج نفسه عام، لذا لا تحتاج عمليات فحص البيانات الوصفية فقط (--no-probe) إلى مفتاح؛ أما الاختبار المباشر و--set-default/--set-image فتتطلب مفتاح OpenRouter API (ملف تعريف مصادقة أو OPENROUTER_API_KEY) وتفشل بصورة مغلقة لتُخرج البيانات الوصفية فقط عند عدم توفره.

    تُرتّب النتائج حسب: دعم الصور، ثم زمن استجابة الأدوات، ثم حجم السياق، ثم عدد المعاملات. في TTY، تطلب النتائج المختبَرة اختيارًا تفاعليًا للرجوع؛ ويتطلب الوضع غير التفاعلي --yes لقبول الإعدادات الافتراضية.

    سجل النماذج (models.json)

    تُكتب المزوّدات المخصصة المُهيأة ضمن models.providers في models.json داخل دليل الوكيل (الافتراضي ~/.openclaw/agents/<agentId>/agent/models.json). تُخزّن كتالوجات Plugin الخاصة بالمزوّدين بصورة منفصلة كأجزاء كتالوج مولّدة يملكها Plugin وتُحمّل تلقائيًا. يُدمج هذا الملف مع التهيئة افتراضيًا؛ اضبط models.mode: "replace" لاستخدام المزوّدين الذين هيّأتهم فقط.

    أسبقية وضع الدمج

    بالنسبة إلى معرّفات المزوّدين المتطابقة:

    • تكون الأولوية لقيمة baseUrl غير الفارغة الموجودة مسبقًا في models.json الخاص بالوكيل.
    • تكون الأولوية لقيمة apiKey غير الفارغة في models.json فقط عندما لا يكون ذلك المزوّد مُدارًا بواسطة SecretRef في سياق التهيئة/ملف تعريف المصادقة الحالي.
    • تُحدّث قيم apiKey المُدارة بواسطة SecretRef من علامات المصدر بدلًا من حفظ الأسرار المحلولة: اسم متغير البيئة لمراجع البيئة، وsecretref-managed لمراجع الملف/التنفيذ.
    • تُحدّث قيم الترويسة المُدارة بواسطة SecretRef بالطريقة نفسها، باستخدام secretref-env:ENV_VAR_NAME لمراجع البيئة.
    • ترجع قيم apiKey/baseUrl الفارغة أو المفقودة في models.json إلى models.providers في التهيئة.
    • تُحدّث حقول المزوّد الأخرى من التهيئة وبيانات الكتالوج المُطبّعة.

    يستند حفظ العلامات إلى المصدر بوصفه المرجع المعتمد: يكتب OpenClaw العلامات من لقطة تهيئة المصدر النشطة (قبل الحل)، لا من قيم أسرار وقت التشغيل المحلولة، كلما أعاد توليد models.json — بما في ذلك المسارات التي تقودها الأوامر مثل openclaw agent.

    ذو صلة

    Was this useful?
    On this page

    On this page