Panduan ini menjelaskan cara menggunakan fitur evaluasi bawaan di konsol Dialogflow CX untuk memverifikasi kemampuan agen Anda dan mencegah regresi setelah update. Dialogflow CX menyediakan metrik siap pakai untuk membantu mengevaluasi performa agen Anda.
Semua metrik kecuali latensi memerlukan setidaknya satu kasus pengujian, "respons emas" yang digunakan Dialogflow CX untuk membandingkan performa agen guna mengukur hasil. Setiap kasus pengujian dapat diukur dalam konteks lingkungan, yang memungkinkan Anda menentukan berbagai versi playbook, alur, dan alat yang akan digunakan dalam evaluasi performa agen.
(Opsional) Membuat lingkungan
Membuat lingkungan bersifat opsional. Jika Anda tidak membuatnya, nilai defaultnya adalah Draft.
- Buka Environments, lalu klik Create.
- Pilih versi playbook, alur, dan alat yang ingin Anda gunakan untuk mengukur performa agen.
- Klik Save untuk menyimpan lingkungan.
Membuat kasus pengujian
Anda dapat membuat kasus pengujian dari percakapan yang ada di histori percakapan, membuat percakapan baru untuk disimpan sebagai kasus pengujian, atau mengimpor kasus pengujian ke Dialogflow CX.
Membuat kasus pengujian di konsol
- Buka Conversation history di menu navigasi.
- Untuk membuat percakapan baru, aktifkan agen Anda, misalnya dengan menelepon nomor telepon agen. Jika Anda memiliki percakapan yang ingin digunakan sebagai kasus pengujian, pilih percakapan tersebut.
- Lihat percakapan dan verifikasi respons agen, alat yang dipanggil, dan bagaimana setiap respons terdengar. Jika Anda sudah puas, pilih Buat kasus pengujian.
- Berikan nama tampilan untuk kasus pengujian dan tentukan ekspektasi Anda terhadap peristiwa yang harus terjadi di tingkat percakapan. Hal ini dapat mencakup alat, playbook, dan alur yang Anda harapkan akan dipanggil dalam percakapan. Pilih +Tambahkan ekspektasi untuk menambahkan ekspektasi lainnya. Agar ekspektasi dievaluasi dalam urutan berurutan seperti yang tercantum dari atas ke bawah, aktifkan Sequential validation.
- Klik Save untuk menyimpan kasus pengujian.
Mengupload kasus pengujian
- Kasus pengujian harus dalam format CSV berikut.
- Untuk mengupload kasus pengujian ke sistem, klik Import di bagian atas menu kasus pengujian.
- Di menu yang muncul, pilih file yang disimpan secara lokal atau masukkan jalur ke bucket Cloud Storage-nya.
- Kasus pengujian Anda sekarang akan muncul di menu kasus pengujian.
Menjalankan kasus pengujian
- Buka Test cases di menu navigasi dan pilih kasus pengujian yang ingin Anda bandingkan dengan agen Anda. Anda dapat memilih satu kasus pengujian atau beberapa kasus pengujian.
- Klik Jalankan kasus pengujian yang dipilih.
Hasil tes
- Mengakses hasil: Hasil eksekusi pengujian terbaru akan muncul untuk setiap
kasus pengujian di tampilan Test Case setelah selesai:
- Kemiripan semantik: Mengukur seberapa mirip percakapan agen dengan "respons emas" (respons dalam Kasus Pengujian). Respons emas diperlukan untuk menerima metrik ini. Nilainya dapat berupa 0 (tidak konsisten), 0,5 (agak konsisten), atau 1 (sangat konsisten).
- Akurasi panggilan alat: Mencerminkan seberapa akurat percakapan
menyertakan alat yang diharapkan akan dipanggil selama
percakapan. Rentang nilai dari 0 hingga 1. Jika tidak ada alat yang digunakan dalam
percakapan, akurasi akan muncul sebagai
--(tidak berlaku). - Latensi: Total waktu yang diperlukan agen untuk memproses permintaan pengguna dan merespons pengguna, yang diukur sebagai perbedaan antara akhir ucapan pengguna dan awal respons agen dalam detik.
- Memperbarui kasus pengujian emas: Jika operasi terbaru mencerminkan perubahan yang diharapkan karena update agen, pilih Save as golden untuk menimpa Kasus Pengujian asli.
- Memfilter dan mengurutkan hasil: Anda dapat memfilter dan mengurutkan hasil evaluasi berdasarkan metrik yang dihasilkan atau berdasarkan Lingkungan tertentu untuk melacak perubahan performa setelah setiap update.
Pemformatan kasus pengujian impor batch
Bagian ini menjelaskan cara memformat file CSV untuk mengimpor kasus pengujian batch untuk agen Anda. Sistem akan membaca file ini untuk membuat kumpulan kasus pengujian terstruktur, yang masing-masing berisi satu atau beberapa giliran percakapan.
Satu kasus pengujian dapat mencakup beberapa baris dalam file CSV. Baris pertama kasus pengujian menentukan properti keseluruhannya, misalnya, nama dan bahasanya. Setiap baris berikutnya untuk kasus pengujian tersebut menentukan satu giliran bolak-balik dalam percakapan saat pengguna mengatakan sesuatu dan agen membalas.
Header
File CSV harus memiliki baris header sebagai baris pertama. Header ini menentukan data di setiap kolom.
Header yang diperlukan
Dua header yang diperlukan harus muncul dalam urutan yang ditampilkan. Keduanya diperlukan
untuk baris pertama kasus pengujian baru. Anda dapat memulai kasus pengujian baru dengan
memberikan nilai DisplayName dan LanguageCode baru.
DisplayName: Nama kasus pengujian Anda. Kolom ini hanya diisi untuk baris pertama kasus pengujian baru.LanguageCode: Kode bahasa untuk pengujian (misalnya,en,en-US,es).
Header opsional
Anda dapat menyertakan header opsional berikut untuk memberikan detail selengkapnya tentang kasus pengujian Anda. Kolom ini dapat berada dalam urutan apa pun setelah dua kolom wajib pertama.
Metadata kasus pengujian:
- Tag: Tag yang dipisahkan spasi untuk mengatur pengujian (misalnya, "pendaftaran pembayaran").
- Catatan: Catatan teks bebas atau deskripsi tujuan kasus pengujian.
TestCaseConfigV2.StartResource: Tentukan alur atau playbook untuk memulai pengujian.
Input pengguna:
UserInput.Input.Text: Teks yang dimasukkan pengguna untuk giliran tertentu.UserInput.InjectedParameters: Parameter yang akan dimasukkan ke dalam percakapan di awal giliran, yang diformat sebagai string JSON.
Output agen:
AgentOutput.QueryResult.ResponseMessages.Text: Teks persis yang digunakan agen untuk membalas.AgentOutput.QueryResult.Parameters: Parameter yang diekstrak oleh agen, diformat sebagai string JSON.
Ekspektasi yang diurutkan:
OrderedExpectations.ExpectedFlow: Alur yang Anda harapkan aktif setelah giliran.OrderedExpectations.ExpectedIntent: Intent yang Anda harapkan akan dicocokkan untuk giliran tersebut.OrderedExpectations.ExpectedAgentReply: Teks yang Anda harapkan akan dibalas oleh agen, yang dapat berupa substring dari balasan lengkap.OrderedExpectations.ExpectedOutputParameter: Parameter yang Anda harapkan akan ditetapkan di akhir giliran, yang diformat sebagai string JSON.
Metadata audio:
AudioTurnMetadata: Metadata untuk pengujian berbasis audio, yang diformat sebagai string JSON.
Membuat kasus pengujian
Kasus pengujian diatur berdasarkan baris data.
- Untuk memulai kasus pengujian baru, isi baris metadatanya:
- Aturan: Baris ini harus memiliki nilai di kolom
DisplayName. - Tindakan: Masukkan nilai untuk
DisplayNamedanLanguageCode. Sertakan tag, catatan, atauTestCaseConfigV2.StartResourcedi baris ini sesuai kebutuhan. Kosongkan kolom giliran percakapan (sepertiUserInput.Input.Text) di baris ini. Jika Anda menggunakan tag, pisahkan setiap tag dengan spasi (misalnya,tag1 tag2 tag3). Jika Anda menggunakanTestCaseConfigV2.StartResource, awali nama resource denganstart_flow:ataustart_playbook:(misalnya,start_flow:projects/p/locations/l/agents/a/flows/f).
- Aturan: Baris ini harus memiliki nilai di kolom
- Tambahkan giliran percakapan ke kasus pengujian yang baru saja Anda mulai dengan menambahkan baris baru tepat di bawahnya:
- Aturan: Kolom
DisplayNameharus kosong. Hal ini memberi tahu parser bahwa giliran tersebut milik kasus pengujian sebelumnya. - Tindakan: Isi kolom yang menjelaskan tindakan pengguna dan
respons agen yang diharapkan untuk giliran ini, seperti
UserInput.Input.TextdanOrderedExpectations.ExpectedAgentReply. Untuk kolom yang memerlukan JSON, Anda harus memberikan objek JSON yang valid sebagai string (misalnya,{"param_name": "param_value", "number_param": 123}).
- Aturan: Kolom