我正在尝试使用 Cloud Functions (python) 在本教程中实现 Speech-to-Text API
这里实现的是一个异步的、长时间运行的函数。我的目标是让 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
库是一个好的解决方案吗?