문서 처리 모드 - Amazon Comprehend

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

문서 처리 모드

Amazon Comprehend는 세 가지 문서 처리 모드를 지원합니다. 처리해야 하는 문서 수와 결과를 즉시 확인해야 하는 시간에 따라 모드를 선택할 수 있습니다.

  • 단일 문서 동기 — 단일 문서로 Amazon Comprehend를 호출하면 동기식 응답을 받아 애플리케이션(또는 콘솔)으로 즉시 전송합니다.

  • 다중 문서 동기 — 최대 25개의 문서 컬렉션이 포함된 Amazon Comprehend API를 호출하고 동기식 응답을 받습니다.

  • 비동기 배치 — 대규모 문서 컬렉션의 경우 문서를 Amazon S3 버킷에 넣고 비동기 작업(콘솔 또는 API 작업 사용)을 시작하여 문서를 분석합니다. Amazon Comprehend는 요청에서 지정하는 S3 버킷/폴더에 분석 결과를 저장합니다.

단일 문서 처리

단일 문서 작업은 문서 분석 결과를 애플리케이션에 직접 반환하는 동기 작업입니다. 한 번에 문서 하나에서 작동하는 대화형 애플리케이션을 생성할 때는 단일 문서 동기 작업을 사용하십시오.

동기 API 작업 사용에 대한 자세한 내용은 내장 모델을 사용한 실시간 분석(콘솔) 및 API를 사용한 실시간 분석을 참조하십시오.

다중 문서 동기 처리

처리하려는 문서가 여러 개 있는 경우 Batch* API 작업을 사용하여 한 번에 둘 이상의 문서를 Amazon Comprehend로 보낼 수 있습니다. 각 요청에서 최대 25개의 문서를 전송할 수 있습니다. Amazon Comprehend는 요청의 각 문서에 대해 하나씩 응답 목록을 다시 보냅니다. 이러한 작업을 통해 이루어진 요청은 동기적으로 이루어집니다. 애플리케이션은 작업을 호출한 다음 서비스의 응답을 기다립니다.

Batch* 작업을 사용하는 것은 요청의 각 문서에 대해 단일 문서 API를 호출하는 것과 동일합니다. 이러한 API를 사용하면 애플리케이션 성능이 향상될 수 있습니다.

각 API의 입력은 처리할 문서가 포함된 JSON 구조입니다. BatchDetectDominantLanguage를 제외한 모든 작업에 대해서는 입력 언어를 설정해야 합니다. 각 요청에 대해 입력 언어를 하나만 설정할 수 있습니다. 예를 들어, 다음은 BatchDetectEntities 작업에 대한 입력입니다. 여기에는 두 개의 문서가 포함되어 있으며 영어로 되어 있습니다.

{ "LanguageCode": "en", "TextList": [ "I have been living in Seattle for almost 4 years", "It is raining today in Seattle" ] }

Batch* 작업의 응답에는 ResultListErrorList 등 두 개의 목록이 있습니다. ResultList에는 성공적으로 처리된 각 문서에 대해 하나의 레코드가 들어 있습니다. 요청의 각 문서에 대한 결과는 문서에서 단일 문서 작업을 실행했을 때 얻게 되는 결과와 동일합니다. 각 문서의 결과에는 입력 파일의 문서 순서에 따라 색인이 지정됩니다. BatchDetectEntities 작업의 응답은 다음과 같습니다.

{ "ResultList" : [ { "Index": 0, "Entities": [ { "Text": "Seattle", "Score": 0.95, "Type": "LOCATION", "BeginOffset": 22, "EndOffset": 29 }, { "Text": "almost 4 years", "Score": 0.89, "Type": "QUANTITY", "BeginOffset": 34, "EndOffset": 48 } ] }, { "Index": 1, "Entities": [ { "Text": "today", "Score": 0.87, "Type": "DATE", "BeginOffset": 14, "EndOffset": 19 }, { "Text": "Seattle", "Score": 0.96, "Type": "LOCATION", "BeginOffset": 23, "EndOffset": 30 } ] } ], "ErrorList": [] }

요청에서 오류가 발생하는 경우 응답에는 오류가 포함된 문서를 식별하는 ErrorList가 포함됩니다. 문서는 입력 목록의 색인으로 식별됩니다. 예를 들어, BatchDetectLanguage 작업에 대한 다음 입력에는 처리할 수 없는 문서가 포함되어 있습니다.

{ "TextList": [ "hello friend", "$$$$$$", "hola amigo" ] }

Amazon Comprehend의 응답에는 오류가 포함된 문서를 식별하는 오류 목록이 포함되어 있습니다.

{ "ResultList": [ { "Index": 0, "Languages":[ { "LanguageCode":"en", "Score": 0.99 } ] }, { "Index": 2 "Languages":[ { "LanguageCode":"es", "Score": 0.82 } ] } ], "ErrorList": [ { "Index": 1, "ErrorCode": "InternalServerException", "ErrorMessage": "Unexpected Server Error. Please try again." } ] }

배치 API 작업에 대한 자세한 내용은 실시간 배치 API를 참조하십시오.

비동기 일괄 처리

대용량 문서 및 대규모 문서 컬렉션을 분석하려면 Amazon Comprehend 비동기 작업을 사용하십시오.

문서 컬렉션을 분석하려면 일반적으로 다음 단계를 수행합니다.

  1. Amazon S3 버킷에 문서를 저장합니다.

  2. 하나 이상의 분석 작업을 시작하여 문서를 분석합니다.

  3. 분석 작업 진행 상황을 모니터링합니다.

  4. 작업이 완료되면 S3 버킷에서 분석 결과를 검색합니다.

비동기 API 작업 사용에 대한 자세한 내용은 콘솔을 사용한 분석 작업 실행(콘솔) 및 API를 사용한 비동기 분석 작업을 참조하십시오.