使用 AWS Lambda 在 AWS Sagemaker 上执行 jupyter notebook
Use AWS Lambda to execute a jupyter notebook on AWS Sagemaker
我在 Python 中制作了一个使用大量库的分类器。我已将模型作为 pickle (my_model.pkl) 上传到 Amazon S3。理想情况下,每次有人将文件上传到特定的 S3 存储桶时,它应该触发一个 AWS Lambda 来加载分类器、return 预测并在 Amazon S3 存储桶上保存一些文件。
我想知道是否可以使用 Lambda 在 AWS SageMaker 中执行 Jupyter Notebook。这样我就不必担心依赖关系,并且通常会使分类更直接。
那么,有没有办法使用 AWS Lambda 来执行 Jupyter Notebook?
安排笔记本执行有点像 SageMaker anti-pattern,因为 (1) 您需要自己管理数据 I/O(训练集、训练模型),(2) 您需要自己管理元数据跟踪,(3) 你不能 运行 在分布式硬件上,(4) 你不能使用 Spot。相反,建议计划任务利用各种 SageMaker long-running、后台作业 API:SageMaker Training、SageMaker Processing 或 SageMaker Batch Transform(在批量推理的情况下)。
话虽如此,如果您仍想将笔记本安排到 运行,您可以通过多种方式进行:
- 在 SageMaker CICD Reinvent 2018 Video 中,Notebook 作为 Cloudformation 模板启动,其执行通过 SageMaker 生命周期配置自动执行。
- AWS 发布 this blog post 以记录如何从处理作业中启动 Notebooks
但同样,我对计划任务的建议是将它们从 Jupyter 中删除,将它们变成脚本,然后 运行 在 SageMaker 培训中
无论您的选择如何,只要函数角色具有适当的权限,所有这些任务都可以作为从 Lambda 函数中的 API 调用启动
我同意奥利维尔的观点。使用 Sagemaker 执行 Notebook 可能不是这项工作的正确工具。
Papermill 是 运行 Jupyter 笔记本的框架。
你可以考虑试试this。这允许您将 Jupyter Notebook 直接部署为无服务器云功能,并在后台使用 Papermill。
免责声明:我为 Clouderizer 工作。
完全有可能,根本不是 anti-pattern。这真的取决于你的 use-case。 AWs居然做了一个great article describing it, which includes a lambda
我在 Python 中制作了一个使用大量库的分类器。我已将模型作为 pickle (my_model.pkl) 上传到 Amazon S3。理想情况下,每次有人将文件上传到特定的 S3 存储桶时,它应该触发一个 AWS Lambda 来加载分类器、return 预测并在 Amazon S3 存储桶上保存一些文件。
我想知道是否可以使用 Lambda 在 AWS SageMaker 中执行 Jupyter Notebook。这样我就不必担心依赖关系,并且通常会使分类更直接。
那么,有没有办法使用 AWS Lambda 来执行 Jupyter Notebook?
安排笔记本执行有点像 SageMaker anti-pattern,因为 (1) 您需要自己管理数据 I/O(训练集、训练模型),(2) 您需要自己管理元数据跟踪,(3) 你不能 运行 在分布式硬件上,(4) 你不能使用 Spot。相反,建议计划任务利用各种 SageMaker long-running、后台作业 API:SageMaker Training、SageMaker Processing 或 SageMaker Batch Transform(在批量推理的情况下)。
话虽如此,如果您仍想将笔记本安排到 运行,您可以通过多种方式进行:
- 在 SageMaker CICD Reinvent 2018 Video 中,Notebook 作为 Cloudformation 模板启动,其执行通过 SageMaker 生命周期配置自动执行。
- AWS 发布 this blog post 以记录如何从处理作业中启动 Notebooks
但同样,我对计划任务的建议是将它们从 Jupyter 中删除,将它们变成脚本,然后 运行 在 SageMaker 培训中
无论您的选择如何,只要函数角色具有适当的权限,所有这些任务都可以作为从 Lambda 函数中的 API 调用启动
我同意奥利维尔的观点。使用 Sagemaker 执行 Notebook 可能不是这项工作的正确工具。
Papermill 是 运行 Jupyter 笔记本的框架。
你可以考虑试试this。这允许您将 Jupyter Notebook 直接部署为无服务器云功能,并在后台使用 Papermill。
免责声明:我为 Clouderizer 工作。
完全有可能,根本不是 anti-pattern。这真的取决于你的 use-case。 AWs居然做了一个great article describing it, which includes a lambda