如何增加超时以停止google-cloud-vision DeadlineExceededError?

时间:2017-06-27 14:59:12

标签: ruby-on-rails ruby google-cloud-platform google-cloud-vision

我正在使用Google-cloud-vision' gem(v0.23.0)做一些图像OCR,我的请求随机失败:DeadlineExceededError。错误率从1%到99%不等,每天都是如此,因此非常难以预测。

当绕过gem并使用Google REST API并传入我的Base64Encoded图像时,事情似乎完美无瑕。

我猜测DeadlineExceededError正在使用一些超时变量,而REST api却没有。所以,我想知道如何通过使用原始ruby代码VS公司创建的库来感受正确,以此来增加Timeout。

1 个答案:

答案 0 :(得分:2)

来自服务器的DeadlineExceededError代码看起来504,但依赖于您可以手动指定超时的代码 - def vision scope: nil, timeout: nil, client_config: nil

所以你可以:

gcloud = Google::Cloud.new
vision = gcloud.vision timeout: 180

样本。