【发布时间】:2020-03-19 16:01:24
【问题描述】:
我有一个 Catboost 模型,我使用 Python 构建并保持(通过 pickle),我正在尝试使用 AWS Lambda 部署这个模型。我的模型和 lambda_function.py 脚本还有 2 个其他 Python 脚本:functions.py 和 features.py。 Functions 脚本包含用于解析 (JSON) 有效负载、生成预测和返回 JSON 对象的函数。 features 脚本包含列表、字典等,以使解析尽可能高效。这些脚本总共有 3 个依赖项:numpy、pandas 和 catboost。
在 AWS Lambda 中,这些依赖项和模型中的每一个都需要它们自己的“层”。幸运的是,lambda 内置了 numpy,所以我不需要为此创建一个层。但是,对于 pandas 和 Catboost,我需要生成所有模块的文件/目录,压缩它们,然后将它们添加到 S3 存储桶中,以便它们可以用作层。
我必须在 Windows 机器上执行此操作,而我的工作计算机(VDI 和 EC2)不允许我在 Virtual Box 上安装和运行 Ubuntu。
如何在 Windows 环境中创建与 (Linux) AWS Lambda 函数配合使用的压缩文件夹?
【问题讨论】:
-
您的要求无法完成。这些库的 Windows 版本不会在 Lambda 中运行。您可能需要临时启动 Linux EC2 服务器来创建 Lambda 层。
标签: python linux windows amazon-web-services aws-lambda