是否可以选择我想要存储管道运行文件的S3目录?



我的管道运行目录是在我的默认桶目录中创建的,它变得混乱了。我一直试图在s3默认桶中设置一个子目录来存储我所有的管道运行目录(预处理,训练,评估,解释…),但我还没有成功。有人能帮我做一下吗?

我试过把我的步骤名称从CrossPreprocess-Data改为sagemaker/cross-project/CrossPreprocess-Data,它起作用了。它在目录sagemaker/cross-project

中创建了我的管道目录
step_process = ProcessingStep(
name="sagemaker/cross-project/CrossPreprocess-Data",
processor=sklearn_processor,
outputs=[
ProcessingOutput(output_name="train", source="/opt/ml/processing/train"),
ProcessingOutput(output_name="validation", source="/opt/ml/processing/val"),
ProcessingOutput(output_name="test", source="/opt/ml/processing/test"),
ProcessingOutput(output_name="metafiles", source="/opt/ml/processing/metafiles"),
],
code=os.path.join(BASE_DIR, "preprocess.py"),
job_arguments=["--input-data", input_data, "--run-datetime", run_datetime, "--project-name", project_name],
)

但是,在下一步中,我得到了这个错误,我无法继续执行

ClientError: An error occurred (ValidationException) when calling the UpdatePipeline operation: Unable to parse pipeline definition. Invalid property reference 'Steps.sagemaker/cross-project/CrossPreprocess-Data.ProcessingOutputConfig.Outputs['train'].S3Output.S3Uri' in GetFunction definition.

您可以在ProcessingOutput中设置目的地,以指定在S3 bucket中应该保存文件的位置。

https://sagemaker.readthedocs.io/en/stable/api/training/processing.html sagemaker.processing.ProcessingOutput

最新更新