기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
주석 전 및 주석 후 Lambda 함수 테스트
Lambda 콘솔에서 주석 전 및 주석 후 Lambda 함수를 테스트할 수 있습니다. Lambda를 처음 사용하는 경우 AWS Lambda 개발자 안내서의 콘솔과 함께 Lambda 함수 생성 자습서를 사용하여 콘솔에서 Lambda 함수를 테스트하거나 호출하는 방법을 배울 수 있습니다. 이 페이지의 섹션을 사용하여 AWS Serverless Application Repository (SAR)를 통해 제공된 Ground Truth 주석 전 및 주석 후 템플릿을 테스트하는 방법을 배울 수 있습니다.
사전 조건
이 페이지에 설명된 테스트 방법을 이용하려면 다음을 수행해야 합니다.
-
Lambda 콘솔에 대한 액세스 권한이 필요하며 Lambda 함수를 생성하고 호출할 수 있는 권한이 필요합니다. 이러한 권한을 설정하는 방법에 대해 알아보려면 AWS Lambda 함수를 생성하고 선택할 수 있는 권한 부여 섹션을 참조하세요.
-
Ground Truth SAR 레시피를 배포하지 않은 경우 Ground Truth 템플릿을 사용하여 Lambda 함수 생성 의 절차를 이용하여 배포합니다.
-
주석 후 Lambda 함수를 테스트하려면 Amazon S3에 샘플 주석 데이터가 있는 데이터 파일이 있어야 합니다. 간단한 테스트를 위해 다음 코드를 복사하여 파일에 붙여 넣고
sample-annotations.json
으로 저장한 후 이 파일을 Amazon S3에 업로드할 수 있습니다. 이 파일의 S3 URI를 기록해 둡니다. 주석 후 Lambda 테스트를 구성하려면 이 정보가 필요하기 때문입니다.[{"datasetObjectId":"0","dataObject":{"content":"To train a machine learning model, you need a large, high-quality, labeled dataset. Ground Truth helps you build high-quality training datasets for your machine learning models."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":8,\"label\":\"verb\",\"startOffset\":3},{\"endOffset\":27,\"label\":\"adjective\",\"startOffset\":11},{\"endOffset\":33,\"label\":\"object\",\"startOffset\":28},{\"endOffset\":51,\"label\":\"adjective\",\"startOffset\":46},{\"endOffset\":65,\"label\":\"adjective\",\"startOffset\":53},{\"endOffset\":74,\"label\":\"adjective\",\"startOffset\":67},{\"endOffset\":82,\"label\":\"adjective\",\"startOffset\":75},{\"endOffset\":102,\"label\":\"verb\",\"startOffset\":97},{\"endOffset\":112,\"label\":\"verb\",\"startOffset\":107},{\"endOffset\":125,\"label\":\"adjective\",\"startOffset\":113},{\"endOffset\":134,\"label\":\"adjective\",\"startOffset\":126},{\"endOffset\":143,\"label\":\"object\",\"startOffset\":135},{\"endOffset\":169,\"label\":\"adjective\",\"startOffset\":153},{\"endOffset\":176,\"label\":\"object\",\"startOffset\":170}]}}"}}]},{"datasetObjectId":"1","dataObject":{"content":"Sift 3 cups of flour into the bowl."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":4,\"label\":\"verb\",\"startOffset\":0},{\"endOffset\":6,\"label\":\"number\",\"startOffset\":5},{\"endOffset\":20,\"label\":\"object\",\"startOffset\":15},{\"endOffset\":34,\"label\":\"object\",\"startOffset\":30}]}}"}}]},{"datasetObjectId":"2","dataObject":{"content":"Jen purchased 10 shares of the stock on Janurary 1st, 2020."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":3,\"label\":\"person\",\"startOffset\":0},{\"endOffset\":13,\"label\":\"verb\",\"startOffset\":4},{\"endOffset\":16,\"label\":\"number\",\"startOffset\":14},{\"endOffset\":58,\"label\":\"date\",\"startOffset\":40}]}}"}}]},{"datasetObjectId":"3","dataObject":{"content":"The narrative was interesting, however the character development was weak."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":29,\"label\":\"adjective\",\"startOffset\":18},{\"endOffset\":73,\"label\":\"adjective\",\"startOffset\":69}]}}"}}]}]
-
의 지침을 사용하여 주석 후 Lambda 함수의 실행 역할에 레이블 지정 작업을 생성하는 데 사용하는 SageMaker AI 실행 역할을 수임할 수 있는 권한을 주석에 액세스할 수 있는 주석 후 Lambda 권한 부여 부여해야 합니다. 주석 후 Lambda 함수는 SageMaker AI 실행 역할을 사용하여 S3의 주석 데이터 파일
sample-annotations.json
에 액세스합니다.
주석 전 Lambda 함수 테스트
다음 절차에 따라 Ground Truth AWS Serverless Application Repository (SAR) 레시피를 배포할 때 생성된 주석 전 Lambda 함수를 테스트합니다.
Ground Truth SAR 레시피 주석 전 Lambda 함수 테스트
-
Lambda 콘솔에서 함수 페이지
를 엽니다. -
Ground Truth SAR 레시피에서 배포된 주석 전 기능을 선택합니다. 이 함수의 이름은
serverlessrepo-aws-sagema-GtRecipePreHumanTaskFunc-
와 비슷합니다.<id>
-
코드 소스 섹션에서 테스트 옆의 화살표를 선택합니다.
-
테스트 이벤트 구성을 선택합니다.
-
새 테스트 이벤트 생성 옵션을 선택한 상태로 유지합니다.
-
이벤트 템플릿에서 SageMaker Ground Truth PreHumanTask를 선택합니다.
-
테스트에 이벤트 이름을 지정합니다.
-
생성을 선택합니다.
-
테스트 옆의 화살표를 다시 선택하면 생성한 테스트가 선택된 것을 확인할 수 있으며, 이벤트 이름 옆에 점이 표시됩니다. 선택되지 않은 경우 선택합니다.
-
테스트를 선택하여 테스트를 실행합니다.
테스트를 실행한 후 실행 결과를 볼 수 있습니다. 함수 로그에 다음과 비슷한 응답이 표시되어야 합니다.
START RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f Version: $LATEST Received event: { "version": "2018-10-16", "labelingJobArn": "arn:aws:sagemaker:us-east-2:123456789012:labeling-job/example-job", "dataObject": { "source-ref": "s3://sagemakerexample/object_to_annotate.jpg" } } {'taskInput': {'taskObject': 's3://sagemakerexample/object_to_annotate.jpg'}, 'isHumanAnnotationRequired': 'true'} END RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f REPORT RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f Duration: 0.42 ms Billed Duration: 1 ms Memory Size: 128 MB Max Memory Used: 43 MB
이 응답에서 Lambda 함수의 출력이 필수 주석 전 응답 구문과 일치하는 것을 확인할 수 있습니다.
{'taskInput': {'taskObject': 's3://sagemakerexample/object_to_annotate.jpg'}, 'isHumanAnnotationRequired': 'true'}
주석 후 Lambda 함수 테스트
다음 절차에 따라 Ground Truth AWS Serverless Application Repository (SAR) 레시피를 배포할 때 생성된 주석 후 Lambda 함수를 테스트합니다.
Ground Truth SAR 레시피 주석 후 Lambda 테스트
-
Lambda 콘솔에서 함수 페이지
를 엽니다. -
Ground Truth SAR 레시피에서 배포된 주석 후 함수를 선택합니다. 이 함수의 이름은
serverlessrepo-aws-sagema-GtRecipeAnnotationConsol-
와 비슷합니다.<id>
-
코드 소스 섹션에서 테스트 옆의 화살표를 선택합니다.
-
테스트 이벤트 구성을 선택합니다.
-
새 테스트 이벤트 생성 옵션을 선택한 상태로 유지합니다.
-
이벤트 템플릿에서 SageMaker Ground Truth AnnotationConsolidation을 선택합니다.
-
테스트에 이벤트 이름을 지정합니다.
-
제공된 템플릿 코드를 다음과 같이 수정합니다.
-
의 Amazon 리소스 이름(ARN)을 레이블 지정 작업을 생성하는 데 사용한 SageMaker AI 실행 역할의 ARN
roleArn
으로 바꿉니다. -
s3Uri
의 S3 URI를 Amazon S3에 추가한
파일의 URI로 바꿉니다.sample-annotations.json
이렇게 수정한 후에는 테스트가 다음과 비슷한 형태가 됩니다.
{ "version": "2018-10-16", "labelingJobArn": "arn:aws:sagemaker:us-east-2:123456789012:labeling-job/example-job", "labelAttributeName": "example-attribute", "roleArn": "arn:aws:iam::
222222222222
:role/sm-execution-role
", "payload": { "s3Uri": "s3://your-bucket
/sample-annotations.json" } } -
-
생성을 선택합니다.
-
테스트 옆의 화살표를 다시 선택하면 생성한 테스트가 선택된 것을 확인할 수 있으며, 이벤트 이름 옆에 점이 표시됩니다. 선택되지 않은 경우 선택합니다.
-
테스트를 선택하여 테스트를 실행합니다.
테스트를 실행한 후에는 sample-annotations.json
에 포함된 모든 주석의 목록을 포함하고 있는 함수 로그의 -- Consolidated Output
--
섹션이 표시됩니다.