使用Python Speech Client从Google Speech向文本API请求“获取操作”

问题描述 投票:0回答:1

我正在寻找一种使用get operations来与Google语音API相关的official Google Python Client的方法。

似乎具有与List OperationsGet Operations API进行交互的能力,如图here所示。但是,似乎由客户端公开的only three methods被识别,long_running_recognize和streaming_recognize。 (我链接了Beta文档,但非beta版本似乎相同)。

是否有一种方法可以通过Python客户端执行此操作,而不仅仅是直接击中HTTP路由?

python google-api-python-client google-speech-api
1个回答
0
投票

经过更多搜索后,this github issue中的一位用户发布了一些解决方案:

1)

    client = speech.SpeechClient()
    api = operations_v1.OperationsClient(client.transport.channel)
    op = api.get_operation(operation_name)

对他来说,这没有返回元数据,尽管对我来说(使用google.cloud.speech_v1p1beta)它确实返回了一些元数据,但不是全部(例如,没有返回名称,没有返回诸如startTime,progressPercent等的其他元数据)。

2)

speech_service = discovery.build('speech', 'v1p1beta1')
operation = speech_service.operations().get(name=operation_name).execute()

((不调用execute将返回Google http请求对象,而不是操作)。这样效果更好,并且返回的对象更像原始long_running_recognize请求返回的操作对象。

尽管我仍未找到任何一种解决方案的官方文档。有一个可以或多或少地从source code归纳得出的例子。

© www.soinside.com 2019 - 2024. All rights reserved.