Kesalahan Umum LiteLLM: Timeout, Peringatan Anggaran, dan Kegagalan Provider
Sejumlah besar Kesalahan Umum LiteLLM pada awalnya terlihat seperti masalah provider: permintaan mengalami timeout, peringatan anggaran tidak pernah tiba, atau model yang sehat tiba-tiba mengembalikan 404 atau 503. Perbaikan tercepat adalah mengidentifikasi lapisan kontrol yang gagal sebelum mengubah retry atau mengganti model.
Gunakan panduan ini untuk membedakan tenggat waktu klien, kebijakan gateway LiteLLM, konfigurasi model, kapasitas provider, dan penegakan pengeluaran. Panduan ini mencakup alur kerja insiden kecil yang dapat Anda ulangi untuk timeout, kontrol anggaran, dan kegagalan provider.
Jawaban singkat: Simpan satu permintaan yang gagal, klasifikasikan kesalahannya, reproduksi dengan panggilan minimal, dan ubah satu kontrol pada satu waktu. Mulailah dengan jenis pengecualian ternormalisasi LiteLLM, metadata permintaan, dan ID panggilan—bukan hanya status HTTP.
LiteLLM memetakan banyak kegagalan provider ke jenis pengecualian yang kompatibel dengan OpenAI serta mengekspos status HTTP, pesan, dan provider asal pada pengecualian tersebut. Hal ini membuat Kesalahan Umum LiteLLM lebih mudah ditelusuri ketika Anda mempertahankan konteks kesalahan asli alih-alih menggantinya dengan 500 generik. Lihat referensi pemetaan pengecualian LiteLLM untuk pemetaan terkini.
Matriks Kesalahan Umum LiteLLM
| Apa yang Anda lihat | Lapisan yang paling mungkin | Pemeriksaan pertama | Jangan lakukan terlebih dahulu |
|---|---|---|---|
APITimeoutError, 408, atau stream yang macet |
Tenggat waktu klien, proxy, atau upstream | Bandingkan timeout permintaan, timeout deployment, timeout router, dan latensi upstream | Menaikkan semua timeout secara global |
BudgetExceededError, pemblokiran anggaran yang tidak terduga, atau tidak ada pemblokiran anggaran sama sekali |
Pelacakan pengeluaran dan database | Konfirmasikan Postgres, cakupan anggaran, jendela reset, serta virtual key atau tim yang digunakan | Menganggap max_budget melindungi proxy tanpa DB |
| Anggaran terlampaui tetapi tidak ada notifikasi | Pengiriman peringatan dan jenis peringatan | Uji channel peringatan dan ambang batas yang dikonfigurasi secara terpisah dari batas keras | Menganggap peringatan sebagai bukti bahwa penegakan berfungsi |
401 atau 403 |
Autentikasi gateway atau izin provider | Verifikasi virtual key yang tepat, kredensial provider, model yang diizinkan, dan endpoint | Mencoba ulang berulang kali |
404 atau “model tidak valid” |
Nama model publik yang diminta dibandingkan deployment yang dikonfigurasi | Bandingkan model pada permintaan dengan model_name di model_list |
Mengganti nama provider upstream secara membabi buta |
429 |
Provider, konkurensi deployment, RPM/TPM, atau kebijakan rate gateway | Periksa header limit, konkurensi, jumlah retry, dan kelayakan fallback | Menambahkan retry tanpa batas |
5xx atau 503 |
Provider, jalur jaringan, atau deployment yang didinginkan/dikonfigurasi secara keliru | Catat kesalahan provider, ID model, API base, dan hasil fallback | Menyatakan provider tidak aktif berdasarkan satu permintaan |
Tabel ini adalah aset nilai utama dalam panduan Kesalahan Umum LiteLLM ini: tabel ini mengubah kegagalan gateway yang samar menjadi observasi spesifik berikutnya.
Alur triase Kesalahan Umum LiteLLM dalam lima menit
Sebelum mengedit config.yaml, simpan satu kegagalan yang representatif. Samarkan secret dan konten prompt bila diperlukan, tetapi pertahankan field operasionalnya.
- Catat identitas permintaan. Catat stempel waktu, lingkungan, rute,
modelyang diminta, status HTTP, jenis pengecualian LiteLLM, pesan kesalahan, nama provider, dan nomor percobaan klien. - Catat identitas gateway. Simpan
x-litellm-call-idjika tersedia. LiteLLM mendokumentasikan header ini sebagai penanda terbaik untuk mengikuti permintaan melalui sistem logging. Catat jugax-litellm-model-id,x-litellm-model-api-base, dan header versi jika respons Anda mengeksposnya. dokumentasi logging LiteLLM mencantumkan header terkini. - Klasifikasikan kegagalan. Apakah ini permintaan tidak valid, masalah autentikasi/izin, batas anggaran/rate, timeout, atau kegagalan layanan upstream? Jangan masukkan semua kesalahan
4xxke dalam satu kategori retry. - Buat satu reproduksi minimal non-produksi. Gunakan virtual key dan
model_namepublik yang sama dengan yang digunakan aplikasi. Hapus konkurensi khusus aplikasi dan panggilan tool sebelum menguji permintaan dasar. - Ubah hanya satu lapisan. Koreksi nama model, perubahan timeout, dan perubahan fallback dalam deployment yang sama membuat hasil akhir tidak mungkin dijelaskan.
Berikut adalah probe minimal generik untuk proxy LiteLLM yang kompatibel dengan OpenAI:
curl -i --request POST "$LITELLM_PROXY_URL/v1/chat/completions" \
--header "Authorization: Bearer $LITELLM_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"model": "support-chat",
"messages": [{"role": "user", "content": "Reply with OK."}],
"max_tokens": 16
}'
Intinya bukan bahwa support-chat adalah nama model universal. Intinya adalah bahwa pengujian harus menggunakan nama publik yang dikonfigurasi di gateway Anda, lalu mempertahankan header dan body respons untuk dibandingkan dengan permintaan aplikasi yang gagal.
Kesalahan timeout: temukan batas waktu yang benar-benar terpicu
Timeout termasuk Kesalahan Umum LiteLLM yang paling menyesatkan karena permintaan dapat kedaluwarsa di lebih dari satu lapisan:
- Pemanggil dapat membatalkan lebih dahulu.
- Deployment atau router LiteLLM dapat menerapkan batas waktu yang lebih singkat.
request_timeoutproxy dapat menghentikan panggilan upstream yang berjalan lama.- Provider, load balancer, atau jalur jaringan dapat menutup permintaan.
- Respons streaming dapat dimulai dengan sukses lalu macet di antara chunk.
Pemetaan exception LiteLLM mendokumentasikan kegagalan timeout sebagai openai.APITimeoutError. Untuk rute native dan pass-through, dokumentasi timeout saat ini menjelaskan urutan prioritas di seluruh pengaturan permintaan, deployment, router, dan proxy. Periksa versi dokumentasi yang sesuai dengan deployment Anda sebelum menerapkan perubahan konfigurasi.
Mulailah dengan anggaran batas waktu, bukan angka yang lebih besar
Pilih total latensi yang dapat ditoleransi oleh alur pengguna Anda, lalu alokasikan secara mundur. Misalnya, pengalaman interaktif mungkin perlu menyediakan waktu untuk antrean, satu kali retry, dan rendering respons, alih-alih membiarkan panggilan upstream menghabiskan seluruh batas waktu yang terlihat oleh pengguna.
# Titik awal ilustratif — sesuaikan dengan beban kerja dan versi LiteLLM Anda.
litellm_settings:
request_timeout: 60
set_verbose: false
json_logs: true
Contoh ini sengaja konservatif: contoh ini memberi proxy mode kegagalan yang dibatasi alih-alih membiarkan koneksi menggantung. Panduan produksi LiteLLM merekomendasikan pengaturan request timeout dan penggunaan logging produksi terstruktur.
Saat timeout terjadi, jawab pertanyaan-pertanyaan ini secara berurutan:
| Pertanyaan | Apa yang dibedakan | Tindakan selanjutnya |
|---|---|---|
| Apakah klien membatalkan sebelum LiteLLM merespons? | Batas waktu pemanggil versus batas waktu proxy/provider | Periksa log timeout dan pembatalan klien sebelum mengubah gateway |
Apakah proxy mengembalikan APITimeoutError setelah durasi yang stabil? |
Batas waktu gateway atau rute yang dikonfigurasi | Identifikasi pengaturan yang menang dalam rantai prioritas |
| Apakah latensi token pertama berhasil tetapi streaming berhenti? | Waktu idle stream versus timeout seluruh permintaan | Uji streaming secara terpisah dan simpan waktu chunk terakhir yang diterima |
| Apakah permintaan minimal dengan konkurensi rendah berhasil? | Masalah kapasitas/antrean versus konfigurasi statis | Periksa konkurensi deployment, RPM/TPM, dan kesehatan provider |
| Apakah hanya satu deployment yang gagal? | Masalah rute provider, region, kredensial, atau khusus deployment | Bandingkan model_id, API base, dan kredensial dengan deployment lain yang sehat |
Jangan biarkan retry timeout otomatis berjalan tanpa batas. Retry masuk akal hanya ketika pekerjaan aman untuk diulang dan percobaan alternatif masih dapat selesai dalam batas waktu pemanggil. Jika permintaan memicu tools, menulis data, atau memulai stream yang terlihat oleh pengguna, tentukan idempotensi dan semantik restart terlebih dahulu.
Untuk masalah antrean atau kapasitas yang dipicu 429 dan muncul sebagai latensi panjang, padukan bagian ini dengan panduan RPM, TPM, dan retry dari Flatkey. Timeout dapat menjadi gejala admission control yang kelebihan beban, bukan pengaturan durasi permintaan.
Peringatan anggaran: pisahkan notifikasi dari penegakan
Perilaku anggaran menyebabkan bagian yang tidak proporsional dari Kesalahan Umum LiteLLM karena tim sering menyatukan tiga kontrol berbeda ke dalam kata “peringatan”. Ketiganya tidak dapat saling menggantikan.
| Kontrol | Fungsinya | Apa yang membuktikan kontrol tersebut berfungsi |
|---|---|---|
| Anggaran keras | Menolak atau membatasi permintaan setelah pengeluaran melampaui cakupan dan batas yang dikonfigurasi | Permintaan yang sengaja melebihi anggaran di lingkungan non-produksi menghasilkan kesalahan anggaran yang diharapkan |
| Peringatan anggaran lunak | Memberi tahu operator atau tim sebelum anggaran terkait habis | Ambang pengujian mencapai channel pengiriman dan pemilik yang dikonfigurasi |
| Pemantauan pencatatan pengeluaran | Mendeteksi ketidaksesuaian antara pengeluaran gateway yang dilacak dan data penagihan provider | Rentang tanggal yang diketahui mengembalikan tingkat pencatatan dan perilaku peringatan yang diharapkan |
Pemeriksaan anggaran pertama: apakah ada database?
Dokumentasi anggaran LiteLLM saat ini menjelaskan secara tegas: anggaran proxynya ditegakkan berdasarkan pengeluaran yang dibaca dari database. Pada deployment tanpa DB, max_budget global yang dikonfigurasi tidak berfungsi sebagai batas pengeluaran yang andal; perilaku anggaran virtual key, tim, dan pengguna juga bergantung pada database.
Hal ini mengarah pada pola kegagalan yang umum: sebuah tim menetapkan max_budget, melihat peringatan startup atau nilai konfigurasi, lalu mengasumsikan traffic produksi akan berhenti pada ambang tersebut. Itu tidak akan menjadi kontrol yang dapat diandalkan tanpa penyiapan pelacakan pengeluaran yang diperlukan.
# Illustrative policy only. Validate with a non-production key before rollout.
general_settings:
master_key: os.environ/LITELLM_MASTER_KEY
fail_closed_budget_enforcement: true
litellm_settings:
max_budget: 100
budget_duration: 30d
Perlakukan fail_closed_budget_enforcement sebagai keputusan keandalan, bukan perbaikan salin-tempel. Dokumentasi LiteLLM saat ini menjelaskan bahwa pemeriksaan anggaran yang lebih ketat dapat menolak permintaan saat pengeluaran tidak dapat diverifikasi; uji perilaku kegagalan database dan Redis untuk deployment Anda sebelum mengaktifkannya secara luas.
Uji jalur anggaran, bukan hanya dasbor
Gunakan key atau tim sekali pakai di lingkungan nonproduksi dan verifikasi urutan berikut:
- Pastikan proxy dapat membaca dan menulis penyimpanan pengeluaran.
- Buat anggaran keras yang sengaja kecil dalam cakupan yang tepat: key, tim, pengguna, proyek, atau pengguna akhir.
- Kirim permintaan minimal melalui proxy.
- Kirim permintaan kedua yang harus melewati ambang batas.
- Periksa exception yang dikembalikan, catatan pengeluaran, jendela reset, dan saluran peringatan secara terpisah.
- Pastikan aplikasi menangani pemblokiran anggaran tanpa mencobanya ulang seolah-olah itu adalah kelebihan beban provider yang bersifat sementara.
LiteLLM juga mendokumentasikan jendela anggaran dan kontrol anggaran per model. Pastikan jadwal reset secara presisi: pagar pengaman harian dan batas bulanan menyelesaikan risiko yang berbeda.
Peringatan anggaran Azure dan peringatan anggaran AWS adalah lapisan cadangan, bukan pengganti
Kata kunci sekunder peringatan anggaran Azure dan peringatan anggaran AWS penting karena peringatan penagihan provider cloud mencakup batas yang berbeda. Peringatan tersebut dapat memberi tahu tentang pengeluaran akun provider atau langganan, termasuk trafik yang melewati LiteLLM. Peringatan tersebut tidak menggantikan keputusan di tingkat gateway tentang apakah permintaan, key, tenant, atau model ini harus diizinkan sekarang.
Gunakan kedua lapisan jika sesuai:
- Kebijakan anggaran LiteLLM melindungi rute dan tenant yang dapat diidentifikasi gateway.
- Peringatan anggaran Azure atau peringatan anggaran AWS memantau pengeluaran akun cloud hulu.
- Ledger penggunaan gateway merekonsiliasi keduanya dan mengungkap trafik yang melewati jalur yang dimaksudkan.
Untuk pengeluaran OpenAI, pemeriksaan tingkat penangkapan pengeluaran LiteLLM dapat membandingkan pengeluaran yang dilacak dengan OpenAI Organization Costs API. Fitur ini saat ini memiliki prasyarat khusus provider, jadi bacalah dokumentasi berversi sebelum memperlakukannya sebagai fitur rekonsiliasi universal untuk berbagai provider.
Jika kebutuhan operasional lebih luas daripada satu deployment LiteLLM, lihat panduan evaluasi dasbor penagihan AI terpadu untuk pertanyaan yang perlu diajukan seputar key, anggaran, alokasi, peringatan, dan rekonsiliasi.
Kegagalan provider: verifikasi nama model publik dan deployment hulu secara terpisah
Kegagalan provider adalah Kesalahan Umum LiteLLM yang paling terlihat, tetapi sering kali merupakan kesalahan konfigurasi gateway. Klien biasanya memanggil model_name publik yang Anda ekspos. LiteLLM kemudian me-resolve nama tersebut ke model provider, deployment, endpoint, kredensial, dan parameter khusus provider.
model_list:
- model_name: support-chat # The name the client requests
litellm_params:
model: azure/<deployment-name>
api_base: os.environ/AZURE_API_BASE
api_key: os.environ/AZURE_API_KEY
api_version: os.environ/AZURE_API_VERSION
model_name dan litellm_params.model sengaja merupakan konsep yang berbeda. Saat klien mendapatkan error model tidak valid, bandingkan nama yang diminta secara persis dengan model_name terlebih dahulu. Dokumentasi manajemen model LiteLLM membedakan nama model publik dari model provider serta menyediakan alur kerja uji koneksi untuk model yang dikonfigurasi.
Tabel keputusan kegagalan provider
| Sinyal | Kemungkinan penyebab | Pemeriksaan lanjutan yang aman | Biasanya coba ulang? |
|---|---|---|---|
401 AuthenticationError |
Kredensial gateway/provider tidak ada, kedaluwarsa, atau salah | Verifikasi kredensial mana yang benar-benar di-resolve oleh deployment yang gagal | Tidak |
403 PermissionDeniedError |
Key tidak memiliki izin model, proyek, region, atau provider | Periksa allowlist model, akses proyek/region provider, dan konfigurasi deployment | Tidak |
402 PaymentRequiredError |
Status akun/pembayaran provider | Periksa status penagihan/kredit provider dan kebijakan rute | Tidak |
404 NotFoundError |
Nama model publik, nama deployment hulu, rute, atau versi API tidak valid | Bandingkan nama model klien, model_name LiteLLM, dan pengenal deployment provider |
Tidak |
429 RateLimitError |
Kapasitas, kuota, konkurensi, atau batas akun bersama | Periksa header, laju token/permintaan, kedalaman antrean, dan jumlah percobaan ulang | Hanya terbatas |
503 ServiceUnavailableError atau 5xx tertentu |
Ketersediaan provider, jalur jaringan, atau deployment yang gagal | Periksa status, basis API, detail error provider, dan fallback yang memenuhi syarat | Hanya terbatas |
Jenis pengecualian harus menentukan tindakan berikutnya. referensi pengecualian LiteLLM memetakan kondisi 401, 402, 403, 404, 408, 429, 500, dan 503 ke dalam kelas yang dinormalisasi; referensi ini juga mengekspos field khusus provider untuk investigasi lebih mendalam.
Percobaan ulang, fallback, dan cooldown: pulih tanpa menyembunyikan insiden
Percobaan ulang dan fallback dapat mengurangi kegagalan yang terlihat, tetapi juga dapat mengubah kesalahan konfigurasi menjadi latensi, biaya, atau pekerjaan duplikat. Penanganan Kesalahan Umum LiteLLM yang baik menggunakan kebijakan berbeda untuk konfigurasi yang tidak valid dan gangguan provider singkat.
LiteLLM mendokumentasikan pembagian yang berguna:
- Percobaan ulang berupaya pulih dalam grup model saat ini.
- Fallback berpindah ke grup model lain setelah percobaan ulang yang dikonfigurasi.
- Cooldown mengisolasi deployment yang gagal sementara alternatif yang sehat tetap tersedia.
Berikut adalah konfigurasi ilustratif kecil berdasarkan panduan failover provider LiteLLM:
model_list:
- model_name: primary-chat
litellm_params:
model: openai/<primary-model>
api_key: os.environ/PRIMARY_PROVIDER_KEY
- model_name: backup-chat
litellm_params:
model: azure/<backup-deployment>
api_base: os.environ/AZURE_API_BASE
api_key: os.environ/AZURE_API_KEY
api_version: os.environ/AZURE_API_VERSION
litellm_settings:
num_retries: 1
request_timeout: 30
fallbacks: [{"primary-chat": ["backup-chat"]}]
allowed_fails: 3
cooldown_time: 30
Validasikan ini hanya dengan kesalahan provider non-produksi yang disengaja. Dokumentasi LiteLLM memperingatkan bahwa flag fallback mock lama tidak menguji request proxy; kegagalan nyata yang terkontrol adalah jalur validasi proxy yang tepat.
Jauhkan kondisi 404, autentikasi, izin, skema, dan kebijakan konten dari loop percobaan ulang umum kecuali Anda telah secara eksplisit merancang respons terpisah. Dokumentasi routing LiteLLM mendukung kebijakan percobaan ulang khusus per kesalahan, termasuk nol percobaan ulang untuk NotFoundError; hal itu mencegah nama model yang tidak valid menjadi insiden yang lambat.
Sebelum mengaktifkan fallback lintas-provider, validasikan kontrak produk:
- Perilaku context window dan semantik tool call
- Dukungan output terstruktur dan format respons
- Persyaratan residensi data, retensi, dan kebijakan pelanggan
- Perilaku keamanan dan ekspektasi kebijakan konten
- Batas latensi dan biaya
- Idempotensi efek samping downstream
Fallback harus dapat diamati setelah request, bukan diam-diam. LiteLLM mendokumentasikan field seperti fallback yang dicoba dan grup model asli dalam metadata spend-log. Pantau tingkat fallback, tingkat keberhasilan akhir, latensi yang ditambahkan oleh percobaan ulang/fallback, dan biaya rute yang benar-benar melayani request.
Untuk desain routing yang lebih luas, lihat playbook routing fallback Flatkey. Aturan yang sama berlaku: lakukan routing hanya jika alternatif tersebut tetap memenuhi kontrak workflow.
Checklist siap-insiden untuk masalah LiteLLM
Jalankan checklist ini sebelum menutup insiden atau menyatakan salah satu Kesalahan Umum LiteLLM telah diperbaiki.
| Pemeriksaan | Kondisi lulus |
|---|---|
| Probe minimal | Request yang diketahui aman berfungsi dengan virtual key dan nama model publik yang sama |
| Pencatatan kesalahan | Status, pengecualian yang dinormalisasi, provider, ID panggilan, ID model, dan API base dicatat tanpa secret |
| Anggaran timeout | Deadline klien, gateway, dan provider diurutkan secara sengaja serta diuji untuk panggilan streaming maupun non-streaming |
| Penegakan anggaran | Request non-produksi benar-benar melampaui cakupan yang dimaksud dan mengembalikan perilaku anggaran yang diharapkan |
| Pengiriman peringatan | Tujuan dan ambang peringatan diuji secara independen dari penegakan |
| Konfigurasi provider | model_name, model/deployment upstream, API base, kredensial, dan field khusus provider telah diverifikasi |
| Perilaku percobaan ulang | Kesalahan yang tidak dapat dicoba ulang gagal dengan cepat; kelas transien memiliki jumlah percobaan dan waktu berlalu yang dibatasi |
| Perilaku fallback | Kegagalan provider terkontrol hanya mencapai fallback yang memenuhi syarat dan mencatat rute akhir |
| Sinyal pemulihan | Log/metrik menunjukkan tingkat kegagalan awal, tingkat fallback, dan latensi kembali normal |
Kapan menyederhanakan permukaan routing
Beberapa tim menginginkan LiteLLM karena memusatkan konfigurasi model, penggunaan, dan kebijakan keandalan. Tim lain menginginkan lebih sedikit infrastruktur gateway untuk dioperasikan. Jawaban yang tepat bergantung pada siapa yang memiliki kebijakan routing, kredensial provider, penegakan anggaran, dan siklus respons insiden.
Flatkey berguna ketika aplikasi memerlukan antarmuka integrasi yang kompatibel dengan OpenAI di seluruh rute model yang didukung sambil menjaga routing, peninjauan penggunaan, dan penagihan tetap lebih terintegrasi. Flatkey tidak menghilangkan kebutuhan untuk mengklasifikasikan timeout, pemblokiran anggaran, atau error provider; Flatkey mengurangi jumlah integrasi klien khusus provider yang harus dipelihara aplikasi Anda. Mulailah dengan satu API key untuk beberapa model AI atau panduan cepat API Flatkey saat Anda ingin mengevaluasi model operasional tersebut.
Untuk panduan penyiapan lengkap dan contoh konfigurasi, lihat panduan proxy LiteLLM kami.
FAQ
Apakah semua Kesalahan Umum LiteLLM aman untuk dicoba ulang?
Tidak. Kegagalan autentikasi, izin, model tidak valid, parameter tidak didukung, anggaran, dan sebagian besar penagihan memerlukan perbaikan konfigurasi atau akun. Coba ulang hanya kondisi yang jelas bersifat sementara, dengan jumlah percobaan dan anggaran waktu yang kecil, serta hanya ketika operasi aman untuk diulangi.
Mengapa max_budget tidak menghentikan pengeluaran di proxy LiteLLM saya?
Pertama, verifikasi bahwa proxy memiliki pelacakan pengeluaran berbasis database yang diperlukan untuk penegakan anggaran. Kemudian konfirmasikan bahwa traffic mencapai LiteLLM alih-alih memanggil provider secara langsung, serta bahwa key, tim, pengguna, atau proyek yang dikonfigurasi adalah cakupan yang benar-benar membuat permintaan. dokumentasi anggaran LiteLLM menjelaskan persyaratan database dan perilaku cakupan.
Apakah peringatan anggaran Azure atau peringatan anggaran AWS cukup untuk mencegah pembengkakan penggunaan aplikasi?
Keduanya berguna sebagai pengaman di tingkat akun provider, tetapi tidak menentukan apakah permintaan gateway tertentu harus diizinkan. Pertahankan peringatan penagihan provider, lalu tambahkan anggaran gateway yang telah diuji dan batas produk di tingkat aplikasi tempat konteks permintaan diketahui.
Apa yang harus saya simpan dari panggilan LiteLLM yang gagal?
Simpan badan error yang telah disanitasi, kelas exception yang dinormalisasi, status HTTP, nama provider, model yang diminta, stempel waktu, environment, nomor percobaan klien, dan x-litellm-call-id jika tersedia. Hindari mencatat API key serta konten prompt/response yang sensitif.
Dapatkah fallback menyembunyikan konfigurasi yang buruk?
Ya. Fallback dapat membuat permintaan pelanggan berhasil sementara rute utama terus gagal. Karena itu, tingkat fallback, error khusus rute, grup model akhir, latensi, dan biaya memerlukan peringatan atau dashboard. Perlakukan peningkatan tingkat fallback sebagai sinyal operasional, bukan perbaikan yang telah selesai.
Kesimpulan akhir
Perbaikan yang tahan lama untuk Kesalahan Umum LiteLLM bukanlah jumlah percobaan ulang universal atau timeout yang lebih besar. Perbaikan tersebut adalah siklus operasional yang dapat diulang: tangkap kegagalan yang sebenarnya, identifikasi lapisan kebijakan, validasi perubahan aman terkecil, dan buktikan jalur pemulihan dengan pengujian terkontrol. Hal ini menjaga timeout tetap terbatas, peringatan anggaran tetap bermakna, dan kegagalan provider cukup terlihat untuk diperbaiki.



