Запросите «получить операцию» из Google Speech в текстовый API с помощью Python Speech Client - PullRequest
0 голосов
/ 26 апреля 2020

Я ищу способ получить операции , связанные с Google речевым API, используя официальный Google Python Клиент .

Кажется, есть некоторая способность взаимодействовать с API List Operations и Get Operations, как показано здесь . Тем не менее, только три метода , которые, как представляется, предоставляются клиентом, - распознавать, long_running_recognize и streaming_recognize. (Я связал бета-версии документов, но не бета-версия, похоже, такая же).

Есть ли способ сделать это через Python клиент, без прямого подключения к HTTP-маршруту напрямую?

1 Ответ

0 голосов
/ 26 апреля 2020

После поиска больше, один пользователь в этой проблеме github опубликовал пару решений:

1)

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

Для него это не вернуло метаданных, хотя для меня (используя google.cloud.speech_v1p1beta) он вернул некоторые метаданные, но не все (например, вернул имя, не вернул другие, такие как startTime, progressPercent и т. д. c).

2)

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

(без вызова execute будет возвращен объект запроса HTTP http, а не операция). Это работало лучше и возвращало объект, более похожий на объект операции, возвращенный исходным запросом long_running_recognize.

Хотя я до сих пор не нашел официальную документацию для любого решения. Существует пример, который можно более или менее индуктивно получить из исходного кода .

...