Gunakan panduan ini untuk membantu Anda mendiagnosis dan menyelesaikan masalah umum yang muncul saat dengan memanggil Gemini API. Secara umum, Anda mungkin menghadapi masalah baik dari layanan backend Gemini API atau SDK klien. SDK klien kami bersifat open source di repositori berikut:
- generative-ai-python
- generative-ai-js
- generative-ai-android
- generative-ai-swift
- generative-ai-dart
- generative-ai-go
Jika mengalami masalah kunci API, pastikan Anda telah menyiapkan kunci API Anda dengan benar sesuai dengan panduan penyiapan kunci API.
Kode error layanan backend Gemini API
Tabel berikut ini berisi kode error backend umum yang mungkin Anda temui, beserta beserta penjelasan penyebab dan langkah pemecahan masalahnya:
Kode HTTP | Status | Deskripsi | Contoh | Solusi |
400 | INVALID_ARGUMENT | Isi permintaan memiliki format yang salah. | Ada kesalahan ketik atau bidang wajib diisi dalam permintaan Anda belum diisi. | Lihat referensi API untuk mengetahui format permintaan, contoh, dan versi yang didukung. Menggunakan fitur dari versi API yang lebih baru dengan endpoint yang lebih lama dapat menyebabkan error. |
400 | FAILED_PRECONDITION | Paket gratis Gemini API tidak tersedia di negara Anda. Harap aktifkan penagihan pada project Anda di Google AI Studio. | Anda membuat permintaan di wilayah yang tidak mendukung paket gratis, dan Anda belum mengaktifkan penagihan pada project Anda di Google AI Studio. | Untuk menggunakan Gemini API, Anda perlu menyiapkan paket berbayar menggunakan Google AI Studio. |
403 | PERMISSION_DENIED | Kunci API Anda tidak memiliki izin yang diperlukan. | Anda menggunakan kunci API yang salah; Anda mencoba menggunakan model yang telah disesuaikan tanpa melalui autentikasi yang tepat. | Pastikan kunci API Anda sudah ditetapkan dan memiliki akses yang benar. Selain itu, pastikan untuk melalui autentikasi yang tepat untuk menggunakan model yang telah disesuaikan. |
404 | NOT_FOUND | Resource yang diminta tidak ditemukan. | File gambar, audio, atau video yang dirujuk dalam permintaan Anda tidak ditemukan. | Periksa apakah semua parameter dalam permintaan Anda valid untuk versi API Anda. |
429 | RESOURCE_EXHAUSTED | Anda telah melampaui batas nilai. | Anda mengirimkan terlalu banyak permintaan per menit dengan Gemini API paket gratis. | Pastikan Anda tidak melebihi batas kapasitas model. Minta penambahan kuota jika perlu. |
500 | INTERNAL | Terjadi kesalahan yang tidak terduga di pihak Google. | Konteks input Anda terlalu panjang. | Kurangi konteks input Anda atau beralihlah ke model lain untuk sementara (misalnya, dari Gemini 1.5 Pro ke Gemini 1.5 Flash) dan lihat apakah model tersebut berfungsi dengan baik. Atau tunggu sebentar dan coba lagi permintaan Anda. Jika masalah terus berlanjut setelah mencoba lagi, laporkan menggunakan tombol Kirim masukan di Google AI Studio. |
503 | UNAVAILABLE | Layanan mungkin kelebihan beban atau tidak aktif untuk sementara. | Layanan kehabisan kapasitas untuk sementara. | Beralihlah ke model lain untuk sementara (misalnya dari Gemini 1.5 Pro ke Gemini 1.5 Flash) dan lihat apakah model tersebut berfungsi dengan baik. Atau tunggu sebentar dan coba lagi permintaan Anda. Jika masalah terus berlanjut setelah mencoba lagi, laporkan menggunakan tombol Kirim masukan di Google AI Studio. |
504 | DEADLINE_EXCEEDED | Layanan tidak dapat menyelesaikan pemrosesan dalam batas waktu. | Perintah (atau konteks) Anda terlalu besar untuk diproses tepat waktu. | Setel 'waktu tunggu' yang lebih panjang dalam permintaan klien untuk menghindari kesalahan ini. |
Kode error SDK klien Python
Tabel berikut ini mencantumkan daftar Error SDK klien Python kode yang mungkin Anda temui, beserta penjelasan penyebabnya:
Jenis Pengecualian/Error | Kelas | Deskripsi |
---|---|---|
BlockedPromptException | google.generativeai.types.BlockedPromptException | Perintah diblokir karena alasan keamanan. |
BrokenResponseError | google.generativeai.types.BrokenResponseError | Respons streaming rusak. Dinaikkan saat mengakses sesuatu yang memerlukan respons penuh, seperti histori chat. Lihat detail error yang diberikan dalam pelacakan tumpukan. |
IncompleteIterationError | google.generativeai.types.IncompleteIterationError | Dinaikkan saat mengakses sesuatu yang memerlukan respons API lengkap, tetapi respons streaming belum sepenuhnya diiterasi. Panggil resolve() pada objek respons untuk menggunakan iterator. |
StopCandidateException | google.generativeai.types.StopCandidateException | API merespons dengan finish_reason yang luar biasa. Periksa alasan untuk saran tentang cara melanjutkan. |
PermissionDenied | google.api_core.exceptions.PermissionDenied | Anda tidak memiliki izin untuk resource yang diminta (misalnya, model). |
ResourceExhausted | google.api_core.exceptions.ResourceExhausted | Kuota Anda habis. Tunggu sebentar dan coba lagi. Pertimbangkan untuk menyiapkan percobaan ulang otomatis untuk menangani error ini. |
AlreadyExists | google.api_core.exceptions.AlreadyExists | Model yang disesuaikan dengan ID yang sama sudah ada. Harap tentukan ID model unik ketika melakukan tuning model baru. |
InvalidArgument | google.api_core.exceptions.InvalidArgument | Argumen tidak valid. Salah satu contohnya adalah file ini terlalu besar dan melebihi batas ukuran payload. Contoh lainnya adalah memberikan kunci API yang tidak valid. |
DefaultCredentialsError | google.auth.exceptions.DefaultCredentialsError | Autentikasi gagal. Periksa dua kali kunci API Anda dan coba lagi. |
RetryError | google.api_core.exceptions.RetryError | Dapat disebabkan saat menggunakan proxy yang tidak mendukung gRPC. Coba gunakan transpor REST dengan genai.configure(..., transport="rest") . |
Memeriksa panggilan API untuk menemukan error parameter model
Pastikan parameter model Anda berada dalam nilai berikut:
Parameter model | Nilai (rentang) |
Jumlah kandidat | 1-8 (bilangan bulat) |
Suhu | 0,0-1,0 |
Token output maks |
Gunakan
get_model (Python)
untuk menentukan jumlah token maksimum untuk model yang Anda gunakan.
|
TopP | 0,0-1,0 |
Selain memeriksa nilai parameter, pastikan Anda menggunakan parameter
Versi API (mis., /v1
atau /v1beta
) dan
yang mendukung fitur
yang Anda butuhkan. Misalnya, jika suatu fitur masih dalam versi Beta
rilis ini hanya akan tersedia dalam versi API /v1beta
.
Periksa apakah Anda memiliki model yang tepat
Pastikan Anda menggunakan model yang didukung yang tercantum di halaman model.
Masalah keamanan
Jika Anda melihat prompt diblokir karena pengaturan keamanan di panggilan API Anda, meninjau perintah sehubungan dengan filter yang Anda tetapkan dalam panggilan API.
Jika Anda melihat BlockedReason.OTHER
, kueri atau respons mungkin melanggar persyaratan
layanan atau tidak didukung.
Masalah kutipan
Jika Anda melihat model berhenti menghasilkan output karena alasan REKITASI, berarti output model mungkin menyerupai data tertentu. Untuk memperbaikinya, cobalah untuk prompt / konteks yang seunik mungkin dan menggunakan suhu yang lebih tinggi.
Meningkatkan output model
Untuk output model yang berkualitas lebih tinggi, pelajari cara menulis perintah yang lebih terstruktur. Tujuan halaman pengantar untuk desain prompt memperkenalkan beberapa konsep dasar, strategi, dan praktik terbaik untuk memulai.
Jika Anda memiliki ratusan contoh pasangan input/{i>output<i} yang baik, Anda juga dapat pertimbangkan tuning model.
Memahami batas token
Baca Panduan token kami untuk lebih memahami cara untuk menghitung token dan batasnya.
Masalah umum
- API ini hanya mendukung sejumlah bahasa tertentu. Mengirimkan perintah dalam bahasa yang tidak didukung dapat menghasilkan respons yang tidak terduga atau bahkan diblokir. Lihat bahasa yang tersedia untuk update.
Laporkan bug
Gabung dengan diskusi di forum developer AI Google jika ada pertanyaan.