View a markdown version of this page

Konfigurasikan dan sesuaikan kueri dan pembuatan respons - Amazon Bedrock

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

Konfigurasikan dan sesuaikan kueri dan pembuatan respons

Anda dapat mengonfigurasi dan menyesuaikan pengambilan dan pembuatan respons, yang selanjutnya meningkatkan relevansi respons. Misalnya, Anda dapat menerapkan filter ke metadata dokumen fields/attributes untuk menggunakan dokumen atau dokumen terbaru yang diperbarui dengan waktu modifikasi terbaru.

catatan

Semua konfigurasi berikut, kecuali untuk Orkestrasi dan pembuatan, hanya berlaku untuk sumber data yang tidak terstruktur.

Untuk mempelajari lebih lanjut tentang konfigurasi ini di konsol atau API, pilih dari topik berikut:

Saat Anda menanyakan basis pengetahuan, Amazon Bedrock mengembalikan hingga lima hasil dalam respons secara default. Setiap hasil sesuai dengan potongan sumber.

catatan

Jumlah aktual hasil dalam respons mungkin kurang dari numberOfResults nilai yang ditentukan, karena parameter ini menetapkan jumlah maksimum hasil yang akan dikembalikan. Jika Anda telah mengonfigurasi pemotongan hierarkis untuk strategi chunking Anda, numberOfResults parameter memetakan ke jumlah potongan anak yang akan diambil basis pengetahuan. Karena potongan turunan yang berbagi potongan induk yang sama diganti dengan potongan induk dalam respons akhir, jumlah hasil yang dikembalikan mungkin kurang dari jumlah yang diminta.

Untuk mengubah jumlah maksimum hasil yang akan dikembalikan, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

Console

Ikuti langkah-langkah konsol di Kueri basis pengetahuan dan ambil data atauKueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil. Di panel Konfigurasi, perluas bagian potongan Sumber dan masukkan jumlah maksimum potongan sumber untuk dikembalikan.

API

Saat Anda membuat RetrieveAndGenerate permintaan Retrieve atau, sertakan retrievalConfiguration bidang, dipetakan ke KnowledgeBaseRetrievalConfiguration objek. Untuk melihat lokasi bidang ini, lihat Retrieve dan RetrieveAndGenerate permintaan badan di referensi API.

Objek JSON berikut menunjukkan bidang minimal yang diperlukan dalam KnowledgeBaseRetrievalConfiguration objek untuk mengatur jumlah maksimum hasil yang akan dikembalikan:

"retrievalConfiguration": { "vectorSearchConfiguration": { "numberOfResults": number } }

Tentukan jumlah maksimum hasil yang diambil (lihat numberOfResults bidang di KnowledgeBaseRetrievalConfiguration untuk kisaran nilai yang diterima) untuk dikembalikan di numberOfResults bidang.

Jenis pencarian mendefinisikan bagaimana sumber data dalam basis pengetahuan ditanyakan. Jenis pencarian berikut dimungkinkan:

catatan

Pencarian hibrida hanya didukung untuk toko vektor Amazon RDS, Amazon OpenSearch Serverless, dan MongoDB yang berisi bidang teks yang dapat difilter. Jika Anda menggunakan penyimpanan vektor yang berbeda atau penyimpanan vektor Anda tidak berisi bidang teks yang dapat difilter, kueri menggunakan pencarian semantik.

  • Default — Amazon Bedrock memutuskan strategi pencarian untuk Anda.

  • Hibrida — Menggabungkan pencarian penyematan vektor (pencarian semantik) dengan pencarian melalui teks mentah.

  • Semantik — Hanya mencari penyematan vektor.

Untuk mempelajari cara menentukan jenis pencarian, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

Console

Ikuti langkah-langkah konsol di Kueri basis pengetahuan dan ambil data atauKueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil. Saat Anda membuka panel Konfigurasi, perluas bagian Jenis pencarian, aktifkan Ganti pencarian default, dan pilih opsi.

API

Saat Anda membuat RetrieveAndGenerate permintaan Retrieve atau, sertakan retrievalConfiguration bidang, dipetakan ke KnowledgeBaseRetrievalConfiguration objek. Untuk melihat lokasi bidang ini, lihat Retrieve dan RetrieveAndGenerate permintaan badan di referensi API.

Objek JSON berikut menunjukkan bidang minimal yang diperlukan dalam KnowledgeBaseRetrievalConfiguration objek untuk mengatur konfigurasi jenis pencarian:

"retrievalConfiguration": { "vectorSearchConfiguration": { "overrideSearchType": "HYBRID | SEMANTIC" } }

Tentukan jenis pencarian di overrideSearchType bidang. Anda memiliki opsi berikut:

  • Jika Anda tidak menentukan nilai, Amazon Bedrock memutuskan strategi pencarian mana yang paling cocok untuk konfigurasi penyimpanan vektor Anda.

  • HYBRID — Amazon Bedrock menanyakan basis pengetahuan menggunakan penyematan vektor dan teks mentah.

  • SEMANTI K — Amazon Bedrock menanyakan basis pengetahuan menggunakan penyematan vektornya.

Console

Ikuti langkah-langkah konsol diKueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil. Saat Anda membuka panel Konfigurasi, perluas bagian preferensi Streaming dan aktifkan respons Stream.

API

Untuk mengalirkan respons, gunakan RetrieveAndGenerateStream API. Untuk detail lebih lanjut tentang mengisi kolom, lihat tab API diKueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil.

Anda dapat menerapkan filter ke dokumen fields/attributes untuk membantu Anda lebih meningkatkan relevansi tanggapan. Sumber data Anda dapat menyertakan metadata dokumen attributes/fields untuk difilter dan dapat menentukan bidang mana yang akan disertakan dalam penyematan.

Pertimbangan basis pengetahuan terkelola

Saat menggunakan pemfilteran metadata dengan basis pengetahuan terkelola:

  • Filter startsWith dan stringContains metadata tidak didukung. Gunakanequals,,greaterThan,lessThan,in, atau notIn operator sebagai gantinya.

  • Untuk basis pengetahuan khusus, bidang metadata yang diawali dengan x-amz-bedrock dicadangkan oleh layanan. Untuk basis pengetahuan yang dikelola sepenuhnya, bidang metadata yang dicadangkan menggunakan awalan garis bawah (misalnya,_source_uri,_data_source_id). Anda tidak dapat mengganti bidang metadata yang dicadangkan di salah satu jenis basis pengetahuan.

Misalnya, “epoch_modifiation_time” mewakili waktu dalam jumlah detik sejak 1 Januari 1970 (UTC) ketika dokumen terakhir diperbarui. Anda dapat memfilter pada data terbaru, di mana “epoch_modifiation_time” lebih besar dari angka tertentu. Dokumen terbaru ini dapat digunakan untuk kueri.

Untuk menggunakan filter saat menanyakan basis pengetahuan, periksa apakah basis pengetahuan Anda memenuhi persyaratan berikut:

  • Saat mengonfigurasi konektor sumber data Anda, sebagian besar konektor merayapi bidang metadata utama dokumen Anda. Jika Anda menggunakan bucket Amazon S3 sebagai sumber data, bucket harus menyertakan setidaknya satu fileName.extension.metadata.json untuk file atau dokumen yang terkait dengannya. Lihat Bidang metadata dokumen Konfigurasi koneksi untuk informasi selengkapnya tentang mengonfigurasi file metadata.

  • Jika indeks vektor basis pengetahuan Anda berada di penyimpanan vektor Amazon OpenSearch Serverless, periksa apakah indeks vektor dikonfigurasi dengan faiss mesin. Jika indeks vektor dikonfigurasi dengan nmslib mesin, Anda harus melakukan salah satu hal berikut:

  • Jika basis pengetahuan Anda menggunakan indeks vektor dalam bucket vektor S3, Anda tidak dapat menggunakan stringContains filter startsWith dan.

  • Jika Anda menambahkan metadata ke indeks vektor yang ada di cluster database Amazon Aurora, sebaiknya berikan nama bidang kolom metadata kustom untuk menyimpan semua metadata Anda dalam satu kolom. Selama penyerapan data, kolom ini akan digunakan untuk mengisi semua informasi dalam file metadata Anda dari sumber data Anda. Jika Anda memilih untuk memberikan bidang ini, Anda harus membuat indeks pada kolom ini.

    • Saat Anda membuat basis pengetahuan baru di konsol dan membiarkan Amazon Bedrock mengonfigurasi database Amazon Aurora Anda, itu akan secara otomatis membuat satu kolom untuk Anda dan mengisinya dengan informasi dari file metadata Anda.

    • Ketika Anda memilih untuk membuat indeks vektor lain di penyimpanan vektor, Anda harus memberikan nama bidang metadata khusus untuk menyimpan informasi dari file metadata Anda. Jika Anda tidak memberikan nama bidang ini, Anda harus membuat kolom untuk setiap atribut metadata dalam file Anda dan menentukan jenis data (teks, angka, atau boolean). Misalnya, jika atribut genre ada di sumber data Anda, Anda akan menambahkan kolom bernama genre dan tentukan text sebagai tipe data. Selama konsumsi, kolom terpisah ini akan diisi dengan nilai atribut yang sesuai.

Jika Anda memiliki dokumen PDF di sumber data Anda dan menggunakan Amazon OpenSearch Serverless atau Amazon Aurora untuk toko vektor Anda: Basis pengetahuan Amazon Bedrock akan menghasilkan nomor halaman dokumen dan menyimpannya dalam metadata yang field/attribute disebut x-amz-bedrock-kb-document-page-number. Perhatikan bahwa nomor halaman yang disimpan dalam bidang metadata tidak didukung jika Anda memilih tidak memotong untuk dokumen Anda.

Anda dapat menggunakan operator pemfilteran berikut untuk memfilter hasil saat Anda menanyakan:

Operator penyaringan
Operator Konsol Nama filter API Jenis data atribut yang didukung Hasil yang difilter
Sama dengan = sama string, angka, boolean Atribut cocok dengan nilai yang Anda berikan
Tidak sama != CatatanKualitas string, angka, boolean Atribut tidak cocok dengan nilai yang Anda berikan
Lebih besar dari > Lebih besarDari number Atribut lebih besar dari nilai yang Anda berikan
Lebih besar dari atau sama >= lebih besar ThanOrEquals number Atribut lebih besar dari atau sama dengan nilai yang Anda berikan
Kurang dari < Kurang dari number Atribut kurang dari nilai yang Anda berikan
Kurang dari atau sama <= kurang ThanOrEquals number Atribut kurang dari atau sama dengan nilai yang Anda berikan
Masuk : di daftar string Atribut ada dalam daftar yang Anda berikan (saat ini paling didukung dengan toko vektor Amazon OpenSearch Serverless dan Neptune Analytics GraphRag)
Tidak masuk !: Tidak ada daftar string Atribut tidak ada dalam daftar yang Anda berikan (saat ini didukung paling baik dengan toko vektor Amazon OpenSearch Serverless dan Neptune Analytics GraphRag)
String berisi Tidak tersedia StringBerisi string Atribut harus berupa string. Nama atribut cocok dengan kunci dan nilainya adalah string yang berisi nilai yang Anda berikan sebagai substring, atau daftar dengan anggota yang berisi nilai yang Anda berikan sebagai substring (saat ini paling baik didukung dengan Amazon OpenSearch Serverless vector store. Penyimpanan vektor GraphRag Neptune Analytics mendukung varian string tetapi bukan varian daftar filter ini).
Daftar berisi Tidak tersedia DaftarBerisi string Atribut harus berupa daftar string. Nama atribut cocok dengan kunci dan nilainya adalah daftar yang berisi nilai yang Anda berikan sebagai salah satu anggotanya (saat ini didukung paling baik dengan penyimpanan vektor Amazon OpenSearch Serverless).

Untuk menggabungkan operator penyaringan, Anda dapat menggunakan operator logis berikut:

Operator logis
Operator Konsol Nama bidang filter API Hasil yang difilter
Dan and Dan semua Hasil memenuhi semua ekspresi pemfilteran dalam grup
Atau atau atauSemua Hasil memenuhi setidaknya satu ekspresi pemfilteran dalam grup

Untuk mempelajari cara memfilter hasil menggunakan metadata, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

Console

Ikuti langkah-langkah konsol di Kueri basis pengetahuan dan ambil data atauKueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil. Saat Anda membuka panel Konfigurasi, Anda akan melihat bagian Filter. Prosedur berikut menjelaskan kasus penggunaan yang berbeda:

  • Untuk menambahkan filter, buat ekspresi pemfilteran dengan memasukkan atribut metadata, operator pemfilteran, dan nilai dalam kotak. Pisahkan setiap bagian ekspresi dengan spasi putih. Tek an Enter untuk menambahkan filter.

    Untuk daftar operator penyaringan yang diterima, lihat tabel Operator pen yaringan di atas. Anda juga dapat melihat daftar operator pemfilteran saat menambahkan spasi setelah atribut metadata.

    catatan

    Anda harus mengelilingi string dengan tanda kutip.

    Misalnya, Anda dapat memfilter hasil dari dokumen sumber yang berisi atribut genre metadata yang nilainya "entertainment" dengan menambahkan filter berikut:genre = "entertainment".

    Tambahkan satu filter.
  • Untuk menambahkan filter lain, masukkan ekspresi penyaringan lain di kotak dan tekan Enter. Anda dapat menambahkan hingga 5 filter dalam grup.

    Tambahkan filter lain.
  • Secara default, kueri akan mengembalikan hasil yang memenuhi semua ekspresi pemfilteran yang Anda berikan. Untuk mengembalikan hasil yang memenuhi setidaknya satu ekspresi pemfilteran, pilih menu tarik- turun dan di antara dua operasi pemfilteran dan pilih atau.

    Ubah operasi logis antar filter.
  • Untuk menggabungkan operator logis yang berbeda, pilih + Tam bah Grup untuk menambahkan grup filter. Masukkan ekspresi pemfilteran di grup baru. Anda dapat menambahkan hingga 5 grup filter.

    Tambahkan grup filter untuk menggabungkan operator logis yang berbeda.
  • Untuk mengubah operator logis yang digunakan di antara semua grup pemfilteran, pilih menu dropdown AND di antara dua grup filter dan pilih OR.

    Ubah operasi logis antara grup filter.
  • Untuk mengedit filter, pilih filter, ubah operasi pemfilteran, dan pilih Ter apkan.

    Edit filter.
  • Untuk menghapus grup filter, pilih ikon tempat sampah ( Trash can icon representing a delete action. ) di sebelah grup. Untuk menghapus filter, pilih ikon hapus ( Close or cancel icon represented by an "X" symbol. ) di sebelah filter.

    Hapus filter atau grup filter.

Gambar berikut menunjukkan contoh konfigurasi filter yang mengembalikan semua dokumen yang ditulis setelah gen 2018 renya"entertainment", selain dokumen yang genrenya "cooking" atau "sports" dan yang penulisnya dimulai"C".

Contoh konfigurasi filter.
API

Saat Anda membuat RetrieveAndGenerate permintaan Retrieve atau, sertakan retrievalConfiguration bidang, dipetakan ke KnowledgeBaseRetrievalConfiguration objek. Untuk melihat lokasi bidang ini, lihat Retrieve dan RetrieveAndGenerate permintaan badan di referensi API.

Objek JSON berikut menunjukkan bidang minimal yang diperlukan dalam KnowledgeBaseRetrievalConfiguration objek untuk mengatur filter untuk kasus penggunaan yang berbeda:

  1. Gunakan satu operator penyaringan (lihat tabel operator penyaringan di atas).

    "retrievalConfiguration": { "vectorSearchConfiguration": { "filter": { "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] } } } }
  2. Gunakan operator logis (lihat tabel operator logis di atas) untuk menggabungkan hingga 5.

    "retrievalConfiguration": { "vectorSearchConfiguration": { "filter": { "andAll | orAll": [ "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] }, "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] }, ... ] } } }
  3. Gunakan operator logis untuk menggabungkan hingga 5 operator penyaringan ke dalam grup filter, dan operator logis kedua untuk menggabungkan grup filter itu dengan operator pemfilteran lain.

    "retrievalConfiguration": { "vectorSearchConfiguration": { "filter": { "andAll | orAll": [ "andAll | orAll": [ "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] }, "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] }, ... ], "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] } ] } } }
  4. Gabungkan hingga 5 grup filter dengan menyematkannya dalam operator logis lain. Anda dapat membuat satu tingkat penyematan.

    "retrievalConfiguration": { "vectorSearchConfiguration": { "filter": { "andAll | orAll": [ "andAll | orAll": [ "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] }, "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] }, ... ], "andAll | orAll": [ "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] }, "<filter-type>": { "key": "string", "value": "string" | number | boolean | ["string", "string", ...] }, ... ] ] } } }

Tabel berikut menjelaskan jenis filter yang dapat Anda gunakan:

Bidang Jenis data nilai yang didukung Hasil yang difilter
equals string, angka, boolean Atribut cocok dengan nilai yang Anda berikan
notEquals string, angka, boolean Atribut tidak cocok dengan nilai yang Anda berikan
greaterThan number Atribut lebih besar dari nilai yang Anda berikan
greaterThanOrEquals number Atribut lebih besar dari atau sama dengan nilai yang Anda berikan
lessThan number Atribut kurang dari nilai yang Anda berikan
lessThanOrEquals number Atribut kurang dari atau sama dengan nilai yang Anda berikan
in daftar string Atribut ada dalam daftar yang Anda berikan
notIn daftar string Atribut tidak ada dalam daftar yang Anda berikan
startsWith string Atribut dimulai dengan string yang Anda berikan (hanya didukung untuk penyimpanan vektor Amazon OpenSearch Serverless)

Untuk menggabungkan jenis filter, Anda dapat menggunakan salah satu operator logis berikut:

Bidang Peta ke Hasil yang difilter
andAll Daftar hingga 5 jenis filter Hasil memenuhi semua ekspresi pemfilteran dalam grup
orAll Daftar hingga 5 jenis filter Hasil memenuhi setidaknya satu ekspresi pemfilteran dalam grup

Sebagai contoh, lihat Men girim kueri dan sertakan filter (Ambil) dan Men girim kueri dan sertakan filter (RetrieveAndGenerate).

Basis Pengetahuan Amazon Bedrock menghasilkan dan menerapkan filter pengambilan berdasarkan kueri pengguna dan skema metadata.

catatan

Pemfilteran metadata implisit didukung oleh Anthropic Claude model. Untuk informasi selengkapnya tentang model yang didukung, lihat sekilas model.

implicitFilterConfigurationHal ini ditentukan vectorSearchConfiguration dalam badan Retrieve permintaan. Sertakan bidang berikut:

  • metadataAttributes- Dalam array ini, berikan skema yang menggambarkan atribut metadata yang akan dihasilkan oleh model.

  • modelArn— ARN model yang akan digunakan.

Berikut ini menunjukkan contoh skema metadata yang dapat Anda tambahkan ke array dimetadataAttributes.

[ { "key": "company", "type": "STRING", "description": "The full name of the company. E.g. `Amazon.com, Inc.`, `Alphabet Inc.`, etc" }, { "key": "ticker", "type": "STRING", "description": "The ticker name of a company in the stock market, e.g. AMZN, AAPL" }, { "key": "pe_ratio", "type": "NUMBER", "description": "The price to earning ratio of the company. This is a measure of valuation of a company. The lower the pe ratio, the company stock is considered chearper." }, { "key": "is_us_company", "type": "BOOLEAN", "description": "Indicates whether the company is a US company." }, { "key": "tags", "type": "STRING_LIST", "description": "Tags of the company, indicating its main business. E.g. `E-commerce`, `Search engine`, `Artificial intelligence`, `Cloud computing`, etc" } ]

Anda dapat menerapkan perlindungan untuk basis pengetahuan Anda untuk kasus penggunaan dan kebijakan AI yang bertanggung jawab. Anda dapat membuat beberapa pagar pembatas yang disesuaikan dengan kasus penggunaan yang berbeda dan menerapkannya di beberapa kondisi permintaan dan respons, memberikan pengalaman pengguna yang konsisten dan menstandarisasi kontrol keselamatan di seluruh basis pengetahuan Anda. Anda dapat mengonfigurasi topik yang ditolak untuk melarang topik yang tidak diinginkan dan filter konten untuk memblokir konten berbahaya dalam input dan respons model. Untuk informasi selengkapnya, lihat Mendeteksi dan memfilter konten berbahaya dengan menggunakan Amazon Bedrock Guardrails.

catatan

Menggunakan pagar pembatas dengan landasan kontekstual untuk basis pengetahuan saat ini tidak didukung di Claude 3 Sonnet dan Haiku.

Untuk pedoman rekayasa cepat umum, lihatKonsep rekayasa prompt.

Pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

Console

Ikuti langkah-langkah konsol di Kueri basis pengetahuan dan ambil data atauKueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil. Di jendela pengujian, aktifkan H asilkan respons. Kemudian, di panel Konfigurasi, perluas bagian Guardrails.

  1. Di bagian Guardrails, pilih Nama dan Versi pagar pembatas Anda. Jika Anda ingin melihat detail pagar pembatas dan versi pilihan Anda, pilih Lihat.

    Atau, Anda dapat membuat yang baru dengan memilih tautan Guardrail.

  2. Setelah selesai mengedit, pilih Simpan perubahan. Untuk keluar tanpa menyimpan pilih Bu ang perubahan.

API

Saat Anda membuat RetrieveAndGenerate permintaan, sertakan guardrailConfiguration bidang di dalam generationConfiguration untuk menggunakan pagar pembatas Anda dengan permintaan. Untuk melihat lokasi bidang ini, lihat badan RetrieveAndGenerate permintaan di referensi API.

Objek JSON berikut menunjukkan bidang minimal yang diperlukan GenerationConfiguration untuk mengaturguardrailConfiguration:

"generationConfiguration": { "guardrailConfiguration": { "guardrailId": "string", "guardrailVersion": "string" } }

Tentukan guardrailId pagar guardrailVersion pembatas pilihan Anda.

Anda dapat menggunakan model reranker untuk melakukan rangking ulang hasil dari kueri basis pengetahuan. Ikuti langkah-langkah konsol di Kueri basis pengetahuan dan ambil data atauKueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil. Saat Anda membuka panel Konfigurasi, perluas bagian Reranking. Pilih model reranker, perbarui izin jika perlu, dan ubah opsi tambahan apa pun. Masukkan prompt dan pilih Run untuk menguji hasil setelah rangking ulang.

Dekomposisi kueri adalah teknik yang digunakan untuk memecah kueri kompleks menjadi sub-kueri yang lebih kecil dan lebih mudah dikelola. Pendekatan ini dapat membantu dalam mengambil informasi yang lebih akurat dan relevan, terutama ketika kueri awal beragam atau terlalu luas. Mengaktifkan opsi ini dapat mengakibatkan beberapa kueri dieksekusi terhadap Pangkalan Pengetahuan Anda, yang dapat membantu dalam respons akhir yang lebih akurat.

Misalnya, untuk pertanyaan seperti “Siapa yang mencetak skor lebih tinggi di Piala Dunia FIFA 2022, Argentina atau Prancis?” , basis pengetahuan Amazon Bedrock pertama-tama dapat menghasilkan sub-kueri berikut, sebelum menghasilkan jawaban akhir:

  1. Berapa banyak gol yang dicetak Argentina di final Piala Dunia FIFA 2022?

  2. Berapa banyak gol yang dicetak Prancis di final Piala Dunia FIFA 2022?

Console
  1. Buat dan sinkronkan sumber data atau menggunakan basis pengetahuan yang ada.

  2. Buka jendela pengujian dan buka panel konfigurasi.

  3. Aktifkan dekomposisi kueri.

API
POST /retrieveAndGenerate HTTP/1.1 Content-type: application/json { "input": { "text": "string" }, "retrieveAndGenerateConfiguration": { "knowledgeBaseConfiguration": { "orchestrationConfiguration": { // Query decomposition "queryTransformationConfiguration": { "type": "string" // enum of QUERY_DECOMPOSITION } }, ...} }

Saat menghasilkan respons berdasarkan pengambilan informasi, Anda dapat menggunakan parameter inferensi untuk mendapatkan kontrol lebih besar atas perilaku model selama inferensi dan memengaruhi output model.

Untuk mempelajari cara memodifikasi parameter inferensi, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

Console

Untuk memodifikasi parameter inferensi saat menanyakan basis pengetahuan — Ikuti langkah-langkah konsol di Kueri basis pengetahuan dan ambil data atau. Kueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil Saat Anda membuka panel Konfigurasi, Anda akan melihat bagian parameter inferensi. Ubah parameter seperlunya.

Untuk mengubah parameter inferensi saat mengobrol dengan dokumen Anda - Ikuti langkah-langkah diMengobrol dengan dokumen Anda tanpa basis pengetahuan yang dikonfigurasi. Di panel Konfigurasi, perluas bagian Param eter inferensi dan ubah parameter seperlunya.

API

Anda memberikan parameter model dalam panggilan ke RetrieveAndGenerate API. Anda dapat menyesuaikan model dengan memberikan parameter inferensi di inferenceConfig bidang knowledgeBaseConfiguration (jika Anda menanyakan basis pengetahuan) atau externalSourcesConfiguration (jika Anda mengob rol dengan dokumen Anda).

Di dalam inferenceConfig bidang adalah textInferenceConfig bidang yang berisi parameter berikut yang dapat Anda lakukan:

  • suhu

  • TOP

  • maks TokenCount

  • StopSequences

Anda dapat menyesuaikan model dengan menggunakan parameter berikut di inferenceConfig bidang keduanya externalSourcesConfiguration danknowledgeBaseConfiguration:

  • suhu

  • TOP

  • maks TokenCount

  • StopSequences

Untuk penjelasan rinci tentang fungsi masing-masing parameter ini, lihatMempengaruhi generasi respons dengan parameter inferensi.

Selain itu, Anda dapat memberikan parameter khusus yang tidak didukung oleh textInferenceConfig melalui additionalModelRequestFields peta. Anda dapat memberikan parameter unik untuk model tertentu dengan argumen ini, untuk parameter unik lihatParameter permintaan inferensi dan bidang respons untuk model fondasi.

Jika parameter dihilangkan daritextInferenceConfig, nilai default akan digunakan. Setiap parameter yang tidak dikenali textInferneceConfig akan diabaikan, sementara parameter apa pun yang tidak dikenali AdditionalModelRequestFields akan menyebabkan pengecualian.

Pengecualian validasi dilemparkan jika ada parameter yang sama di kedua additionalModelRequestFields danTextInferenceConfig.

Menggunakan parameter model di RetrieveAndGenerate

Berikut ini adalah contoh struktur untuk inferenceConfig dan additionalModelRequestFields di bawah generationConfiguration dalam badan RetrieveAndGenerate permintaan:

"inferenceConfig": { "textInferenceConfig": { "temperature": 0.5, "topP": 0.5, "maxTokens": 2048, "stopSequences": ["\nObservation"] } }, "additionalModelRequestFields": { "top_k": 50 }

Contoh lanjutan menetapkan temperature 0,5, top_p dari 0,5, maxTokens dari 2048, menghentikan pembuatan jika menemukan string "\ n Observation” dalam respons yang dihasilkan, dan melewati top_k nilai kustom 50.

Saat Anda menanyakan basis pengetahuan dan meminta pembuatan respons, Amazon Bedrock menggunakan templat prompt yang menggabungkan instruksi dan konteks dengan kueri pengguna untuk membuat prompt pembuatan yang dikirim ke model untuk pembuatan respons. Anda juga dapat menyesuaikan prompt orkestrasi, yang mengubah prompt pengguna menjadi permintaan pencarian. Anda dapat merekayasa templat prompt dengan alat berikut:

  • Prompt placeholder — Pre-defined variabel di Basis Pengetahuan Amazon Bedrock yang diisi secara dinamis saat runtime selama kueri basis pengetahuan. Pada prompt sistem, Anda akan melihat placeholder ini dikelilingi oleh simbol. $ Daftar berikut menjelaskan placeholder yang dapat Anda gunakan:

    catatan

    $output_format_instructions$Placeholder adalah bidang wajib untuk kutipan yang akan ditampilkan dalam respons.

    Variabel Template yang cepat Diganti oleh Model Diperlukan?
    $ kueri $ Orkestrasi, generasi Permintaan pengguna dikirim ke basis pengetahuan. AnthropicClaude Instant, Anthropic Claude v2.x Ya
    Anthropic Claude 3 Sonnet Tidak (otomatis disertakan dalam masukan model)
    $penelusuran_hasil$ Generasi Hasil yang diambil untuk permintaan pengguna. Semua Ya
    $output_format_instructions$ Orkestrasi Instruksi yang mendasari untuk memformat pembuatan respons dan kutipan. Berbeda menurut model. Jika Anda menentukan instruksi pemformatan Anda sendiri, kami sarankan Anda menghapus placeholder ini. Tanpa placeholder ini, respons tidak akan berisi kutipan. Semua Ya
    $waktu_saat ini$ Orkestrasi, generasi Waktu saat ini. Semua Tidak
  • Tag XML — Anthropic model mendukung penggunaan tag XML untuk menyusun dan menggambarkan prompt Anda. Gunakan nama tag deskriptif untuk hasil yang optimal. Misalnya, dalam prompt sistem default, Anda akan melihat <database> tag yang digunakan untuk menggambarkan database pertanyaan yang diajukan sebelumnya). Untuk informasi selengkapnya, lihat Menggunakan tag XML di panduan Anthropic pengguna.

Untuk pedoman rekayasa cepat umum, lihatKonsep rekayasa prompt.

catatan

Jika Anda tidak menyediakan templat prompt khusus, Amazon Bedrock menggunakan prompt sistem default yang menyertakan konten contoh umum (seperti contoh pertanyaan dan jawaban tentang topik yang tidak terkait) untuk memandu pemformatan respons model. Prompt default ini terlihat di log Memantau pemanggilan model menggunakan CloudWatch Log dan Amazon S3 pemanggilan model. Contoh konten dalam prompt default bukan dari data pelanggan lain - ini adalah template statis yang disediakan oleh Amazon Bedrock. Anda dapat mengganti prompt default dengan menentukan prompt Anda sendiritextPromptTemplate.

Pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

Console

Ikuti langkah-langkah konsol di Kueri basis pengetahuan dan ambil data atauKueri basis pengetahuan dan hasilkan tanggapan berdasarkan data yang diambil. Di jendela pengujian, aktifkan H asilkan respons. Kemudian, di panel Konfigurasi, perluas bagian template prompt basis pengetahuan.

  1. Pilih Edit.

  2. Edit prompt sistem di editor teks, termasuk placeholder prompt dan tag XML seperlunya. Untuk kembali ke template prompt default, pilih Reset ke default.

  3. Setelah selesai mengedit, pilih Simpan perubahan. Untuk keluar tanpa menyimpan prompt sistem, pilih Bu ang perubahan.

API

Saat Anda membuat RetrieveAndGenerate permintaan, sertakan generationConfiguration bidang, dipetakan ke GenerationConfiguration objek. Untuk melihat lokasi bidang ini, lihat badan RetrieveAndGenerate permintaan di referensi API.

Objek JSON berikut menunjukkan bidang minimal yang diperlukan dalam GenerationConfiguration objek untuk mengatur jumlah maksimum hasil yang diambil untuk dikembalikan:

"generationConfiguration": { "promptTemplate": { "textPromptTemplate": "string" } }

Masukkan template prompt kustom Anda di textPromptTemplate bidang, termasuk placeholder prompt dan tag XML seperlunya. Untuk jumlah maksimum karakter yang diizinkan dalam prompt sistem, lihat textPromptTemplate bidang di GenerationConfiguration.