

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengambil bagian
<a name="searching-retrieve"></a>

Anda dapat menggunakan [https://docs.aws.amazon.com/kendra/latest/APIReference/API_Retrieve.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_Retrieve.html)API sebagai retriever untuk sistem retrieval augmented generation (RAG).

Sistem RAG menggunakan kecerdasan buatan generatif untuk membangun aplikasi penjawab pertanyaan. Sistem RAG terdiri dari retriever dan large language models (LLM). Diberikan kueri, retriever mengidentifikasi potongan teks yang paling relevan dari kumpulan dokumen dan memasukkannya ke LLM untuk memberikan jawaban yang paling berguna. Kemudian, LLM menganalisis potongan atau bagian teks yang relevan dan menghasilkan respons komprehensif untuk kueri.

`Retrieve`API melihat potongan teks atau kutipan yang disebut sebagai *bagian dan mengembalikan bagian* atas yang paling relevan dengan kueri.

Seperti [https://docs.aws.amazon.com/kendra/latest/APIReference/API_Query.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_Query.html)API, `Retrieve` API juga mencari informasi yang relevan. Mengambil pengambilan informasi API memperhitungkan konteks kueri, dan semua informasi yang tersedia dari dokumen yang diindeks. Namun, secara default, `Query` API hanya mengembalikan bagian kutipan hingga 100 kata token. Dengan `Retrieve` API, Anda dapat mengambil bagian yang lebih panjang hingga 200 kata token dan hingga 100 bagian yang relevan secara semantik. Ini tidak termasuk respons tipe tanya jawab atau FAQ dari indeks Anda. Bagian, juga disebut potongan, adalah kutipan teks yang dapat diekstraksi secara semantik dari beberapa dokumen dan beberapa bagian dari dokumen yang sama. Indeks GenAI Enterprise Edition Kendra menawarkan hasil akurasi tinggi untuk pengambilan, menggunakan pencarian hibrida melalui indeks vektor dan kata kunci bersama dengan peringkat berdasarkan model pembelajaran mendalam.

Anda juga dapat melakukan hal berikut dengan `Retrieve` API:
+ Ganti peningkatan di tingkat indeks
+ Filter berdasarkan bidang atau atribut dokumen
+ Filter berdasarkan akses pengguna atau grup mereka ke dokumen
+ Lihat ember skor kepercayaan untuk hasil bagian yang diambil. Ember kepercayaan memberikan peringkat relatif yang menunjukkan seberapa yakin Amazon Kendra bahwa respons tersebut relevan dengan kueri.
**catatan**  
Bucket skor kepercayaan saat ini hanya tersedia untuk bahasa Inggris.

Anda juga dapat menyertakan bidang tertentu dalam respons yang mungkin memberikan informasi tambahan yang berguna.

`Retrieve`[API saat ini tidak mendukung fitur-fitur berikut: kueri menggunakan [sintaks kueri lanjutan](https://docs.aws.amazon.com/kendra/latest/dg/searching-example.html#searching-index-query-syntax), [koreksi ejaan yang disarankan](https://docs.aws.amazon.com/kendra/latest/dg/query-spell-check.html) untuk kueri, [faset, [saran](https://docs.aws.amazon.com/kendra/latest/dg/query-suggestions.html) kueri untuk melengkapi kueri penelusuran](https://docs.aws.amazon.com/kendra/latest/dg/filtering.html#search-facets) secara otomatis, dan pembelajaran tambahan.](https://docs.aws.amazon.com/kendra/latest/dg/submitting-feedback.html) Setiap kueri API pengambilan tidak akan muncul di dasbor analitik.

`Retrieve`API membagikan jumlah [unit kapasitas kueri](https://docs.aws.amazon.com/kendra/latest/APIReference/API_CapacityUnitsConfiguration.html) yang Anda tetapkan untuk indeks Anda. Untuk informasi selengkapnya tentang apa yang disertakan dalam unit kapasitas tunggal dan kapasitas dasar default untuk indeks, lihat [Menyesuaikan kapasitas](https://docs.aws.amazon.com/kendra/latest/dg/adjusting-capacity.html).

**catatan**  
Anda tidak dapat menambahkan kapasitas jika Anda menggunakan Edisi Amazon Kendra Pengembang; Anda hanya dapat menambahkan kapasitas saat menggunakan Amazon Kendra Enterprise Edition. Untuk informasi selengkapnya tentang apa yang disertakan dalam Edisi Pengembang dan Perusahaan, lihat [Amazon Kendra Edisi](https://docs.aws.amazon.com/kendra/latest/dg/what-is-kendra.html#kendra-editions).

Berikut ini adalah contoh penggunaan `Retrieve` API untuk mengambil 100 bagian paling relevan dari dokumen dalam indeks untuk kueri "how does amazon kendra work?"

------
#### [ Python ]

```
import boto3
import pprint

kendra = boto3.client("kendra")

# Provide the index ID
index_id = "index-id"
# Provide the query text
query = "how does amazon kendra work?"
# You can retrieve up to 100 relevant passages
# You can paginate 100 passages across 10 pages, for example
page_size = 10
page_number = 10

result = kendra.retrieve(
        IndexId = index_id,
        QueryText = query,
        PageSize = page_size,
        PageNumber = page_number)

print("\nRetrieved passage results for query: " + query + "\n")        

for retrieve_result in result["ResultItems"]:

    print("-------------------")
    print("Title: " + str(retrieve_result["DocumentTitle"]))
    print("URI: " + str(retrieve_result["DocumentURI"]))
    print("Passage content: " + str(retrieve_result["Content"]))
    print("------------------\n\n")
```

------
#### [ Java ]

```
package com.amazonaws.kendra;

import software.amazon.awssdk.services.kendra.KendraClient;
import software.amazon.awssdk.services.kendra.model.RetrieveRequest;
import software.amazon.awssdk.services.kendra.model.RetrieveResult;
import software.amazon.awssdk.services.kendra.model.RetrieveResultItem;

public class RetrievePassageExample {
    public static void main(String[] args) {
        KendraClient kendra = KendraClient.builder().build();
        
        String indxId = "index-id";
        String query = "how does amazon kendra work?";
        Integer pgSize = 10;
        Integer pgNumber = 10;

        RetrieveRequest retrieveRequest = retrieveRequest
            .builder()
            .indexId(indxId)
            .queryText(query)
            .pageSize(pgSize)
            .pageNumber(pgNumber)
            .build();

        RetrieveResult retrieveResult = kendra.retrieve(retrieveRequest);

        System.out.println(String.format("\nRetrieved passage results for query: %s", query));
        for(RetrieveResultItem item: retrieveResult.resultItems()) {
            System.out.println("----------------------");
            System.out.println(String.format("Title: %s", documentTitle));
            System.out.println(String.format("URI: %s", documentURI));
            System.out.println(String.format("Passage content: %s", content));
            System.out.println("-----------------------\n");
        }
    }
}
```

------