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.
- Buka link yang ditentukan dalam pesan error dan aktifkan Speech-to-Text API. Tunggu beberapa menit, lalu coba lagi.
- 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.