0

我正在尝试使用 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库是一个好的解决方案吗?

4

1 回答 1

2

Cloud Functions 当前的最长超时时间为9 分钟

您可以使用其他可以执行更长操作的 GCP 服务。例如,App Engine Flexible 的响应时间限制为 60 分钟,App Engine Standard 的响应时间限制为 24 小时

于 2020-03-27T12:39:17.813 回答