Auf dieser Seite werden Cloud Speech-to-Text-Fehler beschrieben, deren Lösung mehr Schritte erfordert, als in einer Fehlermeldung beschrieben werden können.
„Die Standardanmeldedaten für Anwendungen sind nicht verfügbar.“
Sie erhalten diese Meldung:
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.
Cloud STT verwendet für die Authentifizierung die Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC).
Die Anmeldedaten für ADC müssen in dem Kontext verfügbar sein, in dem Sie die Cloud Speech-to-Text API aufrufen. Wenn Sie beispielsweise ADC in Ihrem Terminal einrichten, Ihren Code aber im Debugger Ihrer IDE ausführen, hat der Ausführungskontext Ihres Codes möglicherweise keinen Zugriff auf die Anmeldedaten. In diesem Fall kann Ihre Anfrage an Cloud STT fehlschlagen.
Informationen zum Bereitstellen von Anmeldedaten für ADC finden Sie unter Standardanmeldedaten für Anwendungen einrichten.
"Datei… (auf die die Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS zeigt) existiert nicht!"
Sie erhalten diese Meldung:
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"
}
}
Bestätigen Sie, dass Sie eine gültige Dienstkonto-JSON-Datei an dem in der Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS gespeicherten Ort haben und dass die Variable auf den richtigen Ort verweist.
Zur Diagnose dieses Fehlers öffnen Sie die Dienstkontoschlüsseldatei in dem Ordner, aus dem Sie die Cloud Speech-to-Text API aufrufen möchten.
cat $GOOGLE_APPLICATION_CREDENTIALS
Unzulässig: 403 POST API wurde nicht verwendet oder wurde deaktiviert
Sie erhalten die Meldung:
Forbidden: 403 POST Cloud Speech-to-Text API has not been used in project # before or it is disabled. Enable it by visiting [url] then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.
- Rufen Sie den in der Fehlermeldung angegebenen Link auf und aktivieren Sie die Cloud STT API. Warten Sie einige Minuten und versuchen Sie es dann noch einmal.
- Prüfen Sie, ob Sie eine gültige JSON-Datei für den Dienstkontoschlüssel in der Umgebungsvariablen
GOOGLE_APPLICATION_CREDENTIALSgespeichert haben. Zur Diagnose dieses Fehlers öffnen Sie die Dienstkontoschlüsseldatei in dem Ordner, aus dem Sie die Cloud Speech-to-Text API aufrufen möchten.
cat $GOOGLE_APPLICATION_CREDENTIALS
„Muss einkanaliges Audio (Mono) verwenden“
Sie erhalten diese Meldung:
Must use single channel (mono) audio, but WAV header indicates 2 channels.
Ihre Audiodatei enthält mehr als einen Kanal. Sie müssen zum Transkribieren der Audiodatei deklarieren, dass Ihr Audio über mehrere Kanäle verfügt.
„Muss 16-Bit-Samples für LINEAR_PCM verwenden“
Sie erhalten diese Meldung:
INVALID_ARGUMENT: Must use 16 bit samples for LINEAR_PCM, but the WAV header indicates 8 bits per sample
Möglicherweise müssen Sie die in RecognitionConfig angegebene Codierung ändern.
Informationen zu unterstützten Codierungen in Cloud STT finden Sie in der Anleitung zu Codierungen.
„Sync-Eingang zu lang“
Sie erhalten diese Meldung:
Sync input too long. For audio longer than 1 min use LongRunningRecognize with a 'uri' parameter.
Die Methode der synchronen Erkennung für Cloud STT unterstützt nur die Übertragung von Audiodaten mit einer Länge von bis zu 1 Minute. Für längere Audiodateien verwenden Sie stattdessen die asynchrone Erkennung.
„Ungültige Erkennung 'config': falsche Codierung“
Sie erhalten diese Meldung:
Invalid recognition 'config': bad encoding.
Ihre Audiodatei ist möglicherweise nicht korrekt oder mit einem anderen Codec als in der RecognitionConfig angegeben codiert. Prüfen Sie die Audioeingabe und ob das Feld encoding richtig eingestellt ist.
„Größe der Anfragenutzlast überschreitet das Limit“
Wenn Sie eine der folgenden Meldungen erhalten:
Request payload size exceeds the limit.
Inline audio exceeds duration limit. Please use a GCS URI.
Sie haben die Größenbeschränkung von 10 MB für eine einzelne Anfrage mit einer lokalen Datei an die API überschritten. Sie können Ihre Audiodatei in einen Cloud Storage-Bucket verschieben, um das Limit von 10 MB zu umgehen. Weitere Informationen finden Sie auf der Seite Kontingente und Limits.
„Kontingent überschritten“
Sie erhalten diese Meldung:
RESOURCE_EXHAUSTED: Quota exceeded.
Sie haben das Limit Ihres Minuten- oder Tageskontingents erreicht. Sehen Sie sich die Kontingente und Limits für die Verwendung von Cloud STT an.
Sie können über die Google Cloud Console eine Erhöhung Ihrer Kontingente beantragen.