0

Cloud Functions (python) を使用して、このチュートリアルで Speech-to-Text API を実装しようとしています。

Speech-to-Text 長期実行

ここに実装されているのは、非同期で長時間実行される関数です。私の目的は、Cloud Function でサイトから音声をダウンロードし、それを S3 に書き込んでから、その音声の S3 ロケーションで Speech-to-Text API クライアント関数を呼び出して、トランスサイブされたテキストを返すようにすることです。チュートリアルの短縮コードは次のとおりです。

from google.cloud import speech_v1 as speech

client = speech.SpeechClient()
# storage_uri = 'gs://cloud-samples-data/speech/brooklyn_bridge.raw'
# some configuration
audio = {"uri": storage_uri}
operation = client.long_running_recognize(config, audio)

ただし、オーディオが長すぎる場合、Cloud Function の最大タイムアウトにも収まらず、ログにタイムアウトが発生します。おそらく Speech-to-Text API によって終了されましたclient.long_running_recognizeが、Cloud Function はそれを待つことができません。この場合、どうすればよいですか?Python でライブラリを使用することasyncioは良い解決策ですか?

4

1 に答える 1

2

現在、Cloud Functions の最大タイムアウトは最大9 分です。

より長い操作を実行できる他の GCP サービスを使用できます。たとえば、App Engine フレキシブルの応答時間の制限は 60 分で、基本スケーリングの App Engine スタンダードの応答時間の制限は 24 時間です。

于 2020-03-27T12:39:17.813 に答える