Aggiungere un thesaurus a un indice - Amazon Kendra

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Aggiungere un thesaurus a un indice

Le procedure seguenti mostrano come aggiungere un file del thesaurus contenente sinonimi a un indice. La visualizzazione degli effetti del file del thesaurus aggiornato può richiedere fino a 30 minuti. Per ulteriori informazioni sul file del thesaurus, vedere. Creazione di un file del thesaurus

Console
Per aggiungere un thesaurus
  1. Nel riquadro di navigazione a sinistra, sotto l'indice in cui desideri aggiungere un elenco di sinonimi, il tuo thesaurus, scegli Sinonimi.

  2. Nella pagina dei sinonimi, scegli Aggiungi Thesaurus.

  3. In Define thesaurus, assegnate al thesaurus un nome e una descrizione opzionale.

  4. Nelle impostazioni del thesaurus, specificate il percorso del file del Amazon S3 thesaurus. Il file deve pesare meno di 5 MB.

  5. Per IAM Role, seleziona un ruolo o seleziona Crea un nuovo ruolo e specifica un nome di ruolo per creare un nuovo ruolo. Amazon Kendra utilizza questo ruolo per accedere alla Amazon S3 risorsa per tuo conto. Il ruolo IAM ha il prefisso "AmazonKendra-».

  6. Scegli Salva per salvare la configurazione e aggiungere il thesaurus. Una volta inserito, il thesaurus è attivo e i sinonimi vengono evidenziati nei risultati. La visualizzazione degli effetti del file del thesaurus può richiedere fino a 30 minuti.

CLI

Per aggiungere un thesarus a un indice con, chiamate: AWS CLIcreate-thesaurus

aws kendra create-thesaurus \ --index-id index-id \ --name "thesaurus-name" \ --description "thesaurus-description" \ --source-s3-path "Bucket=bucket-name,Key=thesaurus/synonyms.txt" \ --role-arn role-arn

Chiama list-thesauri per vedere un elenco di thesaurus:

aws kendra list-thesauri \ --index-id index-id

Per visualizzare i dettagli di un thesaurus, chiamate: describe-thesaurus

aws kendra describe-thesaurus \ --index-id index-id \ --index-id thesaurus-id

La visualizzazione degli effetti del file del thesaurus può richiedere fino a 30 minuti.

Python
import boto3 from botocore.exceptions import ClientError import pprint import time kendra = boto3.client("kendra") print("Create a thesaurus") thesaurus_name = "thesaurus-name" thesaurus_description = "thesaurus-description" thesaurus_role_arn = "role-arn" index_id = "index-id" s3_bucket_name = "bucket-name" s3_key = "thesaurus-file" source_s3_path= { 'Bucket': s3_bucket_name, 'Key': s3_key } try: thesaurus_response = kendra.create_thesaurus( Description = thesaurus_description, Name = thesaurus_name, RoleArn = thesaurus_role_arn, IndexId = index_id, SourceS3Path = source_s3_path ) pprint.pprint(thesaurus_response) thesaurus_id = thesaurus_response["Id"] print("Wait for Kendra to create the thesaurus.") while True: # Get thesaurus description thesaurus_description = kendra.describe_thesaurus( Id = thesaurus_id, IndexId = index_id ) # If status is not CREATING quit status = thesaurus_description["Status"] print("Creating thesaurus. Status: " + status) if status != "CREATING": break time.sleep(60) except ClientError as e: print("%s" % e) print("Program ends.")
Java
package com.amazonaws.kendra; import software.amazon.awssdk.services.kendra.KendraClient; import software.amazon.awssdk.services.kendra.model.CreateThesaurusRequest; import software.amazon.awssdk.services.kendra.model.CreateThesaurusResponse; import software.amazon.awssdk.services.kendra.model.DescribeThesaurusRequest; import software.amazon.awssdk.services.kendra.model.DescribeThesaurusResponse; import software.amazon.awssdk.services.kendra.model.S3Path; import software.amazon.awssdk.services.kendra.model.ThesaurusStatus; public class CreateThesaurusExample { public static void main(String[] args) throws InterruptedException { KendraClient kendra = KendraClient.builder().build(); String thesaurusName = "thesaurus-name"; String thesaurusDescription = "thesaurus-description"; String thesaurusRoleArn = "role-arn"; String s3BucketName = "bucket-name"; String s3Key = "thesaurus-file"; String indexId = "index-id"; System.out.println(String.format("Creating a thesaurus named %s", thesaurusName)); CreateThesaurusRequest createThesaurusRequest = CreateThesaurusRequest .builder() .name(thesaurusName) .indexId(indexId) .description(thesaurusDescription) .roleArn(thesaurusRoleArn) .sourceS3Path(S3Path.builder() .bucket(s3BucketName) .key(s3Key) .build()) .build(); CreateThesaurusResponse createThesaurusResponse = kendra.createThesaurus(createThesaurusRequest); System.out.println(String.format("Thesaurus response %s", createThesaurusResponse)); String thesaurusId = createThesaurusResponse.id(); System.out.println(String.format("Waiting until the thesaurus with ID %s is created.", thesaurusId)); while (true) { DescribeThesaurusRequest describeThesaurusRequest = DescribeThesaurusRequest.builder() .id(thesaurusId) .indexId(indexId) .build(); DescribeThesaurusResponse describeThesaurusResponse = kendra.describeThesaurus(describeThesaurusRequest); ThesaurusStatus status = describeThesaurusResponse.status(); if (status != ThesaurusStatus.CREATING) { break; } TimeUnit.SECONDS.sleep(60); } System.out.println("Thesaurus creation is complete."); } }