为什么当我在本地运行笔记本电脑时,我可以导入LambdaStep,而不是在Sagemaker studio中运行它?&l



当我可以在本地运行时,我一直在努力在Sagemaker studio的Jupyter笔记本中运行此代码片段。我以前进口过Sagemaker。我可以顺利导入Sagemaker,并且我之前已经pip安装过了。

from sagemaker.workflow.lambda_step import LambdaStep

下面是当我试图运行它时抛出的错误:

ModuleNotFoundError: No module named 'sagemaker.workflow.lambda_step'

我也尝试了不同的导入方式,比如"from sagemaker"。"工作流导入lambda_step"或"sagemaker.workflow.lambda_step"。调用函数时直接调用LambdaStep。这些方法对我也没有帮助。

我也不知道为什么我不能导入LambdaStep时,我可以在Sagemaker studio顺利运行下面的代码片段:

from sagemaker.workflow.pipeline import Pipeline

我不知道如何解决这个问题,如果有人能帮助我,我将不胜感激!

在这个问题发布的时候,sagemaker.workflow.lambda_step是非常新的。最有可能的是,OP的SageMaker Studio环境有一段时间没有更新了(这里是更新说明)。Lambda步骤仅在SageMaker Python SDK 2.51上发布,从以前的SDK版本导入会失败。

如果不更新内核,内核中的所有包将保持在内核启动时的版本。一个可能的解决方法是使用pip install -U强制更新。

奇怪的是,我的问题在我再次安装sagemaker后解决了,但是通过使用这个代码片段

!pip install -U sagemaker

最新更新