簡體   English   中英

使用 Lambda 進行數據處理 - Sagemaker

[英]Using Lambda for data processing - Sagemaker

我創建了一個 docker 圖像,它的入口點為 processing.py。 此腳本從 /opt/ml/processing/input 獲取數據,並在處理后將其放入 /opt/ml/processing/output 文件夾。

為了處理數據,我應該將文件放在 s3 的 /opt/ml/processing/input 中,然后從 /opt/ml/processing/output 中選擇處理過的文件到 S3 中。

sagemaker 中的以下腳本正在正確執行:

from sagemaker.processing import Processor, ProcessingInput, ProcessingOutput 
import sagemaker

input_data = 's3://sagemaker-ap-south-1-057036842446/sagemaker/Data/Training/Churn_Modelling.csv' 
output_dir = 's3://sagemaker-ap-south-1-057036842446/sagemaker/Outputs/' 
image_uri = '057036842446.dkr.ecr.ap-south-1.amazonaws.com/aws-docker-repo:latest' 
aws_role = sagemaker.get_execution_role()

processor = Processor(image_uri= image_uri, role=aws_role, instance_count=1, instance_type="ml.m5.xlarge")

processor.run(
    inputs=[
        ProcessingInput(
            source=input_data,
            destination='/opt/ml/processing/input'
        )
    ],
    outputs=[
        ProcessingOutput(
            source='/opt/ml/processing/output',
            destination=output_dir
        )
    ]
)

有人可以指導如何使用 lambda function 執行此操作嗎? 它無法識別 sagemaker package,其次,在腳本執行之前放置文件並選擇已處理的文件存在挑戰。

我正在嘗試使用 codepipeline 來自動執行此操作。 但是沒有成功。

不確定如何將 S3 中的圖像放入腳本內部使用的文件夾中

我需要知道 S3 處理步驟如何從 /opt/ml/processing/input 中選取數據

如果您想從 Lambda 開始處理作業,您可以使用 boto3 進行CreateProcessingJob API 調用: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker。 Client.create_processing_job

我建議像您使用 SageMaker SDK 一樣創建作業。創建后,您可以使用DescribeProcessingJob API 調用描述作業:

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.describe_processing_job

然后,您可以使用DescribeProcessingJob API 調用 output 中的信息填寫 Lambda 中的CreateProcessingJob

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM