Felo API PlatformFelo API Platform

सामान्य प्रश्न

समस्या निवारण

प्रमाणीकरण, मॉडल, स्ट्रीमिंग, टास्क और रेट-लिमिट की समस्याएं लक्षण के आधार पर हल करें।

पहले लक्षण से शुरू करें, फिर समाधान का पालन करें। अधिकतर विफलताएं base URL, key, मॉडल ID या बैलेंस से आती हैं।

लक्षण-आधारित तालिका

लक्षणसंभावित कारणसमाधान
401 UNAUTHORIZEDKey गुम, गलत, रद्द या नहीं भेजी गईAuthorization: Bearer $FELO_API_KEY भेजें; रद्द होने पर नई key बनाएं
402 INSUFFICIENT_CREDITSबैलेंस कॉल को कवर नहीं करताConsole Billing में टॉप अप करें
हर अनुरोध पर 404Base URL में वह पथ है जो endpoint पहले से जोड़ता हैOpenAI क्लाइंट के लिए https://openapi.felo.ai/api/v1 और Anthropic क्लाइंट के लिए https://openapi.felo.ai/api उपयोग करें
एक मॉडल पर 404मॉडल ID सार्वजनिक नहीं है, या endpoint उसे सेवा नहीं देतामॉडल पेज और endpoint के दस्तावेज़ पर मॉडल ID जांचें
400 model या max_tokens त्रुटिआवश्यक फ़ील्ड गुम है, या मॉडल अनुरोध स्वरूप स्वीकार नहीं करताMessages के लिए max_tokens जोड़ें; असमर्थित फ़ील्ड हटाएं
429दर सीमा, या upstream प्रदाता की सीमाRetry-After पढ़ें; Errors, Limits, and Retries देखें
5xxupstream या सेवा विफलताbackoff के साथ दोबारा प्रयास करें; बने रहने पर request_id शामिल करें
स्ट्रीम जुड़ती है लेकिन कुछ नहीं भेजतीकोई proxy प्रतिक्रिया buffer कर रहा है, या event parser गलत फ़ॉर्मेट की अपेक्षा करता हैस्ट्रीम को क्रमशः पढ़ें; अपने proxy में response buffering बंद करें
कार्य कभी पूरा नहीं होतागलत poll endpoint, या टर्मिनल स्थिति संभाली नहीं गईकार्य के अपने स्थिति endpoint को पोल करें और टर्मिनल मानों पर रुकें
Tool calls अनदेखे जाते हैंमॉडल उस क्षमता का दावा नहीं करताकैटलॉग में supported_parameters जांचें
Data API 404 लौटाता है/v1/beta prefix दो बार जोड़ा गयासंदर्भ में लिखा पथ ठीक वैसा ही उपयोग करें

प्रमाणीकरण

रद्द की गई key ऐसा message लौटाती है जिसमें key prefix का नाम होता है:

{
  "status": 401,
  "code": "UNAUTHORIZED",
  "message": "API Key has been revoked (keyPrefix=...)"
}

चेकलिस्ट:

  • Model API और Felo APIs के लिए हेडर Authorization: Bearer <key> है।
  • Data API X-API-Key: <key> भी स्वीकार करता है।
  • key उद्धरण चिह्नों में नहीं है, और कॉपी किए गए environment variable से कोई अनुगामी newline नहीं है।
  • तैनात वातावरण में वेरिएबल वास्तव में सेट है; जो key स्थानीय रूप से काम करती है वह production में गुम हो सकती है।
  • key हटाई या बदली नहीं गई है। हटाई या बदली गई key दोबारा नहीं दिखाई जा सकती; नई बनाएं।

key बनाने और सीमाओं के लिए Authentication देखें।

Base URL के जाल

क्लाइंटसही base URL
OpenAI SDKhttps://openapi.felo.ai/api/v1
Anthropic SDKhttps://openapi.felo.ai/api
कच्चा मॉडल endpointhttps://openapi.felo.ai/api/v1/chat/completions, /responses या /messages
Data APIhttps://openapi.felo.ai/v1/beta
Felo /v2 APIshttps://openapi.felo.ai/v2

दो सामान्य गलतियां:

  1. ऐसे base URL में /chat/completions जोड़ना जिसे SDK पहले से बढ़ाता है।
  2. Anthropic base URL को https://openapi.felo.ai/api/v1 सेट करना। SDK /v1/messages जोड़ता है, इसलिए अनुरोध /api/v1/v1/messages बन जाता है।

मॉडल ID की समस्याएं

मॉडल ID कैटलॉग की सार्वजनिक ID हैं, upstream प्रदाता के आंतरिक नाम या डिस्प्ले नाम नहीं।

  • ID को मॉडल पेज पर या GET /api/v1/models में खोजें।
  • पुष्टि करें कि मॉडल उस प्रोटोकॉल का समर्थन करता है जिसे आप कॉल कर रहे हैं (supported_protocols)।
  • अगर आपने चैनल पिन किया है, तो पुष्टि करें कि वह चैनल उस मॉडल के लिए प्रकाशित और runnable है। अनुपलब्ध चैनल fallback नहीं है।

Channels and Provider Routing देखें।

स्ट्रीमिंग की समस्याएं

  • stream: true को query पैरामीटर के रूप में नहीं, request body में सेट करें।
  • प्रतिक्रिया body को स्ट्रीम के रूप में पढ़ें। पूरी प्रतिक्रिया की प्रतीक्षा करना स्ट्रीमिंग को व्यर्थ कर देता है।
  • कुछ proxy और serverless प्लेटफ़ॉर्म प्रतिक्रियाएं buffer करते हैं। जिस रूट से अनुरोध proxy होता है उसके लिए buffering बंद करें।
  • Chat Completions choices[0].delta स्ट्रीम करता है, choices[0].message नहीं। अंतिम सामग्री कई chunks में आती है।
  • कनेक्शन टूटने पर स्ट्रीम बिना साफ़ टर्मिनल इवेंट के समाप्त हो सकती है। टूटे कनेक्शन को अपूर्ण प्रतिक्रिया मानें।

असिंक्रोनस कार्य की समस्याएं

  • उसी कार्य परिवार का स्थिति endpoint पोल करें। Felo वर्कफ़्लो GET /v2/tasks/{task_id}/status उपयोग करते हैं; मॉडल वीडियो और इमेज कार्य अपने जनरेशन endpoint उपयोग करते हैं।
  • हर टर्मिनल स्थिति पर रुकें, जिसमें विफलताएं और समाप्तियां भी शामिल हैं, केवल सफलता नहीं।
  • वीडियो और इमेज callbacks वर्तमान में अनदेखे जाते हैं। webhook की प्रतीक्षा न करें।
  • परिणाम URL अल्पकालिक हो सकता है। डाउनलोड समाप्त होने पर स्थिति endpoint से नया URL मांगें।
  • दोबारा सबमिट करने से पहले कार्य जांचें। चल रहे कार्य को दोबारा सबमिट करने से डुप्लिकेट बनता है, और दोनों का बिल लगता है।

Async Tasks देखें।

Data API की समस्याएं

  • Data API संदर्भ से सटीक method पथ रखें।
  • Request bodies आपूर्तिकर्ता-विशिष्ट हैं। जो फ़ील्ड एक आपूर्तिकर्ता के लिए काम करता है वह दूसरे के लिए काम करने की गारंटी नहीं है।
  • प्रदाता त्रुटि 4xx प्रतिक्रिया के अंदर प्रदाता-विशिष्ट message के साथ आ सकती है। request_id और प्रतिक्रिया body लॉग करें।

सुरक्षा अनुस्मारक

  • API key कभी ब्राउज़र कोड, मोबाइल ऐप बंडल या सार्वजनिक रेपो में न रखें। इसे सर्वर पर रखें और अनुरोध proxy करें।
  • पूरी key लॉग न करें। पहचान के लिए ज़रूरत हो तो prefix लॉग करें।
  • अगर key लीक हो सकती है तो तुरंत बदलें।

सहायता से संपर्क करने से पहले

ये एकत्र करें:

  1. Endpoint और HTTP method।
  2. HTTP स्टेटस, code और request_id।
  3. मॉडल ID या task ID।
  4. समयक्षेत्र के साथ टाइमस्टैम्प।
  5. गोपनीय जानकारी हटाया गया न्यूनतम request body।

इसे खाते के ईमेल के साथ सहायता को भेजें। पूरी API key शामिल न करें।

संबंधित