如果我想使用GCP云函数自动化(并行化)使用VISION API(Python3)进行图像识别,但CF有一个9分钟的硬限制。如果一张图片非常大,需要很长时间才能被识别(超过9分钟),有什么建议吗?
建议将大型图像分成较小的部分,以便在9分钟内完成每个部分的处理。可以通过递归调用云函数来实现这一点。另外,您还可以考虑使用其他服务,如Google Compute Engine或Kubernetes Engine,以获得更长的执行时间。
如果我想使用GCP云函数自动化(并行化)使用VISION API(Python3)进行图像识别,但CF有一个9分钟的硬限制。如果一张图片非常大,需要很长时间才能被识别(超过9分钟),有什么建议吗?
Cloud Vision APIs提供了API调用的异步版本,将返回作业的操作ID。
我会创建两个Cloud Functions来处理这种情况。主要函数将启动异步操作,响应代码应匹配您是否能够启动作业,正文包含任何您想要的详细信息以及要跟进的OperationID。
第二个函数将接受操作ID并检查当前状态,如果操作已完成,则返回结果。无论函数内部是否定期轮询或仅进行快速检查和立即响应取决于您以及您希望该过程如何工作。我可能会让前端显示“处理”图标,并每10秒检查一次,然后立即响应。