عام سوالات
مسائل کا حل
تصدیق، ماڈل، اسٹریمنگ، کام اور ریٹ لمٹ کے مسائل کو علامت سے شروع ہونے والی چیک لسٹ کے ساتھ ٹھیک کریں۔
علامت سے آغاز کریں، پھر حل کی پیروی کریں۔ زیادہ تر ناکامیاں base URL، کلید، ماڈل ID یا بیلنس کی وجہ سے ہوتی ہیں۔
علامت کے مطابق جدول
| علامت | ممکنہ وجہ | حل |
|---|---|---|
401 UNAUTHORIZED | کلید غائب، غلط، منسوخ شدہ یا بھیجی نہیں گئی | Authorization: Bearer $FELO_API_KEY بھیجیں؛ اگر منسوخ ہو گئی ہو تو نئی کلید بنائیں |
402 INSUFFICIENT_CREDITS | بیلنس اُس کال کے لیے کافی نہیں | Console Billing میں ٹاپ اپ کریں |
| ہر درخواست پر 404 | base 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 | ریٹ کی حد، یا اپ اسٹریم فراہم کنندہ کی حد | Retry-After پڑھیں؛ ایررز، حدود اور دوبارہ کوششیں دیکھیں |
| 5xx | اپ اسٹریم یا سروس کی ناکامی | بیک آف کے ساتھ دوبارہ کوشش کریں؛ اگر برقرار رہے تو request_id شامل کریں |
| اسٹریم جڑتا ہے مگر کچھ نہیں بھیجتا | کوئی پراکسی جواب بفر کر رہا ہے، یا ایونٹ پارسر غلط فارمیٹ کی توقع رکھتا ہے | اسٹریم کو بتدریج پڑھیں؛ اپنی پراکسی میں response buffering بند کریں |
| ٹاسک کبھی مکمل نہیں ہوتا | غلط پول endpoint، یا کسی آخری حالت کو سنبھالا نہیں گیا | ٹاسک کے اپنے اسٹیٹس endpoint کو پول کریں اور آخری ویلیوز پر رک جائیں |
| ٹول کالز نظر انداز ہوتی ہیں | ماڈل اُس صلاحیت کا اعلان نہیں کرتا | کیٹلاگ میں supported_parameters چیک کریں |
| Data API 404 واپس کرتا ہے | /v1/beta پریفکس دو بار شامل ہو گیا | راستہ بالکل ویسا ہی استعمال کریں جیسا ریفرنس میں لکھا ہے |
تصدیق
منسوخ شدہ کلید ایسا پیغام واپس کرتی ہے جس میں کلید کا پریفکس درج ہوتا ہے:
{
"status": 401,
"code": "UNAUTHORIZED",
"message": "API Key has been revoked (keyPrefix=...)"
}چیک لسٹ:
- Model API اور Felo APIs کے لیے ہیڈر
Authorization: Bearer <key>ہے۔ - Data API
X-API-Key: <key>بھی قبول کرتا ہے۔ - کلید واوین میں لپٹی نہیں ہے، اور کاپی شدہ environment variable سے کوئی آخری نیو لائن نہیں آئی۔
- ڈیپلائے شدہ ماحول میں واقعی یہ ویری ایبل سیٹ ہے؛ جو کلید مقامی طور پر کام کرتی ہے وہ پروڈکشن میں غائب ہو سکتی ہے۔
- کلید حذف یا تبدیل نہیں ہوئی۔ حذف شدہ یا تبدیل شدہ کلید دوبارہ نہیں دکھائی جا سکتی؛ نئی بنائیں۔
کلید کی تخلیق اور حدود کے لیے تصدیق دیکھیں۔
base URL کے پھندے
| کلائنٹ | درست base URL |
|---|---|
| OpenAI SDK | https://openapi.felo.ai/api/v1 |
| Anthropic SDK | https://openapi.felo.ai/api |
| خام ماڈل endpoint | https://openapi.felo.ai/api/v1/chat/completions، /responses یا /messages |
| Data API | https://openapi.felo.ai/v1/beta |
Felo /v2 APIs | https://openapi.felo.ai/v2 |
دو عام غلطیاں:
- ایسے base URL میں
/chat/completionsشامل کرنا جسے SDK خود ہی بڑھاتا ہے۔ - Anthropic base URL کو
https://openapi.felo.ai/api/v1پر سیٹ کرنا۔ SDK/v1/messagesجوڑتا ہے، لہٰذا درخواست/api/v1/v1/messagesبن جاتی ہے۔
ماڈل ID کے مسائل
ماڈل IDs کیٹلاگ کے عوامی IDs ہیں، اپ اسٹریم فراہم کنندہ کے اندرونی نام یا ڈسپلے نام نہیں۔
- ID ماڈلز کے صفحے پر یا
GET /api/v1/modelsمیں تلاش کریں۔ - تصدیق کریں کہ ماڈل اُس پروٹوکول کی معاونت کرتا ہے جسے آپ کال کر رہے ہیں (
supported_protocols)۔ - اگر آپ نے کوئی چینل پن کیا ہے تو تصدیق کریں کہ وہ چینل اُس ماڈل کے لیے شائع شدہ اور قابلِ عمل ہے۔ غیر دستیاب چینل کوئی متبادل نہیں۔
چینلز اور فراہم کنندہ روٹنگ دیکھیں۔
اسٹریمنگ کے مسائل
stream: trueدرخواست باڈی میں سیٹ کریں، query parameter کے طور پر نہیں۔- response body کو اسٹریم کے طور پر پڑھیں۔ مکمل جواب کا انتظار کرنا اسٹریمنگ کا مقصد ختم کر دیتا ہے۔
- کچھ پراکسیز اور serverless پلیٹ فارمز جوابات بفر کرتے ہیں۔ اُس روٹ کے لیے buffering بند کریں جو درخواست کی پراکسی کرتا ہے۔
- Chat Completions
choices[0].deltaاسٹریم کرتا ہے،choices[0].messageنہیں۔ آخری مواد کئی chunks میں آتا ہے۔ - اگر کنکشن ٹوٹ جائے تو اسٹریم بغیر کسی صاف آخری ایونٹ کے ختم ہو سکتا ہے۔ ٹوٹے ہوئے کنکشن کو نامکمل جواب سمجھیں۔
async ٹاسک کے مسائل
- وہی اسٹیٹس endpoint پول کریں جو اُس ٹاسک کے خاندان سے تعلق رکھتا ہے۔ Felo ورک فلوز
GET /v2/tasks/{task_id}/statusاستعمال کرتے ہیں؛ ماڈل ویڈیو اور تصویر کے ٹاسکس اپنے جنریشن endpoints استعمال کرتے ہیں۔ - ہر آخری حالت پر رکیں، بشمول ناکامیوں اور میعاد ختم ہونے کے، صرف کامیابی پر نہیں۔
- ویڈیو اور تصویر کے callbacks فی الحال نظر انداز کیے جاتے ہیں۔ webhook کا انتظار نہ کریں۔
- نتیجے کا URL قلیل المدت ہو سکتا ہے۔ اگر ڈاؤن لوڈ کی میعاد ختم ہو جائے تو اسٹیٹس endpoint سے تازہ URL طلب کریں۔
- دوبارہ جمع کرانے سے پہلے ٹاسک چیک کریں۔ چلتے ہوئے ٹاسک کو دوبارہ جمع کرانے سے ڈپلیکیٹ بنتا ہے اور دونوں کا بل لگتا ہے۔
async ٹاسکس دیکھیں۔
Data API کے مسائل
- Data API ریفرنس سے بالکل وہی میتھڈ راستہ برقرار رکھیں۔
- درخواست باڈیز فراہم کنندہ کے لحاظ سے مخصوص ہوتی ہیں۔ جو فیلڈ ایک فراہم کنندہ کے لیے کام کرتا ہے، ضروری نہیں کہ دوسرے کے لیے بھی کرے۔
- فراہم کنندہ کی خرابی 4xx جواب کے اندر فراہم کنندہ کے مخصوص پیغام کے ساتھ آ سکتی ہے۔
request_idاور response body لاگ کریں۔
سیکیورٹی کی یاد دہانیاں
- API کلید کبھی براؤزر کوڈ، موبائل ایپ بنڈل یا عوامی ریپوزٹری میں نہ رکھیں۔ اِسے سرور پر رکھیں اور درخواستیں پراکسی کریں۔
- مکمل کلید لاگ نہ کریں۔ اگر شناخت کی ضرورت ہو تو پریفکس لاگ کریں۔
- اگر کلید لیک ہونے کا امکان ہو تو فوراً تبدیل کریں۔
معاونت سے رابطہ کرنے سے پہلے
یہ جمع کریں:
- endpoint اور HTTP میتھڈ۔
- HTTP اسٹیٹس،
codeاورrequest_id۔ - ماڈل ID یا ٹاسک ID۔
- ٹائم اسٹیمپ مع ٹائم زون۔
- ایک کم سے کم درخواست باڈی جس سے خفیہ معلومات ہٹا دی گئی ہوں۔
یہ اکاؤنٹ کی ای میل کے ساتھ معاونت کو بھیجیں۔ مکمل API کلید شامل نہ کریں۔