Panduan pemecahan masalah

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.
  • Coba tambahkan petunjuk seperti berikut ke perintah sistem Anda:
                FOR TABLE HEADINGS, IMMEDIATELY ADD ' |' AFTER THE TABLE HEADING.
              
  • Coba sesuaikan suhu. Temperatur yang lebih tinggi (>= 0,8) biasanya membantu menghilangkan pengulangan atau duplikasi dalam output.
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.
  • Periksa dan ganti urutan escape yang dilarang dengan karakter UTF-8 dalam perintah Anda. Misalnya, urutan escape \u dalam contoh JSON dapat menyebabkan model menggunakannya dalam outputnya juga.
  • Memberi tahu model tentang karakter escape yang diizinkan. Tambahkan petunjuk sistem seperti ini:
                In quoted strings, the only allowed escape sequences are \\, \n, and \". Instead of \u escapes, use UTF-8.
              
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.
  • Jangan tentukan urutan kolom dalam perintah Anda.
  • Menjadikan semua kolom output wajib diisi.
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.
  • Jika fitur berpikir diaktifkan, hindari memberikan perintah eksplisit tentang cara memecahkan masalah dalam petunjuk. Cukup minta output akhir.
  • Coba suhu yang lebih tinggi >= 0,8.
  • Tambahkan petunjuk seperti "Singkat", "Jangan mengulangi diri sendiri", atau "Berikan jawaban sekali saja".

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.