שאלות נפוצות
פתרון תקלות
תקנו בעיות אימות, מודל, סטרימינג, משימות והגבלת קצב עם רשימת בדיקה שמתחילה בתסמין.
התחילו מהתסמין, ואז עקבו אחרי התיקון. רוב הכשלים נובעים מכתובת הבסיס, מהמפתח, ממזהה המודל או מהיתרה.
טבלה שמתחילה מהתסמין
| תסמין | סיבה סבירה | תיקון |
|---|---|---|
401 UNAUTHORIZED | המפתח חסר, שגוי, בוטל או לא נשלח | שלחו Authorization: Bearer $FELO_API_KEY; צרו מפתח חדש אם הוא בוטל |
402 INSUFFICIENT_CREDITS | היתרה אינה מכסה את הקריאה | טענו ב-Console Billing |
| 404 בכל בקשה | כתובת הבסיס כוללת נתיב שנקודת הקצה כבר מוסיפה | השתמשו ב-https://openapi.felo.ai/api/v1 עבור לקוחות OpenAI וב-https://openapi.felo.ai/api עבור לקוחות Anthropic |
| 404 במודל אחד | מזהה המודל אינו ציבורי, או שנקודת הקצה אינה מגישה אותו | בדקו את מזהה המודל בעמוד המודלים ובתיעוד של נקודת הקצה |
שגיאת 400 ב-model או ב-max_tokens | שדה חובה חסר, או שהמודל אינו מקבל את צורת הבקשה | הוסיפו max_tokens עבור Messages; הסירו שדות לא נתמכים |
| 429 | מגבלת קצב, או מגבלה של ספק חיצוני | קראו את Retry-After; ראו שגיאות, מגבלות וניסיונות חוזרים |
| 5xx | כשל חיצוני או כשל שירות | נסו שוב עם השהיה גדלה; צרפו request_id אם זה נמשך |
| הזרם מתחבר אבל לא שולח דבר | פרוקסי חוצץ את התגובה, או שמנתח האירועים מצפה לפורמט שגוי | קראו את הזרם בהדרגה; בטלו חוצץ תגובות בפרוקסי שלכם |
| המשימה לא מסתיימת לעולם | נקודת קצה שגויה לבדיקה, או שלא טופל סטטוס סופי | בדקו את נקודת הקצה של מצב המשימה שלה ועצרו בערכים סופיים |
| קריאות לכלים מתעלמות | המודל אינו מפרסם את היכולת הזו | בדקו את supported_parameters בקטלוג |
| Data API מחזיר 404 | הקידומת /v1/beta נוספה פעמיים | השתמשו בנתיב בדיוק כפי שהוא כתוב במסמכים |
אימות
מפתח שבוטל מחזיר הודעה שמציינת את קידומת המפתח:
{
"status": 401,
"code": "UNAUTHORIZED",
"message": "API Key has been revoked (keyPrefix=...)"
}רשימת בדיקה:
- הכותרת היא
Authorization: Bearer <key>עבור Model API וממשקי Felo. - ה-Data API מקבל גם
X-API-Key: <key>. - המפתח אינו עטוף במרכאות, ואין שורה חדשה בסוף שהגיעה מהעתקה של משתנה סביבה.
- בסביבה שפורסמה המשתנה באמת מוגדר; מפתח שעובד מקומית עשוי להיות חסר בייצור.
- המפתח לא נמחק ולא הוחלף. מפתח שנמחק או הוחלף אינו יכול להופיע שוב; צרו חדש.
ראו אימות ליצירת מפתחות ולמגבלות.
מלכודות בכתובת הבסיס
| לקוח | כתובת בסיס נכונה |
|---|---|
| OpenAI SDK | https://openapi.felo.ai/api/v1 |
| Anthropic SDK | https://openapi.felo.ai/api |
| נקודת קצה גולמית של מודל | https://openapi.felo.ai/api/v1/chat/completions, /responses או /messages |
| Data API | https://openapi.felo.ai/v1/beta |
ממשקי /v2 של Felo | https://openapi.felo.ai/v2 |
שתי טעויות נפוצות:
- הוספת
/chat/completionsלכתובת בסיס שה-SDK כבר מאריך. - הגדרת כתובת הבסיס של Anthropic ל-
https://openapi.felo.ai/api/v1. ה-SDK מוסיף/v1/messages, ולכן הבקשה הופכת ל-/api/v1/v1/messages.
בעיות במזהה מודל
מזהי מודלים הם המזהים הציבוריים מהקטלוג, לא השמות הפנימיים של הספק החיצוני ולא שם תצוגה.
- חפשו את המזהה בעמוד המודלים או ב-
GET /api/v1/models. - אשרו שהמודל תומך בפרוטוקול שאליו אתם קוראים (
supported_protocols). - אם נעצתם ערוץ, אשרו שהערוץ מפורסם ופועל עבור אותו מודל. ערוץ לא זמין אינו מהווה נפילה חלופית.
ראו ערוצים וניתוב ספקים.
בעיות בסטרימינג
- הגדירו
stream: trueבגוף הבקשה, לא כפרמטר שאילתה. - קראו את גוף התגובה כזרם. המתנה לתגובה המלאה מנטרלת את הסטרימינג.
- חלק מהפרוקסים ופלטפורמות serverless חוצצים תגובות. בטלו את החציצה עבור המסלול שמעביר את הבקשה.
- Chat Completions משדר
choices[0].delta, לאchoices[0].message. התוכן הסופי מגיע לאורך נתחים רבים. - זרם יכול להסתיים בלי אירוע סיום נקי אם החיבור נופל. התייחסו לחיבור שנפל כתגובה לא שלמה.
בעיות במשימות אסינכרוניות
- בדקו את נקודת הקצה של המצב ששייכת למשפחת המשימה. תהליכי Felo משתמשים ב-
GET /v2/tasks/{task_id}/status; משימות וידאו ותמונה של מודלים משתמשות בנקודות הקצה של היצירה שלהן. - עצרו בכל סטטוס סופי, כולל כשלים ותפוגות, לא רק בהצלחה.
- קולבקים של וידאו ותמונה מתעלמים מהם כעת. אל תמתינו ל-webhook.
- כתובת תוצאה יכולה להיות קצרת חיים. בקשו כתובת חדשה מנקודת הקצה של המצב אם הורדה פגה.
- בדקו את המשימה לפני שליחה מחדש. שליחה מחדש של משימה שרצה יוצרת כפילות, ושתיהן מחויבות.
ראו משימות אסינכרוניות.
בעיות ב-Data API
- שמרו על נתיב השיטה המדויק ממסמכי Data API.
- גופי בקשה ייחודיים לספק. שדה שעובד עבור ספק אחד אינו מובטח לעבוד עבור אחר.
- שגיאת ספק יכולה להגיע בתוך תגובת 4xx עם הודעה ייחודית לספק. תעדו בלוג את
request_idואת גוף התגובה.
תזכורות אבטחה
- לעולם אל תשימו מפתח API בקוד דפדפן, בחבילת אפליקציית מובייל או במאגר ציבורי. השאירו אותו בשרת והעבירו בקשות דרך פרוקסי.
- אל תתעדו בלוג את המפתח המלא. תעדו קידומת אם אתם צריכים לזהות אותו.
- החליפו מפתח מיד אם ייתכן שהוא דלף.
לפני פנייה לתמיכה
אספו:
- נקודת הקצה ושיטת ה-HTTP.
- סטטוס ה-HTTP,
codeו-request_id. - מזהה מודל או מזהה משימה.
- חותמת זמן עם אזור זמן.
- גוף בקשה מינימלי עם הסודות מוסרים.
שלחו אותו לתמיכה עם כתובת הדואר האלקטרוני של החשבון. אל תכללו את מפתח ה-API המלא.