

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

# Menghasilkan kueri untuk data terstruktur
<a name="knowledge-base-generate-query"></a>

Saat Anda menghubungkan penyimpanan data terstruktur ke basis pengetahuan Anda, basis pengetahuan Anda dapat menanyainya dengan mengonversi kueri bahasa alami yang disediakan oleh pengguna menjadi kueri SQL, berdasarkan struktur sumber data yang ditanyakan. Saat Anda menggunakan:
+ [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html): Respons mengembalikan hasil eksekusi query SQL.
+ [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html): Respons yang dihasilkan didasarkan pada hasil eksekusi query SQL.
+ [GenerateQuery](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_GenerateQuery.html): Amazon Bedrock Knowledge Bases memisahkan konversi kueri dari proses pengambilan. Anda dapat menggunakan operasi API ini untuk mengubah kueri menjadi SQL.

## Menggunakan API `GenerateQuery` ini
<a name="knowledge-base-generate-query-api"></a>

Anda dapat menggunakan respons dari operasi `GenerateQuery` API dengan tindakan berikutnya `Retrieve` atau `RetrieveAndGenerate` tindakan, atau memasukkannya ke dalam alur kerja lain. `GenerateQuery`memungkinkan Anda untuk secara efisien mengubah kueri menjadi kueri SQL dengan mempertimbangkan struktur sumber data basis pengetahuan Anda.

Untuk mengubah kueri bahasa alami menjadi kueri SQL, kirimkan [GenerateQuery](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_GenerateQuery.html)permintaan dengan titik akhir waktu proses [Agen untuk Amazon Bedrock.](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-rt) `GenerateQuery`Permintaan berisi bidang-bidang berikut:
+ queryGenerationInput — Tentukan `TEXT` sebagai `type` dan sertakan kueri di `text` lapangan.
**catatan**  
Pertanyaan harus ditulis dalam bahasa Inggris.
+ TransformationConfiguration - Tentukan `TEXT_TO_SQL` sebagai. `mode` Di `textToSqlConfiguration` lapangan, tentukan `KNOWLEDGE_BASE` sebagai`type`. Kemudian, tentukan ARN dari basis pengetahuan.

Respons mengembalikan array yang berisi [GeneratedQuery](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_GeneratedQuery.html)objek di `queries` lapangan. Objek berisi query SQL untuk query di `sql` lapangan.

## Pertimbangan utama
<a name="knowledge-base-generate-query-considerations"></a>

Berikut ini adalah beberapa pertimbangan utama saat menghasilkan kueri menggunakan data terstruktur.
+ 

**Inferensi lintas wilayah dan pengambilan data terstruktur**  
Pengambilan data terstruktur menggunakan inferensi lintas wilayah untuk memilih yang optimal Wilayah AWS dalam geografi Anda untuk memproses permintaan inferensi Anda. Ini tidak dikenakan biaya tambahan, dan meningkatkan pengalaman pelanggan dengan memaksimalkan sumber daya yang tersedia dan ketersediaan model.

  Permintaan inferensi silang disimpan dalam Wilayah AWS yang merupakan bagian dari geografi tempat data awalnya berada. Data Anda tetap tersimpan di dalam Wilayah sumber tetapi petunjuk input dan hasil keluaran mungkin berpindah ke luar Wilayah ini. Semua data akan dikirimkan dienkripsi melalui jaringan aman Amazon.

  Untuk informasi selengkapnya, lihat [Tingkatkan throughput dengan inferensi lintas wilayah](cross-region-inference.md).
+ 

**Akurasi kueri SQL yang dihasilkan**  
Keakuratan kueri SQL yang dihasilkan dapat bervariasi tergantung pada konteks, skema tabel, dan maksud kueri pengguna. Evaluasi kueri yang dihasilkan untuk memastikan bahwa kueri tersebut sesuai dengan kasus penggunaan Anda sebelum menggunakannya dalam beban kerja Anda.
+ 

**Jumlah hasil yang diambil**  
Keterbatasan berikut berlaku saat menghasilkan respons.
  + Saat menggunakan operasi`InvokeAgent`,`RetrieveAndGenerate`, dan `RetrieveAndGenerateStream` API, hanya 10 hasil yang diambil yang digunakan saat menghasilkan respons.
  + Saat menggunakan `InvokeAgent` API, jika ada lebih dari 10 baris hasil yang diambil, jumlah total baris yang diambil tidak diteruskan ke agen untuk menghasilkan respons. Jika Anda menggunakan `RetrieveAndGenerate` API sebagai gantinya, jumlah baris disertakan dalam prompt untuk menghasilkan respons akhir.
+ 

**`GenerateQuery`Kuota API**  
`GenerateQuery`API memiliki kuota 2 permintaan per detik.

## Berikan izin peran untuk mengakses kueri yang dihasilkan
<a name="knowledge-base-structured-permissions"></a>

Untuk basis pengetahuan Anda yang terhubung ke sumber data terstruktur, jika Anda ingin melakukan beberapa operasi tambahan pada squeries yang dihasilkan, Anda harus memberikan izin untuk melakukan tindakan API. `GenerateQuery` Untuk mengizinkan peran IAM Anda menanyakan basis pengetahuan yang terhubung ke penyimpanan data terstruktur, lampirkan kebijakan berikut ke peran tersebut:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "GetKB",
            "Effect": "Allow",
            "Action": [
                "bedrock:GetKnowledgeBase"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/KnowledgeBaseId"
            ]
        },
        {
            "Sid": "GenerateQueryAccess",
            "Effect": "Allow",
            "Action": [
                "bedrock:GenerateQuery",
                "sqlworkbench:GetSqlRecommendations"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Retrieve",
            "Effect": "Allow",
            "Action": [
                "bedrock:Retrieve"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/KnowledgeBaseId"
            ]
        },
        {
            "Sid": "RetrieveAndGenerate",
            "Effect": "Allow",
            "Action": [
                "bedrock:RetrieveAndGenerate"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

Anda dapat menghapus pernyataan yang tidak Anda butuhkan, tergantung pada kasus penggunaan Anda:
+ `GenerateQuery`Pernyataan `GetKB` dan diperlukan untuk memanggil [GenerateQuery](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_GenerateQuery.html)untuk menghasilkan kueri SQL yang memperhitungkan kueri pengguna akun dan sumber data Anda yang terhubung.
+ `Retrieve`Pernyataan ini diperlukan untuk memanggil [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html)untuk mengambil data dari penyimpanan data terstruktur Anda.
+ `RetrieveAndGenerate`Pernyataan ini diperlukan untuk memanggil [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html)untuk mengambil data dari penyimpanan data terstruktur Anda dan menghasilkan respons berdasarkan data.