प्लैटफ़ॉर्म

गड़बड़ियाँ

गड़बड़ियाँ आपके कॉल किए गए एंडपॉइंट के फ़ॉर्मैट में JSON के रूप में लौटाई जाती हैं। इनमें लोगों के समझने लायक मैसेज होता है और OpenAI-शैली के एंडपॉइंट पर प्रोग्राम के लिए एक स्थिर कोड भी होता है।

फ़ॉर्मैट

OpenAI-शैली के एंडपॉइंट
{
"error": {
"message": "This API key can't use `gpt-6-astra`. It's limited to gpt-6-sol. Change that at https://zurelay.com/app/keys.",
"type": "permission_error",
"param": "model",
"code": "model_not_allowed"
}
}

/v1/messages पर यही गड़बड़ियाँ Anthropic के फ़ॉर्मैट में आती हैं, जिसमें कोड नहीं होता: HTTP स्टेटस और error.type इस्तेमाल करें: { "type": "error", "error": { "type": "...", "message": "..." } }। हर चैट, इमेज और वीडियो के जवाब में, गड़बड़ी हो या न हो, x-request-id हेडर होता है।

कोड

स्थितिकोडक्या करें
400invalid_requestअनुरोध ठीक करें: मैसेज बताता है कि क्या गड़बड़ है और param बताता है कि कहाँ।
400unsupported_contentयह मॉडल उस तरह की फ़ाइल नहीं पढ़ सकता। उसे हटाएँ या ऐसा मॉडल चुनें जो उसे पढ़ सके।
400invalid_urlअनुरोध में दिया गया एक लिंक डाउनलोड नहीं हो पाया। मैसेज में उस लिंक से मिला स्टेटस दिया गया है।
400invalid_imageइनपुट इमेज इस्तेमाल नहीं हो पाई (टाइप, साइज़ या लिंक की वजह से)।
400image_not_generatedमॉडल ने प्रॉम्प्ट अस्वीकार कर दिया। कोई शुल्क नहीं लगा।
400context_length_exceededमॉडल के मुताबिक बातचीत उसके लिए बहुत लंबी है। इसे छोटा करें या लंबी कॉन्टेक्स्ट विंडो वाला मॉडल चुनें।
400max_tokens_reachedनॉन-स्ट्रीमिंग /v1/messages जवाब टूल कॉल के बीच में आपकी max_tokens सीमा तक पहुँच गया, इसलिए यह पूरा मैसेज नहीं है। जितना जनरेट हुआ, उसका शुल्क लगेगा। max_tokens बढ़ाकर दोबारा भेजें।
401missing_api_keyकी को Authorization या x-api-key में भेजें।
401invalid_api_keyकी गलत है या रद्द कर दी गई है।
401expired_api_keyनई की बनाएँ।
402insufficient_quotaचल रहे अनुरोधों के लिए अलग रखी गई रकम घटाने के बाद आपका बैलेंस इस अनुरोध के लिए काफ़ी नहीं है, या जवाब के बीच में खत्म हो गया। बिलिंग में क्रेडिट जोड़ें या max_tokens घटाकर कम आउटपुट माँगें। अगर ऑटो-रिचार्ज ने टॉप-अप शुरू कर दिया है, तो मैसेज में इसकी जानकारी होगी: कुछ सेकंड बाद फिर कोशिश करें।
402key_budget_exceededचल रहे अनुरोधों को गिनने पर यह अनुरोध की के मासिक बजट से ज़्यादा खर्च कर सकता है, या अनुरोध के बीच में बजट की सीमा आ गई। बजट बढ़ाएँ या अगले महीने तक इंतज़ार करें।
402key_daily_budget_exceededयही बात की के दैनिक बजट पर भी लागू होती है। इसे बढ़ाएँ या UTC के अनुसार आधी रात तक इंतज़ार करें।
403model_not_allowedइस की को यह मॉडल इस्तेमाल करने की अनुमति नहीं है।
403ip_not_allowedयह की सिर्फ़ दूसरे पतों से काम करती है।
404model_not_foundमॉडल पेज पर मॉडल ID जाँचें।
404unknown_urlऐसा कोई एंडपॉइंट नहीं है। पाथ और बेस URL जाँचें।
404video_not_foundइस वर्कस्पेस में उस ID वाला कोई वीडियो नहीं है।
404image_not_foundइस वर्कस्पेस में उस ID वाला कोई इमेज अनुरोध नहीं है (GET /v1/images/{id}, callback_url के साथ किए गए अनुरोधों के लिए)।
409video_not_readyवीडियो अभी तैयार नहीं है: उसका स्टेटस completed होने तक पोल करते रहें।
409video_failedवीडियो बनाना विफल रहा, इसलिए डाउनलोड करने के लिए कुछ नहीं है। इसकी वजह उसके गड़बड़ी वाले मैसेज में दी गई है।
410video_expiredवीडियो लाइब्रेरी से या उसके 30 दिन पूरे होने पर मिटा दिया गया था।
413too_largeअनुरोध या कोई फ़ाइल तय सीमा से बड़ी है। बड़ी फ़ाइलें लिंक के तौर पर भेजें।
429rate_limit_exceededretry-after में दिए गए सेकंड तक इंतज़ार करें, फिर कोशिश करें।
429concurrency_limit_exceededवर्कस्पेस में पहले से 32 अनुरोध एक साथ चल रहे हैं। retry-after में दिए गए सेकंड के बाद, कोई एक अनुरोध पूरा हो जाने पर फिर कोशिश करें।
500server_errorहमारी तरफ़ कुछ गड़बड़ हुई। फिर कोशिश करें।
502stream_interruptedबीच में बंद हुई स्ट्रीम के आखिरी इवेंट के तौर पर भेजा जाता है। स्ट्रीम बंद होने से पहले जो भेजा गया, सिर्फ़ उसी का शुल्क लगेगा, उसके बाद का नहीं; फिर कोशिश करें।
503model_unavailableमॉडल अभी उपलब्ध नहीं है। retry-after में दिए गए सेकंड के बाद फिर कोशिश करें या स्मार्ट रूटिंग चालू करें। अगर retry-after नहीं है और x-should-retry: false है, तो मॉडल उपलब्ध है, लेकिन इस अनुरोध पर हर बार गड़बड़ी वाला मैसेज भेजता है: बिना बदलाव किए इसे दोबारा न भेजें।
503server_restartingZurelay उस मशीन को रीस्टार्ट कर रहा है जिस पर आपका अनुरोध चल रहा था। तुरंत फिर कोशिश करें: दूसरी मशीन इसे संभाल लेगी। कोई शुल्क नहीं लगेगा, जब तक स्ट्रीम शुरू न हो गई हो: अगर हो गई थी, तो बीच में बंद हुई स्ट्रीम की तरह, आप तक पहुँचे हिस्से का शुल्क लगेगा।
503storage_unavailableइमेज बन गई, लेकिन भेजी नहीं जा सकी। कोई शुल्क नहीं लगा; फिर कोशिश करें।
503service_unavailableहमारी तरफ़ थोड़ी देर की समस्या है। फिर कोशिश करें।

दोबारा कोशिश करना

  • 429 और 503 पर फिर कोशिश करें, retry-after हेडर में दिए गए सेकंड तक इंतज़ार करके (या हर कोशिश के बीच इंतज़ार का समय कई गुना बढ़ाकर), जब तक जवाब में x-should-retry: false न लिखा हो।
  • अन्य 4xx गड़बड़ियों पर बिना बदलाव किए फिर कोशिश न करें: वे उसी तरह विफल होंगी।
  • विफल अनुरोधों पर कोई शुल्क नहीं लगता, इसलिए जब तक कोई अनुरोध सफल न हो, दोबारा कोशिश करने का कोई खर्च नहीं है। बीच में बंद हुई स्ट्रीम में जितना आप तक पहुँचा, उसका शुल्क लगता है। दुर्लभ स्थिति में x-should-retry: false वाले 503 के इनपुट का भी शुल्क लगता है (बिलिंग देखें)।
  • OpenAI और Anthropic के आधिकारिक SDK सही गड़बड़ियों पर आपकी ओर से पहले ही दोबारा कोशिश करते हैं।

स्ट्रीम के बीच में गड़बड़ियाँ

आपके अनुरोध से जुड़ी जिन गड़बड़ियों की जानकारी मॉडल देता है (ऐसा पैरामीटर जो वह स्वीकार नहीं करता, या उसके लिए बहुत लंबा प्रॉम्प्ट), वे मॉडल के अपने मैसेज और कोड के साथ 400 या 422 के तौर पर आती हैं।

स्ट्रीम के बीच में गड़बड़ियाँ

स्ट्रीम शुरू होने के बाद किसी विफलता को HTTP स्टेटस के तौर पर नहीं भेजा जा सकता। इसके बजाय आपको आखिरी इवेंट के रूप में गड़बड़ी की जानकारी मिलती है (एंडपॉइंट के फ़ॉर्मैट में) और स्ट्रीम खत्म हो जाती है। आपसे इनपुट और उससे पहले आप तक पहुँचे आउटपुट का शुल्क लिया जाता है, उसके बाद का नहीं। ऐसा बहुत कम होता है: ज़्यादातर समस्याएँ पहले टोकन से पहले ही पकड़ ली जाती हैं और दोबारा कोशिश कर ली जाती है।

बीच में बैलेंस या की का बजट खत्म होने पर भी इसी तरह का इवेंट insufficient_quota, key_budget_exceeded या key_daily_budget_exceeded के साथ स्ट्रीम खत्म करता है। बीच में बैलेंस या बजट खत्म होने पर नॉन-स्ट्रीमिंग अनुरोध जितना लिखा जा चुका है, उतना लौटा देता है। यह max_tokens तक पहुँचे जवाब की तरह अधूरा होता है (finish_reason: "length", या /v1/messages पर stop_reason: "max_tokens"), और x-zurelay-stopped हेडर में कोड दिया होता है।

कोई सवाल है, या कुछ छूट गया है? हमारी सहायता टीम से पूछें और हम ईमेल से जवाब देंगे, आम तौर पर एक मिनट के भीतर.