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.
Schritt 4: Einen Amazon Kendra Kendra-Index erstellen und die Metadaten aufnehmen
Um Ihre intelligente Suchlösung zu implementieren, erstellen Sie einen Amazon Kendra Kendra-Index und nehmen darin Ihre S3-Daten und Metadaten auf.
Bevor Sie Ihrem Amazon Kendra Kendra-Index Metadaten hinzufügen, erstellen Sie benutzerdefinierte Indexfelder, die benutzerdefinierten Dokumentattributen entsprechen, die wiederum den Amazon Comprehend Comprehend-Entitätstypen entsprechen. Amazon Kendra verwendet die Indexfelder und benutzerdefinierten Dokumentattribute, die Sie erstellen, um Ihre Dokumente zu suchen und zu filtern.
Weitere Informationen finden Sie unter Index und Erstellen von benutzerdefinierten Dokumentattributen.
Themen
Einen Amazon Kendra Kendra-Index erstellen
Um Ihre Quelldokumente abzufragen, erstellen Sie einen Amazon Kendra Kendra-Index.
Wenn Sie das AWS CLI in diesem Schritt verwenden, erstellen und fügen Sie eine AWS IAM Rolle und Richtlinie hinzu, die es Amazon Kendra ermöglichen, auf Ihre CloudWatch Protokolle zuzugreifen, bevor Sie einen Index erstellen. Weitere Informationen finden Sie unter Voraussetzungen.
-
Öffnen Sie die Amazon Kendra Kendra-Konsole unter https://console.aws.amazon.com/kendra/
. Wichtig
Stellen Sie sicher, dass Sie sich in derselben Region befinden, in der Sie Ihren Amazon Comprehend Comprehend-Entitätsanalysejob und Ihren Amazon S3 S3-Bucket erstellt haben. Wenn Sie sich in einer anderen Region befinden, wählen Sie in der AWS Regionsauswahl in der oberen Navigationsleiste die Region aus, in der Sie Ihren Amazon S3 S3-Bucket erstellt haben.
-
Wählen Sie Index erstellen aus.
-
Gehen Sie für Indexdetails auf der Seite „Indexdetails angeben“ wie folgt vor:
-
Geben Sie für Indexname
kendra-index
ein. -
Lassen Sie das Feld Beschreibung leer.
-
Wählen Sie IAMunter Rolle die Option Neue Rolle erstellen aus. Diese Rolle bietet Zugriff auf Ihren Amazon S3 S3-Bucket.
-
Geben Sie für Rollenname den Namen
kendra-role
ein. Die IAM Rolle wird das Präfix habenAmazonKendra-
. -
Behalten Sie die Standardeinstellungen für Verschlüsselung und Tags bei und wählen Sie Weiter.
-
-
Wählen Sie für Einstellungen zur Zugriffskontrolle auf der Seite Benutzerzugriffskontrolle konfigurieren die Option Nein und dann Weiter aus.
-
Wählen Sie für Provisioning-Editionen auf der Seite mit den Provisioning-Details die Option Developer Edition und anschließend Create aus.
-
Gehen Sie wie folgt vor, um eine IAM Rolle für Amazon Kendra zu erstellen und anzuhängen, die die Rolle als vertrauenswürdige Entität anerkennt:
-
Speichern Sie die folgende Vertrauensrichtlinie als JSON Datei, die
kendra-trust-policy.json
in einem Texteditor auf Ihrem lokalen Gerät aufgerufen wird.{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "kendra.amazonaws.com" }, "Action": "sts:AssumeRole" } }
-
Verwenden Sie den Befehl IAM create-role
, um eine Rolle namens zu erstellen kendra-role
und Ihre gespeichertekendra-trust-policy.json
Datei an diese anzuhängen: -
Kopieren Sie den Amazon-Ressourcennamen (ARN) in Ihren Texteditor und speichern Sie ihn lokal unter
kendra-role-arn
.Anmerkung
Der ARN hat ein ähnliches Format wie
arn:aws:iam::123456789012:role/kendra-role
. Sie benötigen die, die ARN Sie gespeichert habenkendra-role-arn
, um Amazon Kendra Kendra-Jobs auszuführen.
-
-
Bevor Sie einen Index erstellen, müssen Sie Ihre Erlaubnis
kendra-role
zum Schreiben in CloudWatch Logs erteilen. Führen Sie dazu die folgenden Schritte aus:-
Speichern Sie die folgende Vertrauensrichtlinie als JSON Datei, die
kendra-cloudwatch-policy.json
in einem Texteditor auf Ihrem lokalen Gerät aufgerufen wird.{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"cloudwatch:PutMetricData", "Resource":"*", "Condition":{ "StringEquals":{ "cloudwatch:namespace":"Kendra" } } }, { "Effect":"Allow", "Action":"logs:DescribeLogGroups", "Resource":"*" }, { "Effect":"Allow", "Action":"logs:CreateLogGroup", "Resource":"arn:aws:logs:
aws-region
:aws-account-id
:log-group:/aws/kendra/*" }, { "Effect":"Allow", "Action":[ "logs:DescribeLogStreams", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource":"arn:aws:logs:aws-region
:aws-account-id
:log-group:/aws/kendra/*:log-stream:*" } ] }Ersetzen
aws-region
mit Ihrer AWS Region undaws-account-id
mit Ihrer 12-stelligen AWS Konto-ID. -
Verwenden Sie den Befehl IAM create-policy, um eine Richtlinie für den Zugriff auf CloudWatch Logs zu erstellen
: -
Kopieren Sie den Amazon-Ressourcennamen (ARN) in Ihren Texteditor und speichern Sie ihn lokal unter
kendra-cloudwatch-arn
.Anmerkung
Der ARN hat ein ähnliches Format wie
arn:aws:iam::123456789012:role/kendra-cloudwatch-policy
. Sie benötigen das, was ARN Sie gespeichert habenkendra-cloudwatch-arn
, um es ankendra-cloudwatch-policy
Ihre IAM Rolle anzuhängen. -
Verwenden Sie den attach-role-policy
folgenden Befehl, kendra-cloudwatch-policy
um das an Ihre IAM Rolle anzuhängen:
-
-
Verwenden Sie den Befehl create-index, um einen Index
zu erstellen: -
Kopieren Sie den Index
Id
und speichern Sie ihn in einem Texteditor alskendra-index-id
. DasId
hilft Ihnen, den Status Ihrer Indexerstellung zu verfolgen. -
Verwenden Sie den Befehl describe-index
, um den Fortschritt Ihrer Indexerstellung zu verfolgen:
Die Indexerstellung dauert im Durchschnitt 15 Minuten, kann aber auch länger dauern. Wenn der Status des Indexes aktiv ist, ist Ihr Index einsatzbereit. Während Ihr Index erstellt wird, können Sie mit dem nächsten Schritt beginnen.
Wenn Sie das AWS CLI in diesem Schritt verwenden, erstellen Sie eine IAM Richtlinie und fügen sie Ihrer Amazon Kendra IAM Kendra-Rolle hinzu, die Ihrem Index Berechtigungen für den Zugriff auf Ihren S3-Bucket erteilt.
Aktualisierung der IAM Rolle für Amazon S3 S3-Zugriff
Während der Indexerstellung aktualisieren Sie Ihre Amazon Kendra IAM Kendra-Rolle, sodass der von Ihnen erstellte Index Daten aus Ihrem Amazon S3 S3-Bucket lesen kann. Weitere Informationen finden Sie unter IAMZugriffsrollen für Amazon Kendra.
Öffnen Sie die IAM Konsole unter https://console.aws.amazon.com/iam/
. -
Wählen Sie im linken Navigationsbereich Rollen aus und geben Sie den Namen der Rolle
kendra-role
in das Suchfeld über dem Namen der Rolle ein. -
Klicken Sie in den vorgeschlagenen Optionen auf
kendra-role
. -
Wählen Sie unter Zusammenfassung die Option Richtlinien anhängen aus.
-
Geben Sie unter Berechtigungen anhängen in das Suchfeld das Kontrollkästchen neben der ReadOnlyAccessAmazonS3-Richtlinie ein
S3
und aktivieren Sie es aus den vorgeschlagenen Optionen. -
Wählen Sie Richtlinie anfügen aus. Auf der Übersichtsseite sehen Sie nun zwei Richtlinien, die mit der Rolle verknüpft sind. IAM
-
Kehren Sie zur Amazon Kendra Kendra-Konsole unter zurück https://console.aws.amazon.com/kendra/
und warten Sie, bis sich der Status Ihres Indexes von Creating auf Active ändert, bevor Sie mit dem nächsten Schritt fortfahren.
-
Speichern Sie den folgenden Text in einer JSON Datei, die
kendra-S3-access-policy.json
in einem Texteditor auf Ihrem lokalen Gerät aufgerufen wird.{ "Version":"2012-10-17", "Statement":[ { "Action":[ "s3:GetObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-bucket/*" ], "Effect":"Allow" }, { "Action":[ "s3:ListBucket" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-bucket" ], "Effect":"Allow" }, { "Effect":"Allow", "Action":[ "kendra:BatchPutDocument", "kendra:BatchDeleteDocument", "kendra:ListDataSourceSyncJobs" ], "Resource":[ "arn:aws:kendra:
aws-region
:aws-account-id
:index/kendra-index-id
" ] } ] }Ersetzen Sie amzn-s3-demo-bucket durch Ihren S3-Bucket-Namen,
aws-region
AWS mit deiner Region,aws-account-id
mit Ihrer 12-stelligen AWS Konto-ID undkendra-index-id
mit deinem gespeicherten.kendra-index-id
-
Verwenden Sie den Befehl IAM create-policy, um eine Richtlinie für den Zugriff auf Ihren S3-Bucket zu erstellen
: -
Kopieren Sie den Amazon-Ressourcennamen (ARN) in Ihren Texteditor und speichern Sie ihn lokal unter
kendra-S3-access-arn
.Anmerkung
Der ARN hat ein ähnliches Format wie
arn:aws:iam::123456789012:role/kendra-S3-access-policy
. Sie benötigen das, was ARN Sie gespeichert habenkendra-S3-access-arn
, um es ankendra-S3-access-policy
Ihre IAM Rolle anzuhängen. -
Verwenden Sie den attach-role-policy
folgenden Befehl kendra-S3-access-policy
, um die Rolle an Ihre Amazon Kendra IAM Kendra-Rolle anzuhängen:
Benutzerdefinierte Suchindexfelder für Amazon Kendra erstellen
Um Amazon Kendra darauf vorzubereiten, Ihre Metadaten als benutzerdefinierte Dokumentattribute zu erkennen, erstellen Sie benutzerdefinierte Felder, die den Entitätstypen von Amazon Comprehend entsprechen. Sie geben die folgenden neun Amazon Comprehend Comprehend-Entitätstypen als benutzerdefinierte Felder ein:
-
COMMERCIAL_ITEM
-
DATE
-
EVENT
-
LOCATION
-
ORGANIZATION
-
OTHER
-
PERSON
-
QUANTITY
-
TITLE
Wichtig
Falsch geschriebene Entitätstypen werden vom Index nicht erkannt.
-
Öffnen Sie die Amazon Kendra Kendra-Konsole unter https://console.aws.amazon.com/kendra/
. -
Klicken Sie in der Liste der Indizes auf.
kendra-index
-
Wählen Sie im linken Navigationsbereich unter Datenverwaltung die Option Facettendefinition aus.
-
Wählen Sie im Menü Indexfelder die Option Feld hinzufügen aus.
-
Gehen Sie im Dialogfeld Indexfeld hinzufügen wie folgt vor:
-
Geben Sie im Feld Feldname den Wert ein
COMMERCIAL_ITEM
. -
Wählen Sie im Feld Datentyp die Option Zeichenkettenliste aus.
-
Wählen Sie unter Verwendungstypen die Optionen Facetable, Durchsuchbar und Displayable aus und wählen Sie dann Hinzufügen aus.
-
Wiederholen Sie die Schritte a bis c für jeden Amazon Comprehend Comprehend-Entitätstyp: COMMERCIAL _ ITEMDATE,EVENT,LOCATION,,ORGANIZATION,OTHER,PERSON,QUANTITY. TITLE
-
Die Konsole zeigt Meldungen über das erfolgreiche Hinzufügen von Feldern an. Sie können sie schließen, bevor Sie mit dem nächsten Schritt fortfahren.
-
Speichern Sie den folgenden Text als JSON Datei, die
custom-attributes.json
in einem Texteditor auf Ihrem lokalen Gerät aufgerufen wird.[ { "Name": "COMMERCIAL_ITEM", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "DATE", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "EVENT", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "LOCATION", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "ORGANIZATION", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "OTHER", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "PERSON", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "QUANTITY", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "TITLE", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } } ]
-
Verwenden Sie den Befehl update-index, um benutzerdefinierte Felder in Ihrem Index
zu erstellen: -
Verwenden Sie den Befehl describe-index, um zu überprüfen, ob die benutzerdefinierten Attribute zu Ihrem Index
hinzugefügt wurden:
Hinzufügen des Amazon S3 S3-Buckets als Datenquelle für den Index
Bevor Sie Ihren Index synchronisieren können, müssen Sie Ihre S3-Datenquelle damit verbinden.
-
Öffnen Sie die Amazon Kendra Kendra-Konsole unter https://console.aws.amazon.com/kendra/
. -
Klicken Sie in der Liste der Indizes auf.
kendra-index
-
Wählen Sie im linken Navigationsmenü unter Datenverwaltung die Option Datenquellen aus.
-
Navigieren Sie im Abschnitt Datenquellen-Connectortyp auswählen zu Amazon S3 und wählen Sie Connector hinzufügen aus.
-
Gehen Sie auf der Seite „Datenquellendetails angeben“ wie folgt vor:
-
Geben Sie unter Name und Beschreibung für Datenquellenname den Wert ein
S3-data-source
. -
Lassen Sie den Abschnitt Beschreibung leer.
-
Behalten Sie die Standardeinstellungen für Tags bei.
-
Wählen Sie Weiter.
-
-
Gehen Sie auf der Seite Synchronisierungseinstellungen konfigurieren im Abschnitt Synchronisierungsbereich wie folgt vor:
-
Wählen Sie unter Geben Sie den Speicherort der Datenquelle ein die Option S3 durchsuchen aus.
-
Wählen Sie unter Ressourcen auswählen Ihren S3-Bucket aus und wählen Sie dann Wählen aus.
-
Wählen Sie unter Speicherort des Präfixordners für Metadatendateien die Option S3 durchsuchen aus.
-
Klicken Sie unter Ressourcen auswählen in der Liste der Buckets auf den Namen Ihres Buckets.
-
Wählen Sie für Objekte das Optionsfeld für
metadata
und wählen Sie Wählen aus. Das Ortsfeld sollte jetzt lautenmetadata/
. -
Behalten Sie die Standardeinstellungen für den Speicherort der Konfigurationsdatei für die Zugriffskontrollliste, den Entschlüsselungsschlüssel auswählen und die Option Zusätzliche Konfiguration bei.
-
-
Wählen Sie für IAMRolle auf der Seite Synchronisierungseinstellungen konfigurieren die Option
kendra-role
. -
Wählen Sie auf der Seite Synchronisierungseinstellungen konfigurieren unter Zeitplan für die Synchronisierungsausführung für Häufigkeit die Option Bei Bedarf ausführen und dann Weiter aus.
-
Überprüfen Sie auf der Seite Überprüfen und erstellen Ihre Auswahl für die Datenquellendetails und wählen Sie Datenquelle hinzufügen aus.
-
Speichern Sie den folgenden Text als JSON Datei, die
S3-data-connector.json
in einem Texteditor auf Ihrem lokalen Gerät aufgerufen wird.{ "S3Configuration":{ "BucketName":"amzn-s3-demo-bucket", "DocumentsMetadataConfiguration":{ "S3Prefix":"metadata" } } }
Ersetzen Sie amzn-s3-demo-bucket durch den Namen Ihres S3-Buckets.
-
Verwenden Sie den folgenden Befehl, um Ihren S3-Bucket mit Ihrem Index zu verbinden: create-data-source
-
Kopieren Sie den Connector
Id
und speichern Sie ihn in einem Texteditor alsS3-connector-id
. DasId
hilft Ihnen, den Status des Datenverbindungsprozesses zu verfolgen. -
Verwenden Sie den describe-data-source
folgenden Befehl, um sicherzustellen, dass Ihre S3-Datenquelle erfolgreich verbunden wurde:
Am Ende dieses Schritts ist Ihre Amazon S3 S3-Datenquelle mit dem Index verbunden.
Synchronisieren des Amazon Kendra Kendra-Index
Nachdem die Amazon S3 S3-Datenquelle hinzugefügt wurde, synchronisieren Sie jetzt Ihren Amazon Kendra Kendra-Index damit.
-
Öffnen Sie die Amazon Kendra Kendra-Konsole unter https://console.aws.amazon.com/kendra/
. -
Klicken Sie in der Liste der Indizes auf.
kendra-index
-
Wählen Sie im linken Navigationsmenü die Option Datenquellen aus.
-
Wählen Sie unter Datenquellen die Option aus
S3-data-source
. -
Wählen Sie in der oberen Navigationsleiste die Option Jetzt synchronisieren aus.
-
Verwenden Sie den Befehl start-data-source-sync-job
, um Ihren Index zu synchronisieren: -
Verwenden Sie den Befehl list-data-source-sync-jobs
, um den Status der Indexsynchronisierung zu überprüfen:
Am Ende dieses Schritts haben Sie einen durchsuchbaren und filterbaren Amazon Kendra Kendra-Index für Ihren Datensatz erstellt.