【发布时间】:2020-09-23 13:50:09
【问题描述】:
我正在尝试使用 Google Cloud 函数运行深度学习模型。只是尝试加载它,但它在部署时出现以下错误:
Build failed: Build has timed out.
我只是为深度学习模型加载了一堆文件,总共大约 250MB。很确定这是因为被加载的文件的大小,但不知道如何修复它。
【问题讨论】:
标签: google-cloud-platform google-cloud-functions
我正在尝试使用 Google Cloud 函数运行深度学习模型。只是尝试加载它,但它在部署时出现以下错误:
Build failed: Build has timed out.
我只是为深度学习模型加载了一堆文件,总共大约 250MB。很确定这是因为被加载的文件的大小,但不知道如何修复它。
【问题讨论】:
标签: google-cloud-platform google-cloud-functions
GCF 构建的超时设置为 5 分钟。
我怀疑您的函数编译和部署时间超过 5 分钟,并且您收到 Build failed: Build has timed out. 错误。
有很多因素会影响部署所需的时间,例如如果它需要下载外部文件并且托管该文件的服务很慢(您的学习模型约为 250MB)。
因此我建议使用 Cloud Run。
【讨论】:
如果您在 Cloud Functions 中有很多工作要做,请在函数调用时大声疾呼。听起来您的部署是在部署功能之前尝试在构建/加载时完成这项工作。没有看到你的代码,是无法判断的。
您应该知道,Cloud Functions 并不是一款非常适合进行大量计算工作的产品。即使您将工作推迟到函数调用时,默认超时也是 1 分钟,可配置为最多 9 分钟。如果您的工作可能需要更长的时间,那绝对不合适。
marian.vladoi 推荐的另一个无服务器产品 Cloud Run 也有类似的限制,也不适合大量工作。
一般而言,无服务器计算产品不适合计算成本高昂的工作。这不是他们的设计目的。为此,您应该考虑使用 Compute Engine 之类的东西。如果您需要 Cloud Functions 触发行为,您可以简单地让您的函数将工作委托给另一个计算产品。
【讨论】: