Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Création d'un index
Vous pouvez créer un index à l'aide de la console ou en appelant l'CreateIndexAPI. Vous pouvez utiliser le AWS Command Line Interface (AWS CLI) ou le SDK avec l'API. Après avoir créé votre index, vous pouvez y ajouter des documents directement ou à partir d'une source de données.
Pour créer un index, vous devez fournir le nom de ressource Amazon (ARN) d'un rôle AWS Identity and Access Management (IAM) auquel les index peuvent accéder CloudWatch. Pour plus d'informations, consultez la section IAM Rôles pour les index.
Les onglets suivants fournissent une procédure pour créer un index à l'aide de AWS Management Console, ainsi que des exemples de code pour utiliser le AWS CLI, et Python et Java SDKs.
- Console
-
Pour créer un index
-
Connectez-vous à la console AWS de gestion et ouvrez-la à l' Amazon Kendra adresse https://console.aws.amazon.com/kendra/.
-
Sélectionnez Créer un index dans la section Index.
-
Dans Spécifier les détails de l'index, donnez un nom et une description à votre index.
-
Dans IAM le rôle, indiquez un IAM rôle. Pour trouver un rôle, choisissez parmi les rôles de votre compte qui contiennent le mot « kendra » ou entrez le nom d'un autre rôle. Pour plus d'informations sur les autorisations requises par le rôle, consultez la section IAM Rôles pour les index.
-
Choisissez Suivant.
-
Sur la page Configurer le contrôle d'accès utilisateur, choisissez Next. Vous pouvez mettre à jour votre index afin d'utiliser des jetons pour le contrôle d'accès après avoir créé un index. Pour plus d'informations, consultez la section Contrôle de l'accès aux documents.
-
Sur la page des détails du provisionnement, choisissez Create.
-
La création de l'index peut prendre un certain temps. Consultez la liste des index pour suivre la progression de la création de votre index. Lorsque le statut de l'index est définiACTIVE
, votre index est prêt à être utilisé.
- AWS CLI
-
Pour créer un index
-
Utilisez la commande suivante pour créer un index. role-arn
Il doit s'agir du Amazon Resource Name (ARN) d'un IAM rôle capable d'exécuter Amazon Kendra des actions. Pour plus d'informations, consultez la section IAM
Rôles.
La commande est formatée pour Linux et macOS. Si vous utilisez Windows, remplacez le caractère de continuation de ligne Unix (\) par un curseur (^).
aws kendra create-index \
--name index name
\
--description "index description
" \
--role-arn arn:aws:iam::account ID
:role/role name
-
La création de l'index peut prendre un certain temps. Pour vérifier l'état de votre index, utilisez l'ID d'index renvoyé create-index
par la commande suivante. Lorsque le statut de l'index est définiACTIVE
, votre index est prêt à être utilisé.
aws kendra describe-index \
--index-id index ID
- Python
-
Pour créer un index
-
Fournissez des valeurs pour les variables suivantes dans l'exemple de code ci-dessous :
-
description
: une description de l'index que vous êtes en train de créer. Ce nom est facultatif.
-
index_name
: le nom de l'index que vous créez.
-
role_arn
—Le nom de ressource Amazon (ARN) d'un rôle qui peut être exécuté Amazon Kendra APIs. Pour plus d'informations, consultez la section IAM
Rôles.
import boto3
from botocore.exceptions import ClientError
import pprint
import time
kendra = boto3.client("kendra")
print("Create an index.")
# Provide a name for the index
index_name = "index-name"
# Provide an optional description for the index
description = "index description"
# Provide the IAM role ARN required for indexes
role_arn = "arn:aws:iam::${account id}:role/${role name}"
try:
index_response = kendra.create_index(
Name = index_name,
Description = description,
RoleArn = role_arn
)
pprint.pprint(index_response)
index_id = index_response["Id"]
print("Wait for Amazon Kendra to create the index.")
while True:
# Get the details of the index, such as the status
index_description = kendra.describe_index(
Id = index_id
)
# If status is not CREATING, then quit
status = index_description["Status"]
print(" Creating index. Status: "+status)
if status != "CREATING":
break
time.sleep(60)
except ClientError as e:
print("%s" % e)
print("Program ends.")
- Java
-
Pour créer un index
-
Fournissez des valeurs pour les variables suivantes dans l'exemple de code ci-dessous :
-
description
: une description de l'index que vous êtes en train de créer. Ce nom est facultatif.
-
index_name
: le nom de l'index que vous créez.
-
role_arn
—Le nom de ressource Amazon (ARN) d'un rôle qui peut être exécuté Amazon Kendra APIs. Pour plus d'informations, consultez la section IAM
Rôles.
package com.amazonaws.kendra;
import java.util.concurrent.TimeUnit;
import software.amazon.awssdk.services.kendra.KendraClient;
import software.amazon.awssdk.services.kendra.model.CreateIndexRequest;
import software.amazon.awssdk.services.kendra.model.CreateIndexResponse;
import software.amazon.awssdk.services.kendra.model.DescribeIndexRequest;
import software.amazon.awssdk.services.kendra.model.DescribeIndexResponse;
import software.amazon.awssdk.services.kendra.model.IndexStatus;
public class CreateIndexExample {
public static void main(String[] args) throws InterruptedException {
String indexDescription = "Getting started index for Kendra";
String indexName = "java-getting-started-index";
String indexRoleArn = "arn:aws:iam::<your AWS account ID>:role/KendraRoleForGettingStartedIndex";
System.out.println(String.format("Creating an index named %s", indexName));
CreateIndexRequest createIndexRequest = CreateIndexRequest
.builder()
.description(indexDescription)
.name(indexName)
.roleArn(indexRoleArn)
.build();
KendraClient kendra = KendraClient.builder().build();
CreateIndexResponse createIndexResponse = kendra.createIndex(createIndexRequest);
System.out.println(String.format("Index response %s", createIndexResponse));
String indexId = createIndexResponse.id();
System.out.println(String.format("Waiting until the index with ID %s is created.", indexId));
while (true) {
DescribeIndexRequest describeIndexRequest = DescribeIndexRequest.builder().id(indexId).build();
DescribeIndexResponse describeIndexResponse = kendra.describeIndex(describeIndexRequest);
IndexStatus status = describeIndexResponse.status();
if (status != IndexStatus.CREATING) {
break;
}
TimeUnit.SECONDS.sleep(60);
}
System.out.println("Index creation is complete.");
}
}
Après avoir créé votre index, vous y ajoutez des documents. Vous pouvez les ajouter directement ou créer une source de données qui met régulièrement à jour votre index.