Felo API PlatformFelo API Platform

Часті запитання

Усунення проблем

Усувайте проблеми з автентифікацією, моделями, потоковою передачею, завданнями й обмеженнями швидкості за симптомами.

Почніть із симптому, потім перейдіть до виправлення. Більшість збоїв спричинені базовою URL-адресою, ключем, ID моделі або балансом.

Таблиця за симптомами

СимптомЙмовірна причинаВиправлення
401 UNAUTHORIZEDКлюч відсутній, неправильний, відкликаний або не надісланийНадішліть Authorization: Bearer $FELO_API_KEY; створіть новий ключ, якщо його відкликано
402 INSUFFICIENT_CREDITSБаланс не покриває викликПоповніть баланс у Console Billing
404 на кожен запитБазова URL-адреса містить шлях, який endpoint уже додаєВикористовуйте https://openapi.felo.ai/api/v1 для клієнтів OpenAI і https://openapi.felo.ai/api для клієнтів Anthropic
404 на одну модельID моделі не є публічним або endpoint її не обслуговуєПеревірте ID моделі на сторінці моделей і в документації endpoint
400 помилка model або max_tokensВідсутнє обов'язкове поле або модель не приймає структуру запитуДодайте max_tokens для Messages; видаліть непідтримувані поля
429Обмеження швидкості або обмеження вищого постачальникаПрочитайте Retry-After; див. Помилки, обмеження та повторні спроби
5xxЗбій вищого постачальника або сервісуПовторіть із збільшенням інтервалу; додайте request_id, якщо це повторюється
Потік підключається, але нічого не надсилаєПроксі буферизує відповідь або парсер подій очікує неправильний форматЧитайте потік поступово; вимкніть буферизацію відповіді у своєму проксі
Завдання ніколи не завершуєтьсяНеправильний endpoint опитування або термінальний статус не обробленоОпитуйте власний endpoint статусу завдання та зупиняйтеся на термінальних значеннях
Виклики інструментів проігнорованоМодель не заявляє цю можливістьПеревірте supported_parameters у каталозі
Data API повертає 404Префікс /v1/beta додано двічіВикористовуйте шлях саме так, як написано в довіднику

Автентифікація

Відкликаний ключ повертає повідомлення, у якому вказано префікс ключа:

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

Контрольний список:

  • Заголовок має вигляд Authorization: Bearer <key> для Model API та Felo APIs.
  • Data API також приймає X-API-Key: <key>.
  • Ключ не взято в лапки, і немає завершального символу нового рядка від скопійованої змінної середовища.
  • У розгорнутому середовищі змінна справді встановлена; ключ, який працює локально, може бути відсутнім у продакшені.
  • Ключ не було видалено або змінено. Видалений або змінений ключ неможливо показати знову; створіть новий.

Про створення ключів і ліміти див. Автентифікація.

Пастки базової URL-адреси

КлієнтПравильна базова URL-адреса
OpenAI SDKhttps://openapi.felo.ai/api/v1
Anthropic SDKhttps://openapi.felo.ai/api
Прямий endpoint моделіhttps://openapi.felo.ai/api/v1/chat/completions, /responses або /messages
Data APIhttps://openapi.felo.ai/v1/beta
Felo APIs /v2https://openapi.felo.ai/v2

Дві типові помилки:

  1. Додавання /chat/completions до базової URL-адреси, яку SDK уже розширює.
  2. Установлення базової URL-адреси Anthropic як https://openapi.felo.ai/api/v1. SDK додає /v1/messages, тому запит стає /api/v1/v1/messages.

Проблеми з ID моделі

ID моделей — це публічні ID з каталогу, а не внутрішні назви вищого постачальника чи відображувана назва.

  • Знайдіть ID на сторінці моделей або в GET /api/v1/models.
  • Переконайтеся, що модель підтримує протокол, який ви викликаєте (supported_protocols).
  • Якщо ви прив'язали канал, переконайтеся, що цей канал опубліковано та запущено для цієї моделі. Недоступний канал не є резервним варіантом.

Див. Канали та маршрутизація постачальників.

Проблеми з потоковою передачею

  • Установіть stream: true у тілі запиту, а не як параметр запиту.
  • Читайте тіло відповіді як потік. Очікування повної відповіді зводить нанівець потокову передачу.
  • Деякі проксі та безсерверні платформи буферизують відповіді. Вимкніть буферизацію для маршруту, який проксіює запит.
  • Chat Completions передає choices[0].delta, а не choices[0].message. Остаточний вміст надходить багатьма фрагментами.
  • Потік може завершитися без чистої термінальної події, якщо з'єднання розірвано. Вважайте розірване з'єднання незавершеною відповіддю.

Проблеми з асинхронними завданнями

  • Опитуйте endpoint статусу, що належить родині завдань. Робочі процеси Felo використовують GET /v2/tasks/{task_id}/status; завдання відео та зображень моделей використовують власні endpoint генерації.
  • Зупиняйтеся на кожному термінальному статусі, зокрема на збоях і завершеннях строку дії, а не лише на успіху.
  • Зворотні виклики для відео та зображень наразі ігноруються. Не чекайте на webhook.
  • URL-адреса результату може бути короткочасною. Запросіть свіжу URL-адресу з endpoint статусу, якщо завантаження втратило чинність.
  • Перевірте завдання, перш ніж надсилати повторно. Повторне надсилання запущеного завдання створює дублікат, і обидва оплачуються.

Див. Асинхронні завдання.

Проблеми з Data API

  • Дотримуйтеся точного шляху методу з довідника Data API.
  • Тіла запитів залежать від постачальника. Поле, яке працює для одного постачальника, не гарантовано працює для іншого.
  • Помилка постачальника може надходити всередині відповіді 4xx із повідомленням, специфічним для постачальника. Записуйте в журнал request_id і тіло відповіді.

Нагадування про безпеку

  • Ніколи не вставляйте API-ключ у код браузера, пакет мобільного застосунку або публічний репозиторій. Тримайте його на сервері та проксіюйте запити.
  • Не записуйте в журнал повний ключ. Якщо потрібно його ідентифікувати, записуйте префікс.
  • Негайно змініть ключ, якщо він міг бути скомпрометований.

Перш ніж звертатися до підтримки

Зберіть:

  1. Endpoint і метод HTTP.
  2. Код стану HTTP, code і request_id.
  3. ID моделі або ID завдання.
  4. Часову позначку із зазначенням часового поясу.
  5. Мінімальне тіло запиту без секретів.

Надішліть це до підтримки разом з електронною поштою облікового запису. Не додавайте повний API-ключ.

Пов'язані розділи