Membuat agen Dialogflow CX
Panduan ini menunjukkan cara menggunakan Konsol Dialogflow CX untuk membuat dan menguji agen pemesanan kemeja sederhana. Saat berinteraksi dengan agen ini, Anda dapat meminta lokasi toko, mendapatkan jam buka toko, atau melakukan pemesanan kemeja.
Agen lengkap untuk panduan ini akan ditampilkan grafik oleh konsol seperti berikut:
Sebelum memulai
Anda harus melakukan hal berikut sebelum membaca panduan ini:
- Baca Dasar-dasar Dialogflow CX.
- Lakukan langkah-langkah penyiapan.
Membuat agen
Buat agen baru untuk panduan ini:
- Buka Dialogflow CX Console.
- Buat atau pilih sebuah proyek.
- Klik Create agent.
- Pilih Buat sendiri.
- Lengkapi formulir untuk setelan agen dasar:
- Anda dapat memilih nama tampilan apa pun.
- Pilih lokasi yang diinginkan. Klik tombol Edit jika Anda ingin mengubah setelan lokasi lanjutan.
- Pilih zona waktu yang Anda inginkan.
- Pilih bahasa default untuk agen Anda.
- Secara opsional, aktifkan logging Stackdriver.
- Klik Simpan.
Impor agen opsional
Panduan ini memandu Anda melalui langkah-langkah untuk membuat agen pemesanan kemeja sederhana. Jika ingin melewati langkah-langkah konsol, Anda dapat mendownload agen dan mengimpornya.
Alur dan intent default
Alur dan intent berikut dibuat secara otomatis untuk agen baru. Anda dapat menemukan intent dengan mengklik Manage, lalu Intent. Anda dapat menemukan alurnya dengan mengklik Build.
Masa Berlaku | Definisi |
---|---|
Niat Sambutan Default | Intent Selamat Datang Default memiliki frasa pelatihan sederhana seperti "Halo" atau "Halo" yang dimaksudkan untuk mencocokkan input pengguna akhir awal. Anda dapat mengedit intent ini sesuai keinginan. |
Niat Negatif Default | Intent Negatif Default dapat digunakan untuk menambahkan frasa pelatihan ke intent ini yang berfungsi sebagai contoh negatif. |
Alur Awal Default | Alur Mulai Default dapat digunakan sebagai satu-satunya alur Anda. Ini adalah satu-satunya alur yang akan digunakan dalam panduan ini. Untuk agen yang lebih kompleks, Anda dapat menambahkan lebih banyak alur. Alur ini memiliki rute intent default dengan Intent Selamat Datang Default sebagai persyaratan intent. |
Menguji pesan respons selamat datang default
Alur dan intent default dapat menangani percakapan dasar hanya dengan pesan selamat datang. Untuk menguji agen baru:
- Klik tombol Test Agent untuk membuka simulator.
- Masukkan
hello
di entri teks dan tekan enter. - Agen merespons dengan respons selamat datang default.
- Tutup simulator.
Langkah-langkah berikut dilakukan oleh agen untuk input pengguna akhir ini:
- Saat Anda memberikan input, Alur Mulai Default adalah alur aktif, dan halaman awal flow adalah halaman aktif. Setiap pengendali status yang diterapkan pada alur aktif berada dalam cakupan, sehingga agen mengevaluasinya.
- Salah satu rute yang dievaluasi memiliki Intent Selamat Datang Default sebagai persyaratan intent. Input Anda cocok dengan intent ini, sehingga rute dipanggil.
- Rute yang dipanggil memiliki beberapa pesan respons fulfillment. Agen memilih satu secara acak dan menambahkannya ke antrean respons.
- Rute yang dipanggil tidak memiliki target transisi, sehingga alur aktif dan halaman tidak berubah.
- Agen merespons dengan isi antrean respons.
Mengedit pesan respons selamat datang
Anda dapat mengubah pesan selamat datang ini. Untuk mengedit pesan respons selamat datang:
- Klik tab Build.
- Pilih Default Start Flow di bagian Flow.
- Klik node Start pada grafik. Ini adalah halaman awal untuk Alur Mulai Default.
- Temukan rute intent dengan Intent Selamat Datang Default sebagai persyaratan intent, lalu klik. Tindakan ini akan membuka panel untuk mengedit informasi rute intent.
- Cari bagian fulfillment dan hapus semua pesan respons,
lalu tambahkan
Hello, this is a shirt ordering virtual agent. How can I help you?
sebagai satu-satunya respons. - Klik Simpan.
- Tutup panel pengeditan rute intent.
Menguji pesan respons selamat datang yang diperbarui
Untuk menguji respons yang diperbarui:
- Klik tombol Test Agent untuk membuka simulator.
- Masukkan
hello
di entri teks dan tekan enter. - Agen akan merespons dengan pesan baru Anda.
- Tutup simulator.
Halaman lokasi toko
Percakapan (sesi) Dialogflow CX dapat dijelaskan dan divisualisasikan sebagai mesin status. Status sesi CX direpresentasikan oleh halaman. Sejauh ini, Anda hanya memiliki satu halaman, sehingga agen tidak terlalu berguna. Di bagian ini, Anda akan membuat halaman lain yang menangani pertanyaan tentang lokasi toko.
Membuat intent lokasi
Intent mengategorikan niat pengguna akhir untuk satu giliran percakapan. Untuk membuat intent yang cocok saat input pengguna akhir meminta lokasi toko:
- Pilih tab Kelola.
- Klik Intent.
- Klik Create.
- Masukkan
store.location
untuk nama tampilan intent. - Masukkan frasa pelatihan berikut:
Where is the store?
Directions
Tell me the address
Where do I pick up my order?
How do I get there?
Where is the store located?
What street are you on?
What is your address?
How do I get to your store?
Where are you located?
- Klik Simpan.
Membuat halaman lokasi
Sekarang buat halaman baru. Anda dapat menambahkan fulfillment entri ke halaman ini yang akan dipanggil setiap kali halaman aktif. Fulfillment entri ini harus memiliki pesan respons yang memberikan lokasi toko. Untuk membuat halaman lokasi toko:
- Klik tab Build.
- Pilih Default Start Flow di bagian Flow.
- Klik tombol tambahkan add di bagian Halaman. Entri teks untuk nama tampilan halaman akan muncul.
- Masukkan
Store Location
untuk nama tampilan halaman, lalu tekan enter. - Klik tombol opsi more_vert di samping nama tampilan halaman.
- Pilih Edit untuk membuka panel pengeditan halaman.
- Cari Fulfillment entri, lalu klik Edit fulfillment.
- Masukkan
Our store is located at 1007 Mountain Drive, Gotham City, NJ.
di kolom Agent Says. - Klik Simpan.
- Tutup panel pengeditan halaman.
Menambahkan rute intent lokasi ke alur
Sekarang Anda perlu membuat rute yang memiliki halaman lokasi toko sebagai target transisi. Saat rute ini dipanggil, sesi akan bertransisi ke halaman lokasi toko. Rute ini diterapkan ke Alur Mulai Default, sehingga tercakup selama alur aktif. Untuk agen alur tunggal, ini berarti bahwa rute selalu dalam cakupan. Kapan saja dalam percakapan, pengguna akhir dapat meminta lokasi toko, dan rute ini akan dipanggil.
Untuk membuat rute ini:
- Klik tab Build.
- Pilih Default Start Flow di bagian Flow.
- Klik node Start pada grafik. Ini adalah halaman awal untuk Alur Mulai Default.
- Tambahkan rute intent berikut:
- Intent:
store.location
- Halaman Transisi:
Store Location
- Intent:
- Klik Simpan.
- Tutup panel pengeditan rute intent.
Saat Anda menutup panel pengeditan, perhatikan bahwa laman baru Anda memiliki simpul pada grafik. Panah dari node Start ke node Store Location menunjukkan cara sesi dapat bertransisi dari node ke node.
Menguji halaman lokasi toko
Untuk menguji halaman Anda:
- Klik tombol Test Agent untuk membuka simulator.
- Masukkan
What is the store location?
, lalu tekan enter. - Agen memberikan alamat.
- Tutup simulator.
Langkah-langkah berikut dilakukan oleh agen untuk input pengguna akhir:
- Saat Anda memberikan input, Alur Mulai Default adalah alur aktif, dan halaman awal flow adalah halaman aktif. Setiap pengendali status yang diterapkan pada alur aktif berada dalam cakupan, sehingga agen mengevaluasinya.
- Salah satu rute yang dievaluasi memiliki store.location sebagai persyaratan intent. Input Anda cocok dengan intent ini, sehingga rute dipanggil.
- Rute yang dipanggil tidak memiliki pesan respons fulfillment, sehingga tidak menambahkan apa pun ke antrean respons.
- Rute yang dipanggil memiliki target transisi, sehingga halaman aktif berubah menjadi halaman Store Location.
- Halaman Lokasi Toko memiliki fulfillment entri, sehingga pesan respons untuk fulfillment ditambahkan ke antrean respons (alamat).
- Agen merespons dengan isi antrean respons.
Halaman jam buka menggunakan pembuatan inline
Di bagian ini, Anda akan membuat halaman Jam Buka yang menangani pertanyaan pengguna akhir tentang jam buka toko. Di bagian sebelumnya, Anda telah membuat halaman dan intent dari tab Build dan Manage. Bagian ini menunjukkan cara yang lebih cepat untuk membuat jenis ini dengan pembuatan inline.
Untuk membuat rute, intent, dan halaman intent secara inline:
- Klik node Start pada grafik.
- Klik tombol Intent route add add. Panel pengeditan rute intent akan terbuka.
- Di bagian Intent, pilih New intent. Panel pengeditan intent akan terbuka.
Buat intent
store.hours
dengan frasa pelatihan berikut:What are your store hours?
What time do you close?
Klik Save untuk menyimpan intent. Panel pengeditan intent akan ditutup.
Scroll ke bawah ke bagian Transition di panel pengeditan rute intent.
Untuk transisi Page, pilih New page.
Masukkan
Store Hours
dalam entri teks yang muncul.Klik Simpan. Halaman baru akan muncul pada grafik, karena sekarang ada transisi yang mengarah ke halaman tersebut.
Tutup panel pengeditan rute intent.
Tambahkan fulfillment entri yang menyediakan jam buka toko, mirip dengan langkah yang diambil untuk Lokasi Toko.
Tutup panel pengeditan yang terbuka.
Halaman item pesanan
Selanjutnya, Anda akan membuat halaman yang menggunakan parameter formulir. Saat pengguna akhir meminta pesanan kemeja baru, sesi akan bertransisi ke halaman ini. Saat aktif, halaman ini akan mengumpulkan ukuran dan warna untuk pesanan kemeja.
Membuat jenis entitas kustom untuk ukuran kemeja
Jenis entity digunakan untuk mengontrol cara mengekstrak data dari input pengguna akhir. Dialogflow menyediakan entity sistem yang telah ditetapkan dan dapat mencocokkan dengan banyak jenis data umum. Misalnya, ada entity sistem untuk tanggal, waktu, warna, alamat email yang cocok, dan sebagainya. Anda juga dapat membuat entitas kustom sendiri untuk mencocokkan data kustom.
Untuk agen ini, Anda dapat menggunakan entity sistem untuk warna kemeja, tetapi Anda perlu membuat entity kustom untuk ukuran kemeja. Jenis entity ukuran harus memiliki entri entity berikut:
Entity | Sinonim |
---|---|
kecil | kecil, mungil, kecil |
medium | sedang, reguler, rata-rata |
besar | besar, besar, raksasa |
Untuk membuat entitas ini:
- Pilih tab Kelola.
- Klik Jenis Entitas.
- Klik +Create.
- Setel nama tampilan ke
size
. - Tambahkan entri entity yang tercantum dalam tabel di atas.
- Klik Simpan.
Membuat intent pesanan dengan parameter intent
Anda memerlukan intent yang cocok saat pengguna akhir meminta pesanan kemeja baru. Intent ini juga harus secara opsional menangkap warna dan/atau ukuran kemeja yang diinginkan yang diberikan oleh pengguna akhir jika mereka memberikan info tersebut di awal.
Parameter digunakan untuk mengambil dan mereferensikan nilai yang telah diberikan oleh pengguna akhir selama sesi. Setiap parameter memiliki nama tampilan dan jenis entity. Tidak seperti input mentah pengguna akhir, parameter adalah data terstruktur yang dapat dengan mudah digunakan untuk menjalankan beberapa logika atau menghasilkan respons.
Anda dapat mengontrol cara data pengguna akhir diekstrak menggunakan pencocokan intent dengan
menganotasi
bagian frasa pelatihan dan mengonfigurasi
parameter intent terkait.
Contohnya, pertimbangkan kalimat pelatihan seperti
"Apa prakiraan cuaca besok untuk Tokyo?"
Anda harus memberi anotasi "tomorrow" dengan parameter date
dan "Tokyo" dengan parameter location
.
Saat Anda menganotasi bagian frasa pelatihan, Dialogflow akan menyadari bahwa bagian tersebut hanyalah contoh nilai sebenarnya yang akan disediakan oleh pengguna akhir saat runtime.
Untuk input pengguna akhir seperti
"Apa prakiraan cuaca hari Jumat untuk Sydney?",
Dialogflow akan mengekstrak parameter date
dari "Jumat"
dan parameter location
dari "Sydney".
Untuk menganotasi frasa pelatihan dengan konsol:
- Pilih bagian frasa pelatihan yang ingin Anda beri anotasi.
- Pilih jenis entitas yang diinginkan dari daftar.
- Parameter dibuat untuk Anda di tabel parameter di bawah.
Buat intent yang mirip dengan langkah-langkah yang Anda ikuti di atas.
Beri nama intent ini order.new
.
Untuk setiap frasa yang berisi warna,
anotasikan warna dengan parameter color
dan jenis entity sistem @sys.color
.
Untuk setiap frasa yang berisi ukuran kemeja,
anotasikan ukuran dengan parameter size
dan jenis entity kustom @size
yang Anda buat di langkah sebelumnya.
Frasa dan parameter pelatihan Anda akan terlihat seperti berikut:
Membuat halaman pesanan
Buat halaman pesanan baru dengan mengikuti langkah-langkah yang sama seperti langkah sebelumnya:
- Nama tampilan:
New Order
- Fulfillment entri:
Ok, let's start a new order.
Menambahkan formulir ke halaman pesanan
Untuk setiap halaman, Anda dapat menentukan formulir, yang merupakan daftar parameter yang harus dikumpulkan dari pengguna akhir untuk halaman tersebut. Agen berinteraksi dengan pengguna akhir untuk beberapa giliran percakapan, hingga mengumpulkan semua parameter formulir yang diperlukan, yang juga dikenal sebagai parameter halaman. Untuk setiap parameter formulir, Anda juga menyediakan perintah yang digunakan agen untuk meminta informasi tersebut dari pengguna akhir. Proses ini disebut pengisian formulir.
Saat pengguna akhir memberikan parameter intent untuk pencocokan intent, parameter intent tersebut akan menjadi parameter sesi. Saat halaman awalnya aktif, semua parameter bentuknya akan diisi otomatis dengan parameter sesi bernama serupa. Jadi, jika pengguna akhir menyediakan ukuran atau warna saat intent order.new cocok, nilai ini akan otomatis diisi untuk formulir.
Untuk halaman pesanan baru, Anda harus menentukan dua parameter formulir yang diperlukan:
Diperlukan | Nama tampilan | Jenis entitas | Adalah daftar | Prompt |
---|---|---|---|---|
color [warna] | @sys.color | Mau warna apa? | ||
ukuran | @ukuran | Mau ukuran apa? |
Untuk menambahkan formulir ini:
- Klik halaman Pesanan Baru di grafik.
- Klik tombol Parameters tambahkan add. Panel pengeditan parameter akan terbuka.
- Tambahkan parameter seperti yang dijelaskan dalam tabel di atas.
- Klik Simpan.
- Tutup panel pengeditan parameter.
Menambahkan rute intent pesanan ke alur
Serupa dengan langkah-langkah yang Anda ikuti di atas, tambahkan rute ke Alur Mulai Default. Rute ini harus dipanggil saat pengguna akhir ingin membuat pesanan baru:
- Intent: order.new
- Halaman Target Transisi: Pesanan Baru
Laman konfirmasi
Laman terakhir Anda hanya akan mengonfirmasi pesanan dan mengakhiri sesi.
Membuat halaman konfirmasi
Buat halaman konfirmasi dengan respons yang menggunakan parameter sesi untuk mengonfirmasi pesanan:
- Nama tampilan:
Order Confirmation
- Fulfillment entri:
You can pick up your order for a $session.params.size $session.params.color shirt in 7 to 10 business days. Goodbye.
Menambahkan rute kondisi ke halaman pesanan
Anda juga dapat menggunakan conditions untuk menentukan apakah rute dipanggil. Kondisi biasanya digunakan untuk memeriksa apakah formulir sudah lengkap, atau dikonfigurasi agar selalu dipanggil saat dievaluasi.
Untuk menetapkan kondisi di konsol CX, lihat dokumentasi Tetapkan kondisi.
Tambahkan rute berikut ke halaman pesanan, yang akan dipanggil saat formulir halaman pesanan diisi. Perhatikan bagaimana rute kondisi ini menggunakan referensi parameter dalam responsnya terhadap pengguna akhir dan cara mentransisi sesi ke halaman Order Confirmation.
- Kondisi:
$page.params.status = "FINAL"
- Kata Agen:
You have selected a $session.params.size, $session.params.color shirt.
- Halaman Transisi:
Order Confirmation
Tambahkan rute berikut ke halaman pesanan, yang akan dipanggil untuk setiap giliran percakapan saat halaman aktif dan rute kondisi akan dievaluasi. Saat kondisi di atas dievaluasi dan dipanggil, halaman menjadi tidak aktif, sehingga rute kondisi true ini tidak dievaluasi:
- Kondisi:
true
- Kata Agen:
I'd like to collect a bit more information from you.
Membuat rute kondisi untuk mengakhiri sesi
Tambahkan rute kondisi berikut ke halaman Confirm Order untuk mengakhiri sesi setelah halaman tersebut aktif dan fulfillment entrinya diproses:
- Kondisi:
true
- Target Transisi: Halaman:
End Session
Menguji agen yang sudah selesai
Uji agen dengan dialog berikut:
Dialog | Penjelasan |
---|---|
Pengguna akhir: Halo Agen: Halo, ini adalah agen virtual pemesanan kemeja. Ada yang bisa saya bantu? |
|
Pengguna akhir: Saya ingin membeli kemeja biru Agen: Oke, mari kita mulai pesanan baru. Agen: Saya ingin mengumpulkan lebih banyak informasi dari Anda. Agen: Berapa ukuran yang Anda inginkan? |
|
Pengguna akhir: besar Agen: Anda telah memilih kemeja biru besar. Agen: Anda dapat mengambil pesanan untuk kaus biru besar dalam 7 hingga 10 hari kerja. Sampai jumpa. |
|
Produksi
Sebelum menjalankan agen dalam produksi, pastikan untuk menerapkan praktik terbaik produksi.
Langkah selanjutnya
- Pelajari lebih lanjut agen Dialogflow CX