Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Direktes Hinzufügen von Dokumenten zu einem Index mit Batch-Upload - Amazon Kendra

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Direktes Hinzufügen von Dokumenten zu einem Index mit Batch-Upload

Mithilfe der BatchPutDocumentAPI können Sie Dokumente direkt zu einem Index hinzufügen. Sie können Dokumente nicht direkt über die Konsole hinzufügen. Wenn Sie die Konsole verwenden, stellen Sie eine Verbindung zu einer Datenquelle her, um Dokumente zu Ihrem Index hinzuzufügen. Dokumente können aus einem S3-Bucket hinzugefügt oder als Binärdaten bereitgestellt werden. Eine Liste der von unterstützten Dokumenttypen Amazon Kendra finden Sie unter Dokumenttypen.

Das Hinzufügen von Dokumenten zu einem Index mithilfe BatchPutDocument ist ein asynchroner Vorgang. Nachdem Sie die BatchPutDocument API aufgerufen haben, verwenden Sie die BatchGetDocumentStatusAPI, um den Fortschritt der Indizierung Ihrer Dokumente zu überwachen. Wenn Sie die BatchGetDocumentStatus API mit einer Liste von Dokumenten aufrufen IDs, gibt sie den Status des Dokuments zurück. Wenn der Status des Dokuments INDEXED oder istFAILED, ist die Verarbeitung des Dokuments abgeschlossen. Wenn der Status lautetFAILED, gibt die BatchGetDocumentStatus API den Grund zurück, warum das Dokument nicht indexiert werden konnte.

Wenn Sie die Felder oder Attribute Ihrer Inhalte und Dokumentmetadaten während der Dokumentaufnahme ändern möchten, finden Sie weitere Informationen unter Amazon Kendra Benutzerdefinierte Anreicherung von Dokumenten. Wenn Sie eine benutzerdefinierte Datenquelle verwenden möchten, benötigt jedes Dokument, das Sie über die BatchPutDocument API einreichen, eine Datenquellen-ID und eine Ausführungs-ID als Attribute oder Felder. Weitere Informationen finden Sie unter Erforderliche Attribute für benutzerdefinierte Datenquellen.

Anmerkung

Jede Dokument-ID muss pro Index eindeutig sein. Sie können keine Datenquelle erstellen, um Ihre Dokumente eindeutig zu indizieren, IDs und dann die BatchPutDocument API verwenden, um dieselben Dokumente zu indizieren, oder umgekehrt. Sie können eine Datenquelle löschen und dann die BatchPutDocument API verwenden, um dieselben Dokumente zu indizieren, oder umgekehrt. Die Verwendung von BatchPutDocument und BatchDeleteDocument APIs in Kombination mit einem Amazon Kendra Datenquellen-Konnektor für denselben Satz von Dokumenten kann zu Inkonsistenzen mit Ihren Daten führen. Stattdessen empfehlen wir die Verwendung des Amazon Kendra benutzerdefinierten Datenquellen-Connectors.

Die folgenden Dokumente im Entwicklerhandbuch zeigen, wie Sie Dokumente direkt zu einem Index hinzufügen können.

Dokumente mit der BatchPutDocument API hinzufügen

Im folgenden Beispiel wird einem Index durch Aufrufen BatchPutDocumentein Textblock hinzugefügt. Sie können die BatchPutDocument API verwenden, um Dokumente direkt zu Ihrem Index hinzuzufügen. Eine Liste der von unterstützten Dokumenttypen Amazon Kendra finden Sie unter Dokumenttypen.

Ein Beispiel für die Erstellung eines Indexes mit dem AWS CLI und SDKs finden Sie unter Index erstellen. Informationen zum Einrichten der CLI und SDKs finden Sie unter Einrichtung Amazon Kendra.

Anmerkung

Dem Index hinzugefügte Dateien müssen sich in einem UTF-8-codierten Bytestream befinden.

In den folgenden Beispielen wird UTF-8-codierter Text zum Index hinzugefügt.

CLI

Verwenden Sie in der AWS Command Line Interface den folgenden Befehl. Der Befehl ist für Linux und macOS formatiert. Wenn Sie Windows verwenden, ersetzen Sie das Unix-Zeilenfortsetzungszeichen (\) durch ein Caret (^).

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)); } }

Verwenden Sie in der AWS Command Line Interface den folgenden Befehl. Der Befehl ist für Linux und macOS formatiert. Wenn Sie Windows verwenden, ersetzen Sie das Unix-Zeilenfortsetzungszeichen (\) durch ein Caret (^).

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"}'

Dokumente aus einem S3-Bucket hinzufügen

Mithilfe der BatchPutDocumentAPI können Sie Dokumente direkt aus einem Amazon S3 Bucket zu Ihrem Index hinzufügen. Sie können im selben Aufruf bis zu 10 Dokumente hinzufügen. Wenn Sie einen S3-Bucket verwenden, müssen Sie eine IAM Rolle mit der Berechtigung für den Zugriff auf den Bucket angeben, der Ihre Dokumente enthält. Sie geben die Rolle im RoleArn Parameter an.

Die Verwendung der BatchPutDocumentAPI zum Hinzufügen von Dokumenten aus einem Amazon S3 Bucket ist ein einmaliger Vorgang. Um einen Index mit dem Inhalt eines Buckets zu synchronisieren, erstellen Sie eine Amazon S3 Datenquelle. Weitere Informationen finden Sie unter Amazon S3 Datenquelle.

Ein Beispiel für die Erstellung eines Indexes mit dem AWS CLI und SDKs finden Sie unter Index erstellen. Informationen zum Einrichten der CLI und SDKs finden Sie unter Einrichtung Amazon Kendra. Informationen zum Erstellen eines S3-Buckets finden Sie in der Amazon Simple Storage Service Dokumentation.

Im folgenden Beispiel werden dem Index mithilfe der BatchPutDocument API zwei Microsoft Word-Dokumente hinzugefügt.

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)
DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.