मॉडल फॉलबैक
OpenClaw विफलताओं को दो चरणों में संभालता है:- वर्तमान प्रदाता के भीतर प्रमाणीकरण प्रोफ़ाइल रोटेशन।
agents.defaults.model.fallbacksमें अगले मॉडल पर मॉडल फॉलबैक।
प्रमाणीकरण भंडारण (कुंजियाँ + OAuth)
OpenClaw API कुंजियों और OAuth टोकनों—दोनों के लिए प्रमाणीकरण प्रोफ़ाइलों का उपयोग करता है।- सीक्रेट्स
~/.openclaw/agents/<agentId>/agent/auth-profiles.jsonमें रहते हैं (लीगेसी:~/.openclaw/agent/auth-profiles.json)। - विन्यास
auth.profiles/auth.orderकेवल मेटाडेटा + रूटिंग के लिए हैं (कोई सीक्रेट नहीं)। - लीगेसी केवल-इम्पोर्ट OAuth फ़ाइल:
~/.openclaw/credentials/oauth.json(पहले उपयोग परauth-profiles.jsonमें आयात होती है)।
type: "api_key"→{ provider, key }-
type: "oauth"→{ provider, access, refresh, expires, email? 44. }(+ कुछ providers के लिएprojectId/enterpriseUrl)
प्रोफ़ाइल आईडी
OAuth लॉगिन अलग-अलग प्रोफ़ाइल बनाते हैं ताकि कई खाते सह-अस्तित्व में रह सकें।- डिफ़ॉल्ट: जब ईमेल उपलब्ध न हो तो
provider:default। - ईमेल के साथ OAuth:
provider:<email>(उदाहरण के लिएgoogle-antigravity:[email protected])।
profiles के अंतर्गत ~/.openclaw/agents/<agentId>/agent/auth-profiles.json में रहती हैं।
रोटेशन क्रम
जब किसी प्रदाता के पास कई प्रोफ़ाइलें होती हैं, OpenClaw इस तरह क्रम चुनता है:- स्पष्ट विन्यास:
auth.order[provider](यदि सेट हो)। - विन्यस्त प्रोफ़ाइलें:
auth.profiles(प्रदाता के अनुसार फ़िल्टर की गई)। - संग्रहीत प्रोफ़ाइलें: प्रदाता के लिए
auth-profiles.jsonमें प्रविष्टियाँ।
- प्राथमिक कुंजी: प्रोफ़ाइल प्रकार (API कुंजियों से पहले OAuth)।
- द्वितीयक कुंजी:
usageStats.lastUsed(प्रत्येक प्रकार के भीतर सबसे पुरानी पहले)। - कूलडाउन/अक्षम प्रोफ़ाइलें अंत में ले जाई जाती हैं, और सबसे निकट समाप्ति के क्रम में रखी जाती हैं।
सत्र स्थिरता (कैश‑अनुकूल)
- OpenClaw चुने गए auth प्रोफ़ाइल को प्रति सत्र पिन करता है ताकि provider caches warm रहें।
- यह हर रिक्वेस्ट पर रोटेट नहीं करता। 47. पिन किया गया प्रोफ़ाइल तब तक पुन: उपयोग होता है जब तक:
- सत्र रीसेट न हो (
/new//reset) - कोई कम्पैक्शन पूर्ण न हो जाए (कम्पैक्शन काउंट बढ़ता है)
- प्रोफ़ाइल कूलडाउन/अक्षम न हो
/model …@<profileId> के माध्यम से मैनुअल चयन उस सत्र के लिए उपयोगकर्ता ओवरराइड सेट करता है
और नया सत्र शुरू होने तक स्वतः रोटेट नहीं होता।
- Auto‑pinned प्रोफ़ाइल (सत्र राउटर द्वारा चुने गए) को preference माना जाता है: उन्हें पहले आज़माया जाता है, लेकिन rate limits/timeouts पर OpenClaw किसी अन्य प्रोफ़ाइल पर रोटेट कर सकता है।
- User‑pinned प्रोफ़ाइल उसी प्रोफ़ाइल पर लॉक रहते हैं; यदि वह विफल हो और model fallbacks कॉन्फ़िगर हों, तो OpenClaw प्रोफ़ाइल बदलने के बजाय अगले मॉडल पर जाता है।
OAuth “गुम हुआ” क्यों दिख सकता है
- यदि आपके पास एक ही provider के लिए OAuth प्रोफ़ाइल और API key प्रोफ़ाइल दोनों हैं, तो पिन न होने पर round‑robin संदेशों के बीच उनके बीच स्विच कर सकता है। 1. किसी एक प्रोफ़ाइल को मजबूरन उपयोग करने के लिए:
auth.order[provider] = ["provider:profileId"]से पिन करें, या- प्रोफ़ाइल ओवरराइड के साथ
/model …के माध्यम से प्रति‑सत्र ओवरराइड का उपयोग करें (जब आपके UI/चैट सतह द्वारा समर्थित हो)।
कूलडाउन
- जब किसी प्रोफ़ाइल में auth/रेट‑लिमिट त्रुटियों (या ऐसे टाइमआउट जो रेट लिमिट जैसे लगें) के कारण विफलता होती है, तो OpenClaw उसे कूलडाउन में चिह्नित करता है और अगली प्रोफ़ाइल पर चला जाता है।
- फ़ॉर्मैट/अमान्य‑रिक्वेस्ट त्रुटियाँ (उदाहरण के लिए Cloud Code Assist टूल कॉल ID वैलिडेशन विफलताएँ) को भी फेलओवर‑योग्य माना जाता है और वही कूलडाउन लागू होते हैं।
- 1 मिनट
- 5 मिनट
- 25 मिनट
- 1 घंटा (सीमा)
usageStats के अंतर्गत auth-profiles.json में संग्रहीत होती है:
बिलिंग अक्षमकरण
- बिलिंग/क्रेडिट विफलताएँ (उदाहरण के लिए “insufficient credits” / “credit balance too low”) को फेलओवर‑योग्य माना जाता है, लेकिन वे आम तौर पर अस्थायी नहीं होतीं। 5. छोटे कूलडाउन के बजाय, OpenClaw प्रोफ़ाइल को disabled के रूप में चिह्नित करता है (लंबे बैकऑफ़ के साथ) और अगली प्रोफ़ाइल/प्रोवाइडर पर रोटेट करता है।
auth-profiles.json में संग्रहीत होती है:
- बिलिंग बैकऑफ़ 5 घंटे से शुरू होता है, प्रत्येक बिलिंग विफलता पर दोगुना होता है, और 24 घंटे पर सीमित होता है।
- यदि प्रोफ़ाइल 24 घंटे तक विफल न हुई हो तो बैकऑफ़ काउंटर रीसेट हो जाते हैं (विन्यस्त करने योग्य)।
मॉडल फॉलबैक
- यदि किसी प्रोवाइडर की सभी प्रोफ़ाइलें विफल हो जाती हैं, तो OpenClaw
agents.defaults.model.fallbacksमें अगले मॉडल पर चला जाता है। 7. यह auth विफलताओं, रेट लिमिट्स, और उन टाइमआउट्स पर लागू होता है जिनमें प्रोफ़ाइल रोटेशन समाप्त हो गया हो (अन्य त्रुटियाँ फॉलबैक को आगे नहीं बढ़ातीं)।
agents.defaults.model.primary पर समाप्त होते हैं।
संबंधित विन्यास
इनके लिए Gateway configuration देखें:auth.profiles/auth.orderauth.cooldowns.billingBackoffHours/auth.cooldowns.billingBackoffHoursByProviderauth.cooldowns.billingMaxHours/auth.cooldowns.failureWindowHoursagents.defaults.model.primary/agents.defaults.model.fallbacksagents.defaults.imageModelरूटिंग