【问题标题】:Using sklearn and pandas in AWS Lambda Layer在 AWS Lambda 层中使用 sklearn 和 pandas
【发布时间】:2021-06-07 23:10:13
【问题描述】:

我能够成功地按照本教程here 压缩scikit-learn 包并创建一个层。现在我加载了两层,一层用于scikit-learn,一层用于numpyscipy,AWS 已经拥有。你可以在下面看到

当我现在尝试运行我的 lambda 时,我收到一个错误提示

"errorMessage": "Unable to import module 'lambda_function': No module named 'pandas'"

因此,我尝试通过将 pandas 文件压缩在一起来执行相同的过程,但是当我尝试加载它时,我超过了最大 50mb。有没有一起加载 pandas 和 sklearn,这样我就不会超过这个最大限制?

【问题讨论】:

  • 先上传你的 zip 到 s3,然后链接 S3 zip。
  • @Marcin 这有什么帮助?您仍然必须从 zip 文件或 S3 存储桶创建层。

标签: python amazon-web-services scikit-learn aws-lambda


【解决方案1】:

您可以使用docker container as Lambda images。这将允许您使用更大的库。

【讨论】:

    【解决方案2】:

    50 MB 的限制仅适用于上传。来自docs

    50 MB(压缩,用于直接上传

    如果您想拥有更大的层,您必须先将它们上传到 S3。那么 50 MB 的限制不适用,您会受到以下限制:

    250 MB(解压缩,包括图层)

    【讨论】:

    • 好的,我将 zip 文件上传到 s3,但要添加层,您仍然需要在 Lambda 中创建并添加它们。所以我不确定这会有什么帮助。
    • @justanewb 您的问题是,据我所知,您超出了 50 MB 的限制。现在它不会适用了。
    • 我很抱歉,我一定不明白。您能否通过 AWS 逐步解释我如何实现您所说的。到目前为止,我将所有压缩后的 python 模块都放在了一个 S3 存储桶中。
    猜你喜欢
    • 2020-12-04
    • 1970-01-01
    • 2017-11-15
    • 2021-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-31
    • 1970-01-01
    相关资源
    最近更新 更多