텍스트 분석 배치 API - Amazon Comprehend Medical

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

텍스트 분석 배치 API

Amazon Comprehend Medical을 사용하여 Amazon S3 버킷에 저장된 의학 텍스트를 분석합니다. 최대 10GB의 문서를 한 번에 분석할 수 있습니다. 콘솔을 사용하여 배치 분석 작업을 생성 및 관리하거나 배치 API를 사용하여 보호 대상 건강 정보(PHI)를 비롯한 의료 엔터티를 탐지할 수 있습니다. API는 진행 중인 배치 분석 작업을 시작, 중지, 나열하고 설명합니다.

배치 분석 및 기타 Amazon Comprehend Medical 작업에 대한 요금 정보는 여기에서 확인할 수 있습니다.

중요 공지 사항

Amazon Comprehend Medical의 배치 분석 작업은 전문적인 의학적 조언, 진단 또는 치료를 대체할 수 없습니다. 사용 사례에 적합한 신뢰 임계값을 식별하고, 높은 정확도가 필요한 상황에서는 높은 신뢰 임계값을 사용합니다. 특정 사용 사례의 경우 적절한 교육을 받은 인간 검토자가 결과를 검토하고 확인해야 합니다. Amazon Comprehend Medical의 모든 작업은 숙련된 의료 전문가로부터 정확성과 적절한 의학적 판단을 검토받은 후 환자 치료 시나리오에서만 사용해야 합니다.

API를 사용하여 배치 분석 수행

Amazon Comprehend Medical 콘솔 또는 Amazon Comprehend Medical 배치 API를 사용하여 배치 분석 작업을 실행할 수 있습니다.

필수 조건

Amazon Comprehend Medical API를 사용하는 경우 AWS Identity Access and Management(IAM) 정책을 만들고 IAM 역할에 연결해야 합니다. IAM 역할 및 신뢰 정책에 대한 자세한 내용은 IAM 권한 및 정책을 참조하세요.

  1. 데이터를 S3 버킷에 업로드합니다.

  2. 새 분석 작업을 시작하려면 StartEntitiesDetection V2Job 작업 또는 DetectionJob StartPHI 작업을 사용하십시오. 작업을 시작할 때 Amazon Comprehend Medical에 입력 파일이 포함된 입력 S3 버킷의 이름을 알리고, 배치 분석 후 파일을 기록할 출력 S3 버킷을 지정합니다.

  3. 콘솔이나 DescribeEntitiesDetection V2Job 작업 또는 DescribePHI 작업을 사용하여 작업 진행 상황을 모니터링합니다. DetectionJob 또한 ListEntitiesDetection V2Jobs와 ListPHI를 DetectionJobs 사용하면 배치 분석 작업을 연결하는 모든 온톨로지의 상태를 볼 수 있습니다.

  4. 진행 중인 작업을 중지해야 하는 경우 StopEntitiesDetection V2Job 또는 StopPHi를 사용하여 분석을 중단하십시오. DetectionJob

  5. 분석 작업의 결과를 보려면 작업을 시작할 때 구성한 출력 S3 버킷을 참조하세요.

콘솔을 사용하여 배치 분석 수행

  1. 데이터를 S3 버킷에 업로드합니다.

  2. 새 분석 작업을 시작하려면 수행할 분석 유형을 선택합니다. 그런 다음, 입력 파일이 포함되어 있는 S3 버킷의 이름과 출력 파일을 보내려는 S3 버킷의 이름을 제공합니다.

  3. 작업이 진행 중인 동안 작업 상태를 모니터링합니다. 콘솔에서 분석 시작 및 종료 시점을 포함하여 모든 배치 분석 작업과 상태를 볼 수 있습니다.

  4. 분석 작업의 결과를 보려면 작업을 시작할 때 구성한 출력 S3 버킷을 참조하세요.

배치 작업에 대한 IAM 정책

Amazon Comprehend Medical 배치 API를 호출하는 IAM 역할에는 입력 및 출력 파일이 포함된 S3 버킷에 대한 액세스 권한을 부여하는 정책이 있어야 합니다. Amazon Comprehend Medical 서비스가 역할을 맡을 수 있도록 여기에도 신뢰 관계를 할당해야 합니다. IAM 역할 및 신뢰 정책에 대한 자세한 내용은 IAM 역할을 참조하세요.

역할에는 다음과 같은 정책도 있어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::input-bucket/*" ], "Effect": "Allow" }, { "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::input-bucket", "arn:aws:s3:::output-bucket", ], "Effect": "Allow" }, { "Action": [ "s3:PutObject" ], "Resource": [ " arn:aws:s3:::output-bucket/*" ], "Effect": "Allow" } ] }

역할은 다음과 같은 신뢰 관계를 맺고 있어야 합니다. 혼동되는 대리인 보안 문제를 방지하기 위해 aws:SourceAccount aws:SourceArn 조건 키를 사용하여 혼동되는 대리인 보안 문제를 방지하는 것이 좋습니다. 혼란스러운 대리인 문제와 AWS 계정 보호 방법에 대해 자세히 알아보려면 IAM 설명서의 혼동된 대리인 문제를 참조하십시오.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":[ "comprehendmedical.amazonaws.com" ] }, "Action":"sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:aws:comprehendmedical:region:account_id:*" } } } ] }

배치 분석 출력 파일

Amazon Comprehend Medical은 배치의 각 입력 파일에 대해 하나의 출력 파일을 생성합니다. 이 파일의 확장자는 .out입니다. Amazon Comprehend Medical은 먼저 AwsAccountIdJobType- JobId-를 이름으로 사용하여 출력 S3 버킷에 디렉터리를 생성한 다음 배치에 대한 모든 출력 파일을 이 디렉터리에 씁니다. Amazon Comprehend Medical은 한 작업의 출력이 다른 작업의 출력을 덮어쓰지 않도록 이 새 디렉터리를 생성합니다.

배치 작업의 출력은 동기 작업과 동일한 출력을 생성합니다. Amazon Comprehend Medical에서 생성한 출력의 예는 Detect entities(버전 2) 섹션을 참조하십시오.

각 배치 작업은 작업에 대한 정보가 포함된 세 개의 매니페스트 파일을 생성합니다.

  • Manifest - 작업을 요약합니다. 작업에 사용된 파라미터, 전체 작업 크기, 처리된 파일 수에 대한 정보를 제공합니다.

  • success - 성공적으로 처리된 파일에 대한 정보를 제공합니다. 입력 및 출력 파일 이름과 입력 파일 크기를 포함합니다.

  • unprocessed - 배치 작업에서 처리되지 않은 파일을 오류 코드 및 파일별 오류 메시지와 함께 나열합니다.

Amazon Comprehend Medical은 사용자가 배치 작업을 위해 지정한 출력 디렉터리에 파일을 기록합니다. 요약 매니페스트 파일은 Manifest_AccountId-Operation-JobId 제목이 붙은 폴더와 함께 출력 폴더에 기록됩니다. 매니페스트 폴더 내에는 성공 매니페스트가 들어 있는 success 폴더가 있습니다. 처리되지 않은 파일 매니페스트가 들어 있는 failed 폴더도 포함되어 있습니다. 다음 단원에서는 매니페스트 파일의 구조를 보여줍니다.

배치 매니페스트 파일

다음은 배치 매니페스트 파일의 JSON 구조입니다.

{"Summary" : {"Status" : "COMPLETED | FAILED | PARTIAL_SUCCESS | STOPPED", "JobType" : "EntitiesDetection | PHIDetection", "InputDataConfiguration" : { "Bucket" : "input bucket", "Path" : "path to files/account ID-job type-job ID" }, "OutputDataConfiguration" : { "Bucket" : "output bucket", "Path" : "path to files" }, "InputFileCount" : number of files in input bucket, "TotalMeteredCharacters" : total characters processed from all files, "UnprocessedFilesCount" : number of files not processed, "SuccessFilesCount" : total number of files processed, "TotalDurationSeconds" : time required for processing, "SuccessfulFilesListLocation" : "path to file", "UnprocessedFilesListLocation" : "path to file", "FailedJobErrorMessage": "error message or if not applicable, The status of the job is completed" } }

성공 매니페스트 파일

다음은 성공적으로 처리된 파일에 대한 정보가 포함된 파일의 JSON 구조입니다.

{ "Files": [{ "Input": "input path/input file name", "Output": "output path/output file name", "InputSize": size in bytes of input file }, { "Input": "input path/input file name", "Output": "output path/output file name", "InputSize": size in bytes of input file }] }

처리되지 않은 매니페스트 파일

다음은 처리되지 않은 파일에 대한 정보가 포함된 매니페스트 파일의 JSON 구조입니다.

{ "Files" : [ { "Input": "file_name_that_failed", "ErrorCode": "error code for exception", "ErrorMessage": "explanation of the error code and suggestions" }, { ...} ] }