Format Respon Kesalahan
Chat Completions, Responses, Messages, dan Gemini adalah batas protokol publik, bukan API Web. Error protokol native tidak dibungkus dengan envelope Web{ success, data, error }. Contoh berikut berlaku untuk error gateway kompatibel OpenAI pada Chat dan Responses:
message dan type tersedia; code, param, dan ekstensi petunjuk bersifat opsional. Messages dan Gemini memakai keluarga error native masing-masing. Error validasi upstream dipertahankan jika aman untuk dikembalikan; 400/422 deterministik tidak mengganti channel dan tidak ada retry setelah byte pertama dikirim.
Kode Status HTTP
Jenis Kesalahan
Kesalahan Otentikasi (401)
Kesalahan Pembayaran (402)
Kesalahan Akses (403)
Kesalahan Validasi (400)
model_not_found.
Kesalahan Batas Laju (429)
Ketika Anda melewati batas laju:Retry-After dan field retry_after keduanya menunjukkan jumlah detik yang tepat untuk menunggu sebelum mencoba lagi.
Payload Terlalu Besar (413)
Ketika ukuran input atau file melebihi batas:- File gambar terlalu besar (max 20MB)
- File audio terlalu besar (max 25MB)
- Teks input melebihi panjang konteks model
Kesalahan Upstream (502, 503)
Ketika semua kanal gagal, respons menyertakan model alternatif:
Menangani Kesalahan di Python
Menangani Kesalahan di JavaScript
Praktik Terbaik
Terapkan penundaan eksponensial
Terapkan penundaan eksponensial
Saat dibatasi oleh laju, tunggu semakin lama antara percobaan ulang:
Tetapkan batas waktu
Tetapkan batas waktu
Selalu tetapkan batas waktu yang wajar untuk menghindari permintaan yang menggantung:
Catat kesalahan untuk debugging
Catat kesalahan untuk debugging
Catat respons kesalahan lengkap termasuk ID permintaan untuk dukungan:
Tangani kesalahan spesifik model
Tangani kesalahan spesifik model
Beberapa model memiliki persyaratan khusus (mis. max tokens, format gambar).
Validasi input sebelum membuat permintaan.