Gunakan panduan ini untuk membantu Anda mendiagnosis dan menyelesaikan masalah umum yang muncul saat Anda memanggil Gemini API. Anda mungkin mengalami masalah dari layanan backend Gemini API atau SDK klien. SDK klien kami bersifat open source di repositori berikut:
Jika Anda mengalami masalah kunci API, pastikan Anda telah menyiapkan kunci API dengan benar sesuai dengan panduan penyiapan kunci API.
Kode error layanan backend Gemini API
Tabel berikut mencantumkan kode error backend umum yang mungkin Anda temui, beserta penjelasan penyebabnya dan langkah-langkah pemecahan masalah:
Kode HTTP | Status | Deskripsi | Contoh | Solusi |
400 | INVALID_ARGUMENT | Isi permintaan salah format. | Ada salah ketik, atau kolom wajib diisi dalam permintaan Anda belum diisi. | Periksa 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. Aktifkan penagihan di project Anda di Google AI Studio. | Anda membuat permintaan di wilayah yang tidak mendukung paket gratis, dan Anda belum mengaktifkan penagihan di project Anda di Google AI Studio. | Untuk menggunakan Gemini API, Anda harus 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 di-tuning tanpa melalui autentikasi yang tepat. | Pastikan kunci API Anda ditetapkan dan memiliki akses yang tepat. Selain itu, pastikan untuk melakukan autentikasi yang tepat untuk menggunakan model yang di-tune. |
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 kecepatan. | Anda mengirim terlalu banyak permintaan per menit dengan Gemini API tingkat gratis. | Pastikan Anda berada dalam batas kecepatan model. Minta penambahan kuota jika diperlukan. |
500 | INTERNAL | Terjadi error yang tidak terduga di pihak Google. | Konteks input Anda terlalu panjang. | Kurangi konteks input Anda atau beralihlah sementara ke model lain (misalnya, dari Gemini 1.5 Pro ke Gemini 1.5 Flash) dan lihat apakah berhasil. Atau tunggu sebentar dan coba lagi permintaan Anda. Jika masalah berlanjut setelah mencoba lagi, laporkan masalah tersebut menggunakan tombol Kirim masukan di Google AI Studio. |
503 | UNAVAILABLE | Layanan mungkin mengalami gangguan atau kelebihan beban untuk sementara. | Layanan ini untuk sementara kehabisan kapasitas. | Beralihlah ke model lain untuk sementara (misalnya, dari Gemini 1.5 Pro ke Gemini 1.5 Flash) dan lihat apakah model tersebut berfungsi. Atau tunggu sebentar dan coba lagi permintaan Anda. Jika masalah berlanjut setelah mencoba lagi, laporkan masalah tersebut 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. | Tetapkan 'timeout' yang lebih besar dalam permintaan klien Anda untuk menghindari error ini. |
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 maksimum token untuk model yang Anda gunakan.
|
TopP | 0.0-1.0 |
Selain memeriksa nilai parameter, pastikan Anda menggunakan versi API yang benar (misalnya, /v1
atau /v1beta
) dan
model yang mendukung fitur yang Anda butuhkan. Misalnya, jika fitur dalam rilis Beta, fitur tersebut hanya akan tersedia di versi API /v1beta
.
Memeriksa apakah Anda memiliki model yang tepat
Pastikan Anda menggunakan model yang didukung yang tercantum di halaman model kami.
Latensi atau penggunaan token yang lebih tinggi dengan model 2.5
Jika Anda mengamati latensi atau penggunaan token yang lebih tinggi dengan model 2.5 Flash dan Pro, hal ini dapat terjadi karena model tersebut dilengkapi dengan kemampuan berpikir yang diaktifkan secara default untuk meningkatkan kualitas. Jika Anda memprioritaskan kecepatan atau perlu meminimalkan biaya, Anda dapat menyesuaikan atau menonaktifkan pemikiran.
Lihat halaman pemikiran untuk mendapatkan panduan dan contoh kode.
Masalah keamanan
Jika Anda melihat perintah diblokir karena setelan keamanan dalam panggilan API Anda, tinjau perintah tersebut 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 pembacaan
Jika Anda melihat model berhenti menghasilkan output karena alasan RECITASI, berarti output model mungkin menyerupai data tertentu. Untuk memperbaikinya, coba buat prompt / konteks seunik mungkin dan gunakan nilai Temperature yang lebih tinggi.
Masalah token berulang
Jika Anda melihat token output yang berulang, coba saran berikut untuk membantu mengurangi atau menghilangkannya.
Deskripsi | Penyebab | Solusi alternatif yang disarankan |
---|---|---|
Tanda hubung berulang dalam tabel Markdown | Hal ini dapat terjadi saat isi tabel panjang karena model mencoba membuat tabel Markdown yang selaras secara visual. Namun, perataan di Markdown tidak diperlukan untuk rendering yang benar. |
Tambahkan petunjuk dalam perintah Anda untuk memberi model panduan khusus dalam membuat tabel Markdown. Berikan contoh yang mengikuti pedoman tersebut. Anda juga dapat mencoba menyesuaikan suhu. Untuk membuat kode atau output yang sangat terstruktur seperti tabel Markdown, suhu tinggi terbukti berfungsi lebih baik (>= 0,8). Berikut adalah contoh kumpulan pedoman yang dapat Anda tambahkan ke perintah untuk mencegah masalah ini: # Markdown Table Format * Separator line: Markdown tables must include a separator line below the header row. The separator line must use only 3 hyphens per column, for example: |---|---|---|. Using more hypens like ----, -----, ------ can result in errors. Always use |:---|, |---:|, or |---| in these separator strings. For example: | Date | Description | Attendees | |---|---|---| | 2024-10-26 | Annual Conference | 500 | | 2025-01-15 | Q1 Planning Session | 25 | * Alignment: Do not align columns. Always use |---|. For three columns, use |---|---|---| as the separator line. For four columns use |---|---|---|---| and so on. * Conciseness: Keep cell content brief and to the point. * Never pad column headers or other cells with lots of spaces to match with width of other content. Only a single space on each side is needed. For example, always do "| column name |" instead of "| column name |". Extra spaces are wasteful. A markdown renderer will automatically take care displaying the content in a visually appealing form. |
Token berulang dalam tabel Markdown | Mirip dengan tanda hubung berulang, hal ini terjadi saat model mencoba menyelaraskan konten tabel secara visual. Perataan di Markdown tidak diperlukan untuk rendering yang benar. |
|
Baris baru berulang (\n ) dalam output terstruktur
|
Jika input model berisi urutan escape atau unicode seperti
\u atau \t , hal ini dapat menyebabkan baris baru berulang.
|
|
Teks yang berulang dalam menggunakan output terstruktur | Jika output model memiliki urutan kolom yang berbeda dengan skema terstruktur yang ditentukan, hal ini dapat menyebabkan teks berulang. |
|
Panggilan alat berulang | Hal ini dapat terjadi jika model kehilangan konteks pemikiran sebelumnya dan/atau memanggil endpoint yang tidak tersedia yang dipaksakan. |
Perintahkan model untuk mempertahankan status dalam proses pemikirannya.
Tambahkan ini di akhir petunjuk sistem Anda:
When thinking silently: ALWAYS start the thought with a brief (one sentence) recap of the current progress on the task. In particular, consider whether the task is already done. |
Teks berulang yang bukan bagian dari output terstruktur | Hal ini dapat terjadi jika model mengalami masalah pada permintaan yang tidak dapat diselesaikannya. |
|
Meningkatkan kualitas output model
Untuk output model berkualitas lebih tinggi, coba tulis perintah yang lebih terstruktur. Halaman panduan rekayasa perintah memperkenalkan beberapa konsep dasar, strategi, dan praktik terbaik untuk membantu Anda memulai.
Jika Anda memiliki ratusan contoh pasangan input/output yang baik, Anda juga dapat mempertimbangkan penyesuaian model.
Memahami batas token
Baca Panduan token kami untuk lebih memahami cara menghitung token dan batasnya.
Masalah umum
- API 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 mendapatkan info terbaru.
Laporkan bug
Bergabunglah dalam diskusi di forum developer AI Google jika ada pertanyaan.