Amazon A2I 출력 데이터 - 아마존 SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon A2I 출력 데이터

기계 학습 워크플로에서 Amazon A2I에 데이터 객체를 보내면 인적 루프가 생성되고 인적 검토자가 해당 데이터 객체를 검토하는 작업을 받게 됩니다. 각 인적 검토 작업의 출력 데이터는 인적 검토 워크플로에서 지정하는 Amazon Simple Storage Service(S3)의 결과 버킷에 저장됩니다. 데이터 경로에서 YYYY/MM/DD/hh/mm/ss는 인적 루프 생성 날짜(년(YYYY), 월(MM), 일(DD)) 및 생성 시간(시(hh), 분(mm), 초(ss))을 나타냅니다.

s3://customer-output-bucket-specified-in-flow-definition/flow-definition-name/YYYY/MM/DD/hh/mm/ss/human-loop-name/output.json

출력 데이터의 내용은 태스크 유형(내장 또는 사용자 지정)과 사용하는 인력 유형에 따라 달라집니다. 출력 데이터에는 항상 인적 작업자의 응답이 포함됩니다. 또한 출력 데이터에는 인적 루프, 인적 검토자(작업자) 및 데이터 객체에 대한 메타데이터가 포함될 수 있습니다.

다음 섹션을 사용해 다양한 태스크 유형 및 인력을 위한 Amazon A2I 출력 데이터 형식에 대해 자세히 알아보세요.

기본 제공 태스크 유형의 출력 데이터

Amazon A2I 기본 제공 태스크 유형에는 Amazon Textract 및 Amazon Rekognition이 포함됩니다. 인적 응답 외에도 이러한 태스크 중 하나의 출력 데이터에는 인적 루프가 생성된 이유에 대한 세부 정보와 인적 루프를 생성하는 데 사용된 통합 서비스에 대한 정보가 포함됩니다. 다음 테이블을 사용하여 모든 기본 제공 태스크 유형의 출력 데이터 스키마에 대해 자세히 알아보세요. 각 파라미터의 값은 Amazon A2I에서 사용하는 서비스에 따라 달라집니다. 이러한 서비스별 값에 대한 자세한 내용은 이 섹션의 두 번째 테이블을 참조하세요.

파라미터 값 유형 예제 값 설명
awsManagedHumanLoopRequestSource

String

AWS/Rekognition/DetectModerationLabels/Image/V3 또는 AWS/Textract/AnalyzeDocument/Forms/V1 Amazon A2I에서 휴먼 루프를 생성하도록 요청한 API 작업 및 관련 AWS 서비스 Amazon A2I 인적 루프를 구성하는 데 사용하는 API 작업입니다.
flowDefinitionArn

String

arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name

인적 루프를 생성하는 데 사용된 인적 검토 워크플로(플로우 정의)의 Amazon 리소스 수(ARN)입니다.

humanAnswers

JSON 객체 목록

{ "answerContent": { "AWS/Rekognition/DetectModerationLabels/Image/V3": { "moderationLabels": [...] } },
또는
{ "answerContent": { "AWS/Textract/AnalyzeDocument/Forms/V1": { "blocks": [...] } },
작업자 응답이 포함된 answerContent의 JSON 객체 목록.

이 객체에는 제출 세부 정보와, “프라이빗 작업 인력을 사용한 경우”, 작업자 메타데이터도 포함됩니다. 자세한 내용은 작업자 활동 추적 섹션을 참조하세요.

Amazon Rekognition DetectModerationLabel 검토 태스크에서 생성된 인적 루프 출력 데이터의 경우 이 파라미터에는 긍정적인 응답만 포함됩니다. 예를 들어 작업자가 콘텐츠 없음을 선택하면 이 응답은 포함되지 않습니다.

humanLoopName

String

'human-loop-name'

인적 루프의 이름입니다.
inputContent

JSON 객체

{ "aiServiceRequest": {...}, "aiServiceResponse": {...}, "humanTaskActivationConditionResults": {...}, "selectedAiServiceResponse": {...} }

휴먼 루프를 생성하도록 요청했을 때 AWS 서비스가 Amazon A2I로 전송한 입력 콘텐츠입니다.

aiServiceRequest

JSON 객체

{ "document": {...}, "featureTypes": [...], "humanLoopConfig": {...} }
또는
{ "image": {...}, "humanLoopConfig": {...} }

Amazon A2I와 통합된 AWS 서비스로 전송된 원본 요청입니다. 예를 들어 Amazon A2I와 함께 Amazon Rekognition을 사용하는 경우 여기에는 API 작업 DetectModerationLabels를 통해 이루어진 요청이 포함됩니다. Amazon Textract 통합의 경우 여기에는 AnalyzeDocument를 통해 이루어진 요청이 포함됩니다.

aiServiceResponse

JSON 객체

{ "moderationLabels": [...], "moderationModelVersion": "3.0" }

또는

{ "blocks": [...], "documentMetadata": {} }

서비스의 전체 응답. AWS 이는 사람의 검토가 필요한지 여부를 결정하는 데 사용되는 데이터입니다. 이 객체에는 인적 검토자와 공유되지 않은 데이터 객체에 대한 메타데이터가 포함될 수 있습니다.

selectedAiServiceResponse

JSON 객체

{ "moderationLabels": [...], "moderationModelVersion": "3.0" }

또는

{ "blocks": [...], "documentMetadata": {} }

ActivationConditions의 활성화 조건과 일치하는 aiServiceResponse의 서브셋.

aiServiceResponse에 나열된 모든 데이터 객체는 추론을 무작위로 샘플링하거나 모든 추론이 활성화 조건을 시작한 경우에 selectedAiServiceResponse에 나열됩니다.

humanTaskActivationConditionResults

JSON 객체

{ "Conditions": [...] }

인적 루프가 생성된 이유를 포함하는 inputContent의 JSON 객체입니다. 여기에는 인적 검토 워크플로(흐름 정의)에 포함된 활성화 조건 목록(Conditions)과 각 조건에 대한 평가 결과, 즉 이 결과는 true 또는 false입니다. 활성화 조건에 대한 자세한 내용은 Amazon 증강 AI의 인적 루프 활성화 조건에 대한 JSON 스키마 섹션을 참조하세요.

다음 테이블의 탭을 선택하여 태스크 유형별 파라미터에 대해 알아보고 각 기본 제공 태스크 유형에 대한 예제 출력 데이터 코드 블록을 확인하세요.

Amazon Textract Task Type Output Data

Amazon Textract 내장 통합을 사용하면 출력 데이터에 awsManagedHumanLoopRequestSource의 값으로 'AWS/Textract/AnalyzeDocument/Forms/V1'이 표시됩니다.

answerContent 파라미터는 Amazon A2I로 전송된 모든 블록에 대한 사람의 응답을 포함하는 Block 객체를 포함합니다.

aiServiceResponse 파라미터에는 를 사용하여 AnalyzeDocument로 전송된 원본 요청에 대한 Amazon Textract의 응답이 들어 있는 Block 객체도 포함되어 있습니다.

블록 객체에 표시되는 파라미터에 대해 자세히 알아보려면 Amazon Textract 개발자 안내서의 블록을 참조하세요.

다음은 Amazon Textract 문서 분석 추론의 Amazon A2I 인간 검토의 출력 데이터 예제입니다.

{ "awsManagedHumanLoopRequestSource": "AWS/Textract/AnalyzeDocument/Forms/V1", "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name", "humanAnswers": [ { "answerContent": { "AWS/Textract/AnalyzeDocument/Forms/V1": { "blocks": [...] } }, "submissionTime": "2020-09-28T19:17:59.880Z", "workerId": "111122223333", "workerMetadata": { "identityData": { "identityProviderType": "Cognito", "issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_111111", "sub": "c6aa8eb7-9944-42e9-a6b9-111122223333" } } } ], "humanLoopName": "humnan-loop-name", "inputContent": { "aiServiceRequest": { "document": { "s3Object": { "bucket": "DOC-EXAMPLE-BUCKET1", "name": "document-demo.jpg" } }, "featureTypes": [ "TABLES", "FORMS" ], "humanLoopConfig": { "dataAttributes": { "contentClassifiers": [ "FreeOfPersonallyIdentifiableInformation" ] }, "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name", "humanLoopName": "humnan-loop-name" } }, "aiServiceResponse": { "blocks": [...], "documentMetadata": { "pages": 1 } }, "humanTaskActivationConditionResults": { "Conditions": [ { "EvaluationResult": true, "Or": [ { "ConditionParameters": { "ImportantFormKey": "Mail address", "ImportantFormKeyAliases": [ "Mail Address:", "Mail address:", "Mailing Add:", "Mailing Addresses" ], "KeyValueBlockConfidenceLessThan": 100, "WordBlockConfidenceLessThan": 100 }, "ConditionType": "ImportantFormKeyConfidenceCheck", "EvaluationResult": true }, { "ConditionParameters": { "ImportantFormKey": "Mail address", "ImportantFormKeyAliases": [ "Mail Address:", "Mail address:", "Mailing Add:", "Mailing Addresses" ] }, "ConditionType": "MissingImportantFormKey", "EvaluationResult": false } ] } ] }, "selectedAiServiceResponse": { "blocks": [...] } } }
Amazon Rekognition Task Type Output Data

Amazon Textract 내장 통합을 사용하면 출력 데이터에 'AWS/Rekognition/DetectModerationLabels/Image/V3'의 값으로 문자열이awsManagedHumanLoopRequestSource 표시됩니다.

answerContent 파라미터는 Amazon A2I로 전송된 모든 조절 레이블에 대한 사람의 응답을 포함하는 moderationLabels 객체를 포함합니다.

aiServiceResponse 파라미터에는 DetectModerationLabels로 전송된 원본 요청에 대한 Amazon Rekognition의 응답이 들어 있는 moderationLabels 객체도 포함되어 있습니다.

블록 객체에 표시되는 파라미터에 대해 자세히 알아보려면 Amazon ModerationLabelRekognition 개발자 안내서를 참조하십시오.

다음은 Amazon Rekognition Image 조절 추론의 Amazon A2I 인간 검토의 출력 데이터 예제입니다.

{ "awsManagedHumanLoopRequestSource": "AWS/Rekognition/DetectModerationLabels/Image/V3", "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name", "humanAnswers": [ { "answerContent": { "AWS/Rekognition/DetectModerationLabels/Image/V3": { "moderationLabels": [...] } }, "submissionTime": "2020-09-28T19:22:35.508Z", "workerId": "ef7294f850a3d9d1", "workerMetadata": { "identityData": { "identityProviderType": "Cognito", "issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_111111", "sub": "c6aa8eb7-9944-42e9-a6b9-111122223333" } } } ], "humanLoopName": "humnan-loop-name", "inputContent": { "aiServiceRequest": { "humanLoopConfig": { "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name", "humanLoopName": "humnan-loop-name" }, "image": { "s3Object": { "bucket": "DOC-EXAMPLE-BUCKET1", "name": "example-image.jpg" } } }, "aiServiceResponse": { "moderationLabels": [...], "moderationModelVersion": "3.0" }, "humanTaskActivationConditionResults": { "Conditions": [ { "EvaluationResult": true, "Or": [ { "ConditionParameters": { "ConfidenceLessThan": 98, "ModerationLabelName": "Suggestive" }, "ConditionType": "ModerationLabelConfidenceCheck", "EvaluationResult": true }, { "ConditionParameters": { "ConfidenceGreaterThan": 98, "ModerationLabelName": "Female Swimwear Or Underwear" }, "ConditionType": "ModerationLabelConfidenceCheck", "EvaluationResult": false } ] } ] }, "selectedAiServiceResponse": { "moderationLabels": [ { "confidence": 96.7122802734375, "name": "Suggestive", "parentName": "" } ], "moderationModelVersion": "3.0" } } }

사용자 지정 태스크 유형의 출력 데이터

Amazon A2I를 사용자 지정 인적 검토 워크플로에 추가하면 인적 검토 태스크에서 반환된 출력 데이터에 다음과 같은 파라미터가 표시됩니다.

파라미터 값 유형 설명

flowDefinitionArn

String

인적 루프를 생성하는 데 사용된 인적 검토 워크플로(플로우 정의)의 Amazon 리소스 수(ARN)입니다.

humanAnswers

JSON 객체 목록

작업자 응답이 포함된 answerContent의 JSON 객체 목록. 이 파라미터의 값은 작업자 태스크 템플릿에서 받은 출력에 따라 결정됩니다.

프라이빗 작업 인력을 사용하는 경우 작업자 메타데이터가 포함됩니다. 자세한 내용은 작업자 활동 추적 섹션을 참조하세요.

humanLoopName

String 인적 루프의 이름입니다.

inputContent

JSON 객체

StartHumanLoop에 요청하여 Amazon A2I로 전송된 입력 콘텐츠.

다음은 Amazon A2I 및 Amazon Transcribe와의 사용자 지정 통합에서 얻은 출력 데이터의 예제입니다. 이 예시에서는 inputContent이 다음과 같이 구성되어 있습니다.

  • Amazon S3에 있는 .mp4 파일 경로와 동영상 제목

  • Amazon Transcribe에서 반환된 트랜스크립션 (Amazon Transcribe 출력 데이터에서 파싱됨)

  • 작업자 태스크 템플릿에서 .mp4 파일을 클리핑하고 작업자에게 동영상의 관련 부분을 보여주기 위해 사용하는 시작 및 종료 시간입니다.

{ "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name", "humanAnswers": [ { "answerContent": { "transcription": "use lambda to turn your notebook" }, "submissionTime": "2020-06-18T17:08:26.246Z", "workerId": "ef7294f850a3d9d1", "workerMetadata": { "identityData": { "identityProviderType": "Cognito", "issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_111111", "sub": "c6aa8eb7-9944-42e9-a6b9-111122223333" } } } ], "humanLoopName": "human-loop-name", "inputContent": { "audioPath": "s3://DOC-EXAMPLE-BUCKET1/a2i_transcribe_demo/Fully-Managed Notebook Instances with Amazon SageMaker - a Deep Dive.mp4", "end_time": 950.27, "original_words": "but definitely use Lambda to turn your ", "start_time": 948.51, "video_title": "Fully-Managed Notebook Instances with Amazon SageMaker - a Deep Dive.mp4" } }

작업자 활동 추적

Amazon A2I는 작업 출력 데이터에서 개별 작업자를 추적하는 데 사용할 수 있는 정보를 제공합니다. 인적 검토 태스크를 수행한 작업자를 식별하려면 Amazon S3의 출력 데이터에서 다음을 사용합니다.

  • acceptanceTime은 작업자가 태스크를 수락한 시간입니다. 이 날짜 및 시간 스탬프의 형식은 년(YYYY), 월(MM), 일(DD), 시(HH), 분(MM), 초(SS), 및 밀리초(mmm)에 대한 YYYY-MM-DDTHH:MM:SS.mmmZ입니다. 날짜 및 시간은 T로 구분됩니다.

  • submissionTime는 이 시간은 작업자가 제출 버튼을 사용하여 주석을 제출한 시간입니다. 이 날짜 및 시간 스탬프의 형식은 년(YYYY), 월(MM), 일(DD), 시(HH), 분(MM), 초(SS), 및 밀리초(mmm)에 대한 YYYY-MM-DDTHH:MM:SS.mmmZ입니다. 날짜 및 시간은 T로 구분됩니다.

  • timeSpentInSeconds은 작업자가 해당 태스크를 적극적으로 수행한 총 시간(초)을 보고합니다. 이 지표에는 작업자가 일시 중지하거나 휴식을 취한 시간은 포함되지 않습니다.

  • workerId는 각 작업자에게 고유합니다.

  • workerMetadata에서 프라이빗 작업 인력을 사용하는 경우 다음과 같은 내용이 표시됩니다.

    • identityProviderType은 프라이빗 작업 인력을 관리하는 데 사용하는 서비스입니다.

    • issuer은 이 인적 검토 태스크에 배정된 작업 팀과 관련된 Cognito 사용자 풀 또는 OpenID Connect(OIDC) 자격 증명 공급자(IdP) 발급자입니다.

    • 고유 sub 식별자는 해당 작업자를 참조합니다. Amazon Cognito를 사용하여 인력을 생성하는 경우 Amazon Cognito를 사용하여 이 ID와 연결된 이 작업자(예: 해당 이름 또는 사용자 이름)에 대한 세부 정보를 검색할 수 있습니다. 방법을 알아보려면 Amazon Cognito 개발자 안내서사용자 계정 관리 및 검색을 참조하세요.

다음은 Amazon Cognito를 사용하여 프라이빗 작업 인력을 생성하는 경우 확인할 수 있는 출력의 예입니다. 이는 identityProviderType에서 식별됩니다.

"submissionTime": "2020-12-28T18:59:58.321Z", "acceptanceTime": "2020-12-28T18:59:15.191Z", "timeSpentInSeconds": 40.543, "workerId": "a12b3cdefg4h5i67", "workerMetadata": { "identityData": { "identityProviderType": "Cognito", "issuer": "https://cognito-idp.aws-region.amazonaws.com/aws-region_123456789", "sub": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" } }

다음은 OIDC IdP를 사용하여 프라이빗 작업 인력을 생성하는 경우 확인할 수 있는 출력의 예입니다.

"workerMetadata": { "identityData": { "identityProviderType": "Oidc", "issuer": "https://example-oidc-ipd.com/adfs", "sub": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" } }

프라이빗 작업 인력 사용에 대한 자세한 내용은 프라이빗 작업 인력 사용을 참조하세요.