쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

일괄 업로드를 사용하여 인덱스에 직접 문서 추가 - Amazon Kendra

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

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

일괄 업로드를 사용하여 인덱스에 직접 문서 추가

BatchPutDocument API를 사용하여 인덱스에 직접 문서를 추가할 수 있습니다. 콘솔을 사용하여 문서를 직접 추가할 수 없습니다. 콘솔을 사용하는 경우 데이터 소스에 연결하여 인덱스에 문서를 추가합니다. 문서는 S3 버킷에서 추가하거나 이진 데이터로 제공할 수 있습니다. 에서 지원하는 문서 유형 목록은 문서 유형을 Amazon Kendra 참조하세요. https://docs.aws.amazon.com/kendra/latest/dg/index-document-types.html

BatchPutDocument를 사용하여 인덱스에 문서를 추가하는 것은 비동기식 작업입니다. BatchPutDocument API를 호출한 후에는 BatchGetDocumentStatus API를 사용하여 문서 인덱싱 진행 상황을 모니터링합니다. 문서 ID 목록을 사용하여 BatchGetDocumentStatus API를 호출하면 문서 상태가 반환됩니다. 문서 상태가 INDEXED 또는 FAILED이면 문서 처리가 완료된 것입니다. 상태가 FAILED인 경우 BatchGetDocumentStatus API는 문서를 인덱싱할 수 없는 이유를 반환합니다.

문서 수집 프로세스 중에 콘텐츠와 문서 메타데이터나 필드 또는 속성을 변경하려면 Amazon Kendra 사용자 지정 문서 보강을 참조하세요. 사용자 지정 데이터 소스를 사용하려는 경우 BatchPutDocument API를 사용하여 제출하는 각 문서에는 데이터 소스 ID와 실행 ID가 속성 또는 필드로 필요합니다. 자세한 내용은 사용자 지정 데이터 소스의 필수 속성을 참조하세요.

참고

각 문서 ID는 인덱스별로 고유해야 합니다. 고유한 ID로 문서를 인덱싱하는 데이터 소스를 만든 다음 BatchPutDocument API를 사용하여 동일한 문서를 인덱싱할 수 없으며 그 반대의 경우도 마찬가지입니다. 데이터 소스를 삭제한 다음 BatchPutDocument API를 사용하여 동일한 문서를 인덱싱하거나 그 반대로 할 수 있습니다. 동일한 문서 세트에 BatchPutDocumentBatchDeleteDocument API를 Amazon Kendra 데이터 소스 커넥터와 함께 사용하면 데이터와 일치하지 않을 수 있습니다. 대신, Amazon Kendra 사용자 지정 데이터 소스 커넥터를 사용하는 것이 좋습니다.

다음 개발자 가이드 문서는 문서를 인덱스에 직접 추가하는 방법을 보여줍니다.

BatchPutDocument API를 사용하여 문서 추가

다음 예제에서는 BatchPutDocument를 호출하여 인덱스에 텍스트 blob을 추가합니다. BatchPutDocument API를 사용하여 인덱스에 직접 문서를 추가할 수 있습니다. 에서 지원하는 문서 유형 목록은 문서 유형을 Amazon Kendra 참조하세요. https://docs.aws.amazon.com/kendra/latest/dg/index-document-types.html

AWS CLI 및 SDKs. https://docs.aws.amazon.com/kendra/latest/dg/create-index.html CLI 및 SDK를 설정하려면 Amazon Kendra설정을 참조하세요.

참고

인덱스에 추가된 파일은 UTF-8 인코딩된 바이트 스트림에 있어야 합니다.

다음 예제에서는 UTF-8 인코딩 형식의 텍스트가 인덱스에 추가됩니다.

CLI

에서 다음 명령을 AWS Command Line Interface사용합니다. 이 명령은 Linux 및 macOS용으로 형식이 지정됩니다. Windows를 사용하는 경우 Unix 줄 연속 문자(\)를 캐럿(^)으로 바꿉니다.

aws kendra batch-put-document \ --index-id index-id \ --documents '{"Id":"doc-id-1", "Blob":"Amazon.com is an online retailer.", "ContentType":"PLAIN_TEXT", "Title":"Information about Amazon.com"}'
Python
import boto3 kendra = boto3.client("kendra") # Provide the index ID index_id = "index-id" # Provide the title and text title = "Information about Amazon.com" text = "Amazon.com is an online retailer." document = { "Id": "1", "Blob": text, "ContentType": "PLAIN_TEXT", "Title": title } documents = [ document ] result = kendra.batch_put_document( IndexId = index_id, Documents = documents ) print(result)
Java
package com.amazonaws.kendra; import software.amazon.awssdk.core.SdkBytes; import software.amazon.awssdk.services.kendra.KendraClient; import software.amazon.awssdk.services.kendra.model.BatchPutDocumentRequest; import software.amazon.awssdk.services.kendra.model.BatchPutDocumentResponse; import software.amazon.awssdk.services.kendra.model.ContentType; import software.amazon.awssdk.services.kendra.model.Document; public class AddDocumentsViaAPIExample { public static void main(String[] args) { KendraClient kendra = KendraClient.builder().build(); String indexId = "yourIndexId"; Document testDoc = Document .builder() .title("The title of your document") .id("a_doc_id") .blob(SdkBytes.fromUtf8String("your text content")) .contentType(ContentType.PLAIN_TEXT) .build(); BatchPutDocumentRequest batchPutDocumentRequest = BatchPutDocumentRequest .builder() .indexId(indexId) .documents(testDoc) .build(); BatchPutDocumentResponse result = kendra.batchPutDocument(batchPutDocumentRequest); System.out.println(String.format("BatchPutDocument Result: %s", result)); } }

에서 다음 명령을 AWS Command Line Interface사용합니다. 이 명령은 Linux 및 macOS용으로 형식이 지정됩니다. Windows를 사용하는 경우 Unix 줄 연속 문자(\)를 캐럿(^)으로 바꿉니다.

aws kendra batch-put-document \ --index-id index-id \ --documents '{"Id":"doc-id-1", "Blob":"Amazon.com is an online retailer.", "ContentType":"PLAIN_TEXT", "Title":"Information about Amazon.com"}'

S3 버킷에서 문서 추가

BatchPutDocument API를 사용하여 Amazon S3 버킷에서 인덱스에 직접 문서를 추가할 수 있습니다. 동일한 호출에 문서를 10개까지 추가할 수 있습니다. S3 버킷을 사용하는 경우 문서에 포함된 버킷에 액세스할 수 있는 권한을 IAM 역할에 제공해야 합니다. RoleArn 파라미터에 역할을 지정합니다.

BatchPutDocument API를 사용하여 Amazon S3 버킷에서 문서를 추가하는 작업은 일회성 작업입니다. 인덱스를 버킷의 콘텐츠와 동기화된 상태로 유지하려면 Amazon S3 데이터 소스를 생성합니다. 자세한 내용은 Amazon S3 데이터 소스를 참조하세요.

AWS CLI 및 SDKs. https://docs.aws.amazon.com/kendra/latest/dg/create-index.html CLI 및 SDK를 설정하려면 Amazon Kendra설정을 참조하세요. S3 버킷 생성에 대한 자세한 내용은 Amazon Simple Storage Service 설명서를 참조하세요.

다음 예제에서는 BatchPutDocument API를 사용하여 두 개의 Microsoft Word 문서를 인덱스에 추가합니다.

Python
import boto3 kendra = boto3.client("kendra") # Provide the index ID index_id = "index-id" # Provide the IAM role ARN required to index documents in an S3 bucket role_arn = "arn:aws:iam::${acccountID}:policy/${roleName}" doc1_s3_file_data = { "Bucket": "bucket-name", "Key": "document1.docx" } doc1_document = { "S3Path": doc1_s3_file_data, "Title": "Document 1 title", "Id": "doc_1" } doc2_s3_file_data = { "Bucket": "bucket-name", "Key": "document2.docx" } doc2_document = { "S3Path": doc2_s3_file_data, "Title": "Document 2 title", "Id": "doc_2" } documents = [ doc1_document, doc2_document ] result = kendra.batch_put_document( Documents = documents, IndexId = index_id, RoleArn = role_arn ) print(result)
Java
package com.amazonaws.kendra; import software.amazon.awssdk.services.kendra.KendraClient; import software.amazon.awssdk.services.kendra.model.BatchPutDocumentRequest; import software.amazon.awssdk.services.kendra.model.BatchPutDocumentResponse; import software.amazon.awssdk.services.kendra.model.Document; import software.amazon.awssdk.services.kendra.model.S3Path; public class AddFilesFromS3Example { public static void main(String[] args) { KendraClient kendra = KendraClient.builder().build(); String indexId = "yourIndexId"; String roleArn = "yourIndexRoleArn"; Document pollyDoc = Document .builder() .s3Path( S3Path.builder() .bucket("amzn-s3-demo-bucket") .key("What is Amazon Polly.docx") .build()) .title("What is Amazon Polly") .id("polly_doc_1") .build(); Document rekognitionDoc = Document .builder() .s3Path( S3Path.builder() .bucket("amzn-s3-demo-bucket") .key("What is Amazon Rekognition.docx") .build()) .title("What is Amazon rekognition") .id("rekognition_doc_1") .build(); BatchPutDocumentRequest batchPutDocumentRequest = BatchPutDocumentRequest .builder() .indexId(indexId) .roleArn(roleArn) .documents(pollyDoc, rekognitionDoc) .build(); BatchPutDocumentResponse result = kendra.batchPutDocument(batchPutDocumentRequest); System.out.println(String.format("BatchPutDocument result: %s", result)); } }
import boto3 kendra = boto3.client("kendra") # Provide the index ID index_id = "index-id" # Provide the IAM role ARN required to index documents in an S3 bucket role_arn = "arn:aws:iam::${acccountID}:policy/${roleName}" doc1_s3_file_data = { "Bucket": "bucket-name", "Key": "document1.docx" } doc1_document = { "S3Path": doc1_s3_file_data, "Title": "Document 1 title", "Id": "doc_1" } doc2_s3_file_data = { "Bucket": "bucket-name", "Key": "document2.docx" } doc2_document = { "S3Path": doc2_s3_file_data, "Title": "Document 2 title", "Id": "doc_2" } documents = [ doc1_document, doc2_document ] result = kendra.batch_put_document( Documents = documents, IndexId = index_id, RoleArn = role_arn ) print(result)
프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.