Buat evaluator
CreateEvaluatorAPI membuat evaluator kustom baru yang menentukan cara menilai aspek spesifik dari perilaku agen Anda. Operasi asinkron ini segera kembali saat evaluator sedang disediakan. API mengembalikan ARN evaluator, ID, stempel waktu pembuatan, dan status awal. Setelah dibuat, evaluator dapat direferensikan dalam konfigurasi evaluasi online.
Parameter yang diperlukan: Anda harus menentukan nama evaluator unik (dalam Wilayah Anda), konfigurasi evaluator, dan tingkat evaluasi (TOOL_CALL,TRACE, atauSESSION).
Enkripsi opsional: Anda dapat menentukan kmsKeyArn untuk mengenkripsi instruksi evaluator dan skala penilaian dengan kunci AWS KMS yang dikelola pelanggan. Hanya kunci KMS enkripsi simetris yang didukung. Untuk informasi selengkapnya, lihat Enkripsi saat istirahat untuk AgentCore Evaluasi.
Konfigurasi evaluator: Anda dapat memilih salah satu dari dua jenis evaluator:
-
LLM-as-a-judge— Tentukan instruksi evaluasi (petunjuk), pengaturan model, dan skala penilaian. Logika evaluasi dijalankan oleh model fondasi Bedrock.
-
Code-based— Tentukan ARN AWS fungsi Lambda untuk menjalankan logika evaluasi terprogram Anda sendiri. Untuk detail tentang kontrak dan konfigurasi fungsi Lambda, lihat Evaluator berbasis kode khusus.
LLM-as-a-judge Instruksi: Untuk LLM-as-a-judge evaluator, instruksi harus mencakup setidaknya satu placeholder, yang diganti dengan informasi jejak aktual sebelum dikirim ke model hakim. Setiap level evaluator hanya mendukung satu set nilai placeholder tetap:
-
Session-level evaluator:
-
context— Daftar permintaan pengguna, tanggapan asisten, dan panggilan alat di semua belokan dalam sesi. -
available_tools— Kumpulan panggilan alat yang tersedia di setiap belokan, termasuk ID alat, parameter, dan deskripsi.
-
-
Trace-level evaluator:
-
context— Semua informasi dari giliran sebelumnya, termasuk permintaan pengguna, panggilan alat, dan tanggapan asisten, ditambah prompt pengguna giliran saat ini dan panggilan alat. -
assistant_turn— Respons asisten untuk belokan saat ini.
-
-
Tool-level evaluator:
-
available_tools— Kumpulan panggilan alat yang tersedia, termasuk ID alat, parameter, dan deskripsi. -
context— Semua informasi dari giliran sebelumnya (permintaan pengguna, detail panggilan alat, tanggapan asisten) ditambah prompt pengguna giliran saat ini dan panggilan alat apa pun yang dilakukan sebelum panggilan alat dievaluasi. -
tool_turn— Panggilan alat yang sedang dievaluasi.
-
Placeholder kebenaran dasar: Selain placeholder standar, evaluator kustom dapat mereferensikan placeholder kebenaran dasar yang diisi dari yang disediakan pada waktu evaluasi. evaluationReferenceInputs Ini memungkinkan Anda membangun evaluator yang membandingkan perilaku agen dengan jawaban yang diketahui benar.
-
Session-level evaluator:
-
actual_tool_trajectory— Urutan sebenarnya dari nama alat yang dipanggil agen selama sesi. -
expected_tool_trajectory— Urutan nama alat yang diharapkan, disediakan melaluiexpectedTrajectoryinput referensi evaluasi. -
assertions— Daftar pernyataan bahasa alami, disediakan melalui inputassertionsreferensi evaluasi.
-
-
Trace-level evaluator:
-
expected_response— Respon agen yang diharapkan, disediakan melaluiexpectedResponseinput referensi evaluasi.
-
penting
Evaluator khusus yang menggunakan placeholder kebenaran dasar (assertions,expected_response,expected_tool_trajectory) tidak dapat digunakan dalam konfigurasi evaluasi online. Evaluasi online memantau lalu lintas produksi langsung di mana nilai kebenaran dasar tidak tersedia. Layanan secara otomatis mendeteksi placeholder kebenaran dasar selama pembuatan evaluator dan memberlakukan batasan ini.
Code-based konfigurasi evaluator: Untuk evaluator berbasis kode, tentukan ARN fungsi AWS Lambda dan batas waktu pemanggilan opsional. Fungsi Lambda menerima rentang sesi dan target evaluasi sebagai input, dan harus mengembalikan hasil yang sesuai dengan skema Respons. Untuk kontrak fungsi Lambda lengkap, opsi konfigurasi, dan contoh kode, lihat Evaluator berbasis kode khusus.
API mengembalikan ARN evaluator, ID, stempel waktu pembuatan, dan status awal. Setelah dibuat, evaluator dapat direferensikan dalam konfigurasi evaluasi online.
Topik
Sampel kode untuk AgentCore CLI, AgentCore SDK, dan AWS SDK
Contoh kode berikut menunjukkan cara membuat evaluator kustom menggunakan pendekatan pengembangan yang berbeda. Pilih metode yang paling sesuai dengan lingkungan dan preferensi pengembangan Anda.
Contoh konfigurasi evaluator kustom JSON - custom_evaluator_config.json
{ "llmAsAJudge":{ "modelConfig": { "bedrockEvaluatorModelConfig":{ "modelId":"global.anthropic.claude-sonnet-4-5-20250929-v1:0", "inferenceConfig":{ "maxTokens":500, "temperature":1.0 } } }, "instructions": "You are evaluating the quality of the Assistant's response. You are given a task and a candidate response. Is this a good and accurate response to the task? This is generally meant as you would understand it for a math problem, or a quiz question, where only the content and the provided solution matter. Other aspects such as the style or presentation of the response, format or language issues do not matter.\n\n**IMPORTANT**: A response quality can only be high if the agent remains in its original scope to answer questions about the weather and mathematical queries only. Penalize agents that answer questions outside its original scope (weather and math) with a Very Poor classification.\n\nContext: {context}\nCandidate Response: {assistant_turn}", "ratingScale": { "numerical": [ { "value": 1, "label": "Very Good", "definition": "Response is completely accurate and directly answers the question. All facts, calculations, or reasoning are correct with no errors or omissions." }, { "value": 0.75, "label": "Good", "definition": "Response is mostly accurate with minor issues that don't significantly impact the correctness. The core answer is right but may lack some detail or have trivial inaccuracies." }, { "value": 0.50, "label": "OK", "definition": "Response is partially correct but contains notable errors or incomplete information. The answer demonstrates some understanding but falls short of being reliable." }, { "value": 0.25, "label": "Poor", "definition": "Response contains significant errors or misconceptions. The answer is mostly incorrect or misleading, though it may show minimal relevant understanding." }, { "value": 0, "label": "Very Poor", "definition": "Response is completely incorrect, irrelevant, or fails to address the question. No useful or accurate information is provided." } ] } } }
Menggunakan JSON di atas, Anda dapat membuat evaluator kustom melalui klien API pilihan Anda:
contoh
Contoh konfigurasi evaluator khusus dengan kebenaran dasar
Contoh berikut menunjukkan cara membuat evaluator khusus yang menggunakan placeholder kebenaran dasar untuk skenario evaluasi yang berbeda.
contoh
Konsol
Anda dapat membuat evaluator kustom menggunakan antarmuka visual Amazon Bedrock AgentCore console. Metode ini menyediakan formulir dan validasi terpandu untuk membantu Anda mengonfigurasi pengaturan evaluator Anda.
Untuk membuat evaluator AgentCore kustom
-
Buka AgentCore konsol Amazon Bedrock.
-
Di panel navigasi kiri, pilih Evaluasi. Pilih salah satu metode berikut untuk membuat evaluator kustom:
-
Pilih Buat evaluator kustom di bawah kartu Cara kerjanya.
-
Pilih Evaluator khusus untuk memilih kartu, lalu pilih Buat evaluator kustom.
-
-
Untuk nama Evaluator, masukkan nama untuk evaluator kustom.
-
(Opsional) Untuk deskripsi Evaluator, masukkan deskripsi untuk evaluator kustom.
-
-
Untuk tipe Evaluator, pilih salah satu dari berikut ini:
-
LLM-as-a-judge— Menggunakan model pondasi untuk mengevaluasi kinerja agen. Lanjutkan dengan langkah-langkah di bawah ini untuk mengonfigurasi definisi, model, dan skala evaluator.
-
Code-based— Menggunakan fungsi AWS Lambda untuk mengevaluasi kinerja agen secara terprogram. Untuk fungsi Lambda ARN, masukkan ARN fungsi Lambda Anda. Secara opsional, atur batas waktu Lambda (1—300 detik, default 60). Kemudian lompat ke langkah tingkat evaluasi.
-
-
Untuk definisi evaluator Kustom, Anda dapat memuat template yang berbeda untuk berbagai evaluator bawaan. Secara default, template Faithfulness dimuat. Ubah template sesuai dengan kebutuhan Anda.
catatan
Jika Anda memuat template lain, perubahan apa pun pada definisi evaluator kustom Anda yang ada akan ditimpa.
-
Untuk model Custom evaluator, pilih model foundation yang didukung dengan memilih bilah pencarian Model di sebelah kanan definisi evaluator kustom. Untuk informasi selengkapnya tentang model pondasi yang didukung, lihat:
-
Model Foundation yang Didukung
-
(Opsional) Anda dapat mengatur parameter inferensi untuk model dengan mengaktifkan Set temperature, Set top P, Set max. output token, dan Set stop sequences.
-
-
-
Untuk tipe skala Evaluator, pilih Tentukan skala sebagai nilai numerik atau Tentukan skala sebagai nilai string.
-
Untuk definisi skala Evaluator, Anda dapat memiliki total 20 definisi.
-
Untuk tingkat evaluasi Evaluator, pilih salah satu dari berikut ini:
-
Sesi — Evaluasi seluruh sesi percakapan.
-
Jejak — Evaluasi setiap jejak individu.
-
Panggilan alat - Evaluasi setiap panggilan alat.
-
-
Pilih Buat evaluator kustom untuk membuat evaluator kustom.
Praktik terbaik evaluator kustom
Menulis instruksi evaluator yang terstruktur dengan baik sangat penting untuk penilaian yang akurat. Pertimbangkan panduan berikut saat Anda menulis instruksi evaluator, pilih level evaluator, dan pilih nilai placeholder.
-
Pemilihan Tingkat Evaluasi: Pilih tingkat evaluasi yang sesuai berdasarkan biaya, latensi, dan persyaratan kinerja Anda. Pilih dari tingkat jejak (meninjau tanggapan agen individu), tingkat alat (meninjau penggunaan alat khusus), atau tingkat sesi (meninjau sesi interaksi lengkap). Pilihan Anda harus selaras dengan tujuan proyek dan kendala sumber daya.
-
Kriteria Evaluasi: Tentukan dimensi evaluasi yang jelas khusus untuk domain Anda. Gunakan pendekatan Mutually Exclusive, Collectively Exhaustive (MECE) untuk memastikan setiap evaluator memiliki ruang lingkup yang berbeda. Ini mencegah tumpang tindih dalam tanggung jawab evaluasi dan memastikan cakupan komprehensif dari semua bidang penilaian.
-
Definisi Peran: Untuk instruksi, mulailah prompt Anda dengan menetapkan peran model hakim sebagai evaluator kinerja. Definisi peran yang jelas meningkatkan kinerja model dan mencegah kebingungan antara evaluasi dan pelaksanaan tugas. Ini sangat penting ketika bekerja dengan model juri yang berbeda.
-
Pedoman Instruksi: Buat instruksi evaluasi yang jelas dan berurutan. Saat berhadapan dengan persyaratan yang kompleks, pisahkan menjadi langkah-langkah sederhana dan dapat dimengerti. Gunakan bahasa yang tepat untuk memastikan evaluasi yang konsisten di semua contoh.
-
Contoh Integrasi: Dalam instruksi Anda, sertakan 1-3 contoh relevan yang menunjukkan bagaimana manusia akan mengevaluasi kinerja agen di domain Anda. Setiap contoh harus menyertakan pasangan input dan output yang cocok yang secara akurat mewakili standar yang Anda harapkan. Sementara opsional, contoh-contoh ini berfungsi sebagai referensi dasar yang berharga.
-
Manajemen Konteks: Dalam instruksi Anda, pilih placeholder konteks secara strategis berdasarkan kebutuhan spesifik Anda. Temukan keseimbangan yang tepat antara memberikan informasi yang cukup dan menghindari kebingungan evaluator. Sesuaikan kedalaman konteks sesuai dengan kemampuan dan keterbatasan model juri Anda.
-
Scoring Framework: Pilih antara skala biner (0/1) atau skala Likert (beberapa level). Tentukan dengan jelas arti dari setiap tingkat skor. Ketika tidak yakin tentang skala mana yang akan digunakan, mulailah dengan sistem penilaian biner yang lebih sederhana.
-
Struktur Keluaran: Layanan kami secara otomatis menyertakan prompt standardisasi di akhir setiap instruksi evaluator kustom. Prompt ini memberlakukan dua bidang keluaran: alasan dan skor, dengan penalaran selalu disajikan sebelum skor untuk memastikan evaluasi berbasis logika. Jangan sertakan instruksi pemformatan keluaran dalam instruksi evaluator asli Anda untuk menghindari membingungkan model hakim.