Gambaran Umum
Agent-First API dari LemonData memperkaya respons kesalahan dengan petunjuk terstruktur yang dapat diurai dan ditindaklanjuti oleh agen AI secara langsung — tanpa pencarian web, tanpa melihat dokumentasi, tanpa tebak-tebakan. Setiap respons kesalahan menyertakan bidang opsional sepertidid_you_mean, suggestions, hint, retryable, dan retry_after di dalam objek error standar. Bidang-bidang ini kompatibel ke belakang — klien yang tidak menggunakannya tidak akan melihat perbedaan.
Bidang Petunjuk Kesalahan
Semua bidang petunjuk adalah ekstensi opsional di dalam objekerror:
| Bidang | Tipe | Deskripsi |
|---|---|---|
did_you_mean | string | Nama model yang paling mendekati |
suggestions | array | Model yang direkomendasikan dengan metadata |
alternatives | array | Model alternatif yang tersedia saat ini |
hint | string | Panduan langkah selanjutnya yang dapat dibaca manusia/agen |
retryable | boolean | Apakah mengulangi permintaan yang sama dapat berhasil |
retry_after | number | Detik untuk menunggu sebelum mencoba lagi |
balance_usd | number | Saldo akun saat ini dalam USD |
estimated_cost_usd | number | Estimasi biaya dari permintaan yang gagal |
Contoh Kode Kesalahan
model_not_found (400(400)
Ketika nama model tidak cocok dengan model aktif apa pun:did_you_mean menggunakan:
- Pemetaan alias statis (dari data kesalahan produksi)
- Pencocokan string yang dinormalisasi (menghapus tanda hubung, tidak peka huruf besar-kecil)
- Pencocokan jarak edit (ambang batas ≤ 3)
insufficient_balance (402)
Ketika saldo akun terlalu rendah untuk estimasi biaya:suggestions berisi model-model yang lebih murah dari estimasi biaya yang dapat dialihkan oleh agen.
all_channels_failed (503)
Ketika semua saluran hulu untuk suatu model tidak tersedia:retryable bernilai false ketika alasannya adalah no_channels (tidak ada saluran yang dikonfigurasi untuk model ini). Bernilai true hanya untuk kegagalan sementara seperti pemutusan sirkuit atau kehabisan kuota.
</Note>
rate_limit_exceeded (429)
retry_after dihitung dari waktu pengaturan ulang jendela batas tingkat yang sebenarnya.
context_length_exceeded (400)
Ketika input melebihi jendela konteks model (kesalahan hulu, diperkaya dengan petunjuk):Header Endpoint Native
Saat Anda memanggil/v1/chat/completions dengan model yang memiliki endpoint native (Anthropic atau Gemini), respons sukses akan menyertakan header optimasi:
| Penyedia Model | Endpoint yang Disarankan | Manfaat |
|---|---|---|
| Anthropic (Claude) | /v1/messages | Tanpa konversi format, pemikiran yang diperluas, prompt caching |
| Google (Gemini) | /v1beta/gemini | Tanpa konversi format, grounding, pengaturan keamanan |
| OpenAI | — | Chat completions sudah merupakan format native |
Peningkatan /v1/models
Tiga bidang baru dalam ekstensilemondata di setiap objek model:
| Bidang | Nilai | Deskripsi |
|---|---|---|
category | chat, image, video, audio, tts, stt, 3d, embedding, rerank | Tipe model |
pricing_unit | per_token, per_image, per_second, per_request | Bagaimana model ditagih |
cache_pricing | objek atau null | Harga prompt cache hulu + diskon semantic cache platform |
Pemfilteran Kategori
llms.txt
Gambaran umum API yang dapat dibaca mesin tersedia di:- Templat panggilan pertama dengan contoh yang berfungsi
- Nama model umum (dihasilkan secara dinamis dari data penggunaan)
- Semua 12 endpoint API
- Parameter filter untuk penemuan model
- Panduan penanganan kesalahan
llms.txt sebelum panggilan API pertama mereka biasanya dapat berhasil pada percobaan pertama.