Pesan error

Pelajari cara menyelesaikan beberapa error yang dilaporkan oleh Speech-to-Text. Topik ini membahas error yang penyelesaiannya memerlukan lebih banyak langkah daripada yang dapat dijelaskan dengan mudah dalam pesan error.

"Kredensial Default Aplikasi tidak tersedia"

Jika Anda menerima pesan ini:

The Application Default Credentials are not available. They are
available if running in Google Compute Engine. Otherwise, the
environment variable GOOGLE_APPLICATION_CREDENTIALS must be defined
pointing to a file defining the credentials.
See https://developers.google.com/accounts/docs/application-default-credentials
for more information.

Speech-to-Text menggunakan Kredensial Default Aplikasi (ADC) untuk autentikasi.

Kredensial untuk ADC harus tersedia dalam konteks tempat Anda memanggil Speech-to-Text API. Misalnya, jika Anda menyiapkan ADC di terminal, tetapi menjalankan kode di debugger IDE, konteks eksekusi kode Anda mungkin tidak memiliki akses ke kredensial. Dalam hal ini, permintaan Anda ke Speech-to-Text mungkin gagal.

Untuk mempelajari cara memberikan kredensial ke ADC, lihat Menyiapkan Kredensial Default Aplikasi.

"File ... (ditunjukkan oleh variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS) tidak ada!"

Jika Anda menerima pesan ini:

ERROR: (gcloud.auth.application-default.print-access-token) File /path/to/key.json
(pointed by GOOGLE_APPLICATION_CREDENTIALS environment variable) does not exist!
{
  "error": {
    "code": 403,
    "message": "The request is missing a valid API key.",
    "status": "PERMISSION_DENIED"
  }
}

Pastikan Anda memiliki file JSON kunci akun layanan yang valid di lokasi yang disimpan dalam variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS dan bahwa variabel tersebut menunjuk ke tempat yang benar.

Untuk mendiagnosis error ini, coba buka file kunci akun layanan dari folder tempat Anda mencoba memanggil Speech-to-Text API.

cat $GOOGLE_APPLICATION_CREDENTIALS

Forbidden: 403 POST API belum digunakan atau dinonaktifkan

Jika Anda menerima pesan ini:

Forbidden: 403 POST Speech-to-Text API has not been used in
project # before or it is disabled.
Enable it by visitng [url] then retry.
If you enabled this API recently, wait a few minutes for the action to
propagate to our systems and retry.

  1. Buka link yang ditentukan dalam pesan error dan aktifkan Speech-to-Text API. Tunggu beberapa menit, lalu coba lagi.
  2. Pastikan Anda memiliki file JSON kunci akun layanan valid yang tersimpan di variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS. Untuk mendiagnosis error ini, coba buka file kunci akun layanan dari folder tempat Anda mencoba memanggil Speech-to-Text API.
    cat $GOOGLE_APPLICATION_CREDENTIALS
    

"Harus menggunakan audio saluran tunggal (mono)"

Jika Anda menerima pesan ini:

Must use single channel (mono) audio, but WAV header indicates 2
channels.

File audio Anda berisi lebih dari satu channel. Untuk mentranskripsikan file audio ini, Anda harus mendeklarasikan bahwa audio memiliki beberapa saluran.

"Harus menggunakan sampel 16 bit untuk LINEAR_PCM"

Jika Anda menerima pesan ini:

INVALID_ARGUMENT: Must use 16 bit samples for LINEAR_PCM, but the WAV
header indicates 8 bits per sample

Anda mungkin perlu mengubah encoding yang telah ditentukan di RecognitionConfig. Untuk membaca encoding yang didukung dalam Speech-to-Text, lihat panduan encoding.

"Sinkronisasi input terlalu panjang"

Jika Anda menerima pesan ini:

Sync input too long. For audio longer than 1 min use
LongRunningRecognize with a 'uri' parameter.

Metode pengenalan sinkron untuk Speech-to-Text hanya mendukung transkripsi data audio dengan durasi hingga 1 menit. Untuk data audio yang lebih panjang, gunakan pengenalan asinkron.

"'config' pengenalan tidak valid: encoding buruk"

Jika Anda menerima pesan ini:

Invalid recognition 'config': bad encoding.

Data audio Anda mungkin tidak dienkode dengan benar atau dienkode dengan codec yang berbeda dari yang telah Anda deklarasikan dalam RecognitionConfig. Periksa input audio dan pastikan Anda telah menetapkan kolom encoding dengan benar.

"Ukuran payload permintaan melebihi batas"

Jika Anda menerima salah satu pesan ini:

Request payload size exceeds the limit.
Inline audio exceeds duration limit. Please use a GCS URI.

Anda telah melebihi batas ukuran 10 MB untuk satu permintaan yang dikirim ke API menggunakan file lokal. Anda dapat memindahkan file audio ke bucket Google Cloud Storage (GCS) untuk menghindari batas 10 MB. Lihat halaman kuota & batasan untuk mengetahui detail selengkapnya.

"Kuota terlampaui"

Jika Anda menerima pesan ini:

RESOURCE_EXHAUSTED: Quota exceeded.

Anda telah mencapai batas kuota per menit atau harian. Tinjau kuota & batasan untuk menggunakan Speech-to-Text.

Anda dapat meminta penambahan kuota dari Google Cloud Platform Console.