Amazon Kendra tidak akan lagi terbuka untuk pelanggan baru mulai 30 Juli 2026. Jika Anda ingin menggunakan layanan ini, silakan mendaftar sebelum 30 Juli. Untuk kemampuan yang mirip dengan Amazon Kendra, jelajahi Pangkalan Pengetahuan Amazon Bedrock. Pelajari selengkapnya.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memperbarui tesaurus
Anda dapat mengubah konfigurasi tesaurus setelah dibuat. Anda dapat mengubah detail seperti nama tesaurus dan informasi IAM. Anda juga dapat mengubah lokasi path file tesaurus Amazon S3. Jika Anda mengubah jalur ke file tesaurus, Amazon Kendra
ganti tesaurus yang ada dengan tesaurus yang ditentukan di jalur yang diperbarui.
Diperlukan waktu hingga 30 menit untuk melihat efek dari file tesaurus Anda yang diperbarui.
Jika ada kesalahan validasi atau sintaks dalam file tesaurus, file tesaurus yang diunggah sebelumnya akan dipertahankan.
Prosedur berikut menunjukkan cara mengubah detail tesaurus.
- Console
-
Untuk mengubah detail tesaurus
-
Di panel navigasi kiri, di bawah indeks yang ingin Anda ubah, pilih Sinonim.
-
Pada halaman Sinonim, pilih tesaurus yang ingin Anda ubah dan kemudian pilih Edit.
-
Pada halaman Memperbarui tesaurus, perbarui detail tesaurus.
-
(Opsional) Pilih Ubah jalur file tesaurus dan kemudian tentukan Amazon S3 jalur ke file tesaurus baru. File tesaurus yang ada digantikan oleh file yang Anda tentukan. Jika Anda tidak mengubah jalur, Amazon Kendra muat ulang tesaurus dari jalur yang ada.
Jika Anda memilih Simpan file tesaurus saat ini, Amazon Kendra tidak memuat ulang file tesaurus.
-
Pilih Simpan untuk menyimpan konfigurasi.
Anda juga dapat memuat ulang tesaurus dari path tesaurus yang ada.
Untuk memuat ulang tesaurus dari path yang ada
-
Di panel navigasi kiri, di bawah indeks yang ingin Anda ubah, pilih Sinonim.
-
Pada halaman Sinonim, pilih tesaurus yang ingin dimuat ulang dan kemudian pilih Refresh.
-
Pada halaman Reload thesaurus file, konfirmasikan bahwa Anda ingin me-refresh file tesaurus.
- CLI
-
Untuk memperbarui tesaurus, panggil update-thesaurus:
aws kendra update-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
- Python
-
import boto3
from botocore.exceptions import ClientError
import pprint
import time
kendra = boto3.client("kendra")
print("Update a thesaurus")
thesaurus_name = "thesaurus-name"
thesaurus_description = "thesaurus-description"
thesaurus_role_arn = "role-arn"
thesaurus_id = "thesaurus-id"
index_id = "index-id"
s3_bucket_name = "bucket-name"
s3_key = "thesaurus-file"
source_s3_path= {
'Bucket': s3_bucket_name,
'Key': s3_key
}
try:
kendra.update_thesaurus(
Id = thesaurus_id,
IndexId = index_id,
Description = thesaurus_description,
Name = thesaurus_name,
RoleArn = thesaurus_role_arn,
SourceS3Path = source_s3_path
)
print("Wait for Kendra to update the thesaurus.")
while True:
# Get thesaurus description
thesaurus_description = kendra.describe_thesaurus(
Id = thesaurus_id,
IndexId = index_id
)
# If status is not UPDATING quit
status = thesaurus_description["Status"]
print("Updating thesaurus. Status: " + status)
if status != "UPDATING":
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.UpdateThesaurusRequest;
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 UpdateThesaurusExample {
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 thesaurusId = "thesaurus-id";
String indexId = "index-id";
UpdateThesaurusRequest updateThesaurusRequest = UpdateThesaurusRequest
.builder()
.id(thesaurusId)
.indexId(indexId)
.name(thesaurusName)
.description(thesaurusDescription)
.roleArn(thesaurusRoleArn)
.sourceS3Path(S3Path.builder()
.bucket(s3BucketName)
.key(s3Key)
.build())
.build();
kendra.updateThesaurus(updateThesaurusRequest);
System.out.println(String.format("Waiting until the thesaurus with ID %s is updated.", thesaurusId));
// a new source s3 path requires re-consumption by Kendra
// and so can take as long as a Create Thesaurus operation
while (true) {
DescribeThesaurusRequest describeThesaurusRequest = DescribeThesaurusRequest.builder()
.id(thesaurusId)
.indexId(indexId)
.build();
DescribeThesaurusResponse describeThesaurusResponse = kendra.describeThesaurus(describeThesaurusRequest);
ThesaurusStatus status = describeThesaurusResponse.status();
if (status != ThesaurusStatus.UPDATING) {
break;
}
TimeUnit.SECONDS.sleep(60);
}
System.out.println("Thesaurus update is complete.");
}
}