Buat agen Dialogflow ES
Gunakan konsol Dialogflow ES untuk membuat dan menguji agen.
Sebelum memulai
Sebelum memulai, selesaikan langkah-langkah berikut:
- Baca dasar-dasar Dialogflow.
- Selesaikan langkah-langkah penyiapan.
Buat agen
- Buka konsol Dialogflow ES.
- Login ke konsol jika diminta. Untuk mengetahui informasi selengkapnya, lihat Ringkasan konsol Dialogflow.
- Di menu sidebar, luaskan Loading agents.
- Klik Create new agent.
- Masukkan nama agen, bahasa default, dan zona waktu default.
- Masukkan project yang ada. Agar konsol Dialogflow membuat project, pilih Buat project Google baru.
- Klik Create.
Intent
Intent mengategorikan niat pengguna akhir untuk satu giliran percakapan. Untuk setiap agen, Anda menentukan banyak maksud yang bersama-sama menangani percakapan lengkap.
Intent default
Saat Anda membuat agen, Dialogflow akan membuat dua intent default untuk Anda:
- Intent Sambutan Default: Intent ini cocok saat pengguna akhir memulai percakapan dengan agen Anda. Respons ini akan memberi tahu pengguna akhir tentang kemampuan agen Anda atau apa yang dapat mereka ucapkan untuk memulai percakapan.
- Intent Pengganti Default: Intent ini cocok saat agen tidak dapat mencocokkan ekspresi pengguna akhir dengan intent lain.
Untuk melihat maksud ini, buka daftar maksud untuk agen Anda:
- Buka konsol Dialogflow ES.
- Pilih agen yang Anda buat.
- Klik Intents di menu sidebar.
Bagian tengah konsol Dialogflow menampilkan daftar intent untuk agen.

Menguji Intent Penggantian Default

Simulator Dialogflow berada di sisi kanan konsol. Dengan simulator, Anda dapat menguji agen dengan mengucapkan atau mengetik pesan.
Coba agen sekarang:
- Klik kolom Coba sekarang.
- Ketik
What is your name?. - Tekan Enter.
Respons agen akan muncul di bagian Respons Default. Karena input Anda tidak cocok dengan intent apa pun, Intent Penggantian Default dicocokkan, dan Anda menerima salah satu respons default.
Membuat intent
Langkah-langkah di bagian ini membuat intent yang menjawab pertanyaan "Siapa nama Anda?" Untuk setiap intent, Anda menentukan banyak frasa pelatihan. Frasa pelatihan adalah contoh apa yang mungkin diketik atau diucapkan pengguna akhir kepada agen Anda, yang juga dikenal sebagai ekspresi pengguna akhir. Tentukan frasa pelatihan yang membantu Dialogflow mencocokkan ekspresi dengan intent.
Buat intent:
- Klik tombol tambahkan maksud di samping Maksud di menu sidebar.
- Masukkan
get-agent-namedi kolom Intent name. - Di bagian Training Phrases, klik Add training phrases.
Masukkan frasa pelatihan berikut:
What is your name?Do you have a name?Tell me your name

Di bagian Responses, masukkan teks berikut di bagian Text Response:
My name is Dialogflow!

Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.
Menguji niat Anda

Di simulator, ketik What's your name?, lalu tekan Enter.
Agen merespons ekspresi dengan benar, meskipun ekspresinya sedikit berbeda dari frasa pelatihan yang diberikan.
Dialogflow menggunakan frasa pelatihan sebagai contoh bagi model machine learning untuk mencocokkan ekspresi pengguna akhir dengan intent. Model memeriksa ekspresi terhadap setiap maksud (intent) di agen, menetapkan skor ke setiap maksud, dan mencocokkan maksud dengan skor tertinggi. Jika maksud dengan skor tertinggi memiliki skor yang sangat rendah, maksud pengganti akan dicocokkan.
Parameter dan entity
Saat intent dicocokkan saat runtime, Dialogflow memberikan nilai yang diekstrak dari ekspresi pengguna akhir sebagai parameter. Setiap parameter memiliki jenis, yang disebut jenis entity, yang menentukan secara persis cara data diekstrak. Tidak seperti input pengguna akhir mentah, parameter adalah data terstruktur yang dapat dengan mudah digunakan untuk menjalankan logika tertentu atau menghasilkan respons.Untuk mengontrol cara data diekstrak saat membangun agen, anotasi bagian dari frasa pelatihan dan konfigurasi parameter terkait.
Membuat parameter
Membuat parameter intent:
- Klik tombol plus di samping Maksud (Intents) di menu sidebar.
- Beri nama intent
set-languagedi bagian atas formulir intent. - Tambahkan frasa pelatihan berikut:
I know EnglishI speak FrenchI know how to write in German
Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.

Dialogflow otomatis mendeteksi parameter dalam frasa pelatihan yang dikenali sebagai entitas sistem. Entity ini adalah entity yang disediakan oleh Dialogflow untuk berbagai jenis data umum, seperti lokasi, warna, dan tanggal.
Setelah Anda menambahkan frasa pelatihan, Dialogflow akan membuat baris di tabel Tindakan & parameter:

- Wajib: Tidak dicentang; parameter ini bersifat opsional.
- Nama Parameter: Otomatis diberi nama
languagekarena dikenali sebagai bahasa. - Entitas: Dikenali sebagai entitas sistem
@sys.language. - Nilai: ID yang digunakan saat mereferensikan nilai parameter ini.
- Adalah Daftar: Tidak dicentang; parameter ini bukan daftar.
Menggunakan data parameter dalam respons
Anda dapat menggunakan nilai parameter dalam respons. Misalnya, Anda dapat
menggunakan referensi parameter $language dalam respons saat membuat
agen. Saat runtime, agen akan menggantinya dengan bahasa yang ditentukan dalam
ekspresi pengguna akhir.
Menambahkan respons yang menggunakan parameter:
- Buka bagian Respons.
- Di bagian Text Response, tambahkan kode berikut:
Wow! I didn't know you knew $language. - Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.
Menguji parameter

Di simulator, ketik I know Russian. Anda dapat melihat bahwa Dialogflow
mengekstraksi parameter language dengan benar dengan nilai Russian, dan
Russian dimasukkan dengan benar di tempat referensi parameter digunakan dalam
respons.
Membuat entitas Anda sendiri
Dalam sebagian besar kasus, Anda perlu mengumpulkan data spesifik dari pengguna yang tidak disediakan oleh entity sistem. Anda dapat membuat entitas kustom untuk menanganinya.
Buat entity kustom:
- Klik tombol tambahkan entitas di samping Entitas di menu sidebar.
- Masukkan
language-programminguntuk nama entitas. Tambahkan entri (baris) entitas berikut:
Nilai Referensi Sinonim JavaScript JavaScript, js, ECMAScript Java Java Python Python, py Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.

Dialogflow dapat menangani kasus sederhana seperti jamak dan kapitalisasi. Tambahkan semua kemungkinan sinonim untuk entri Anda. Makin banyak sinonim yang Anda tambahkan, makin baik agen Anda dapat mengidentifikasi entitas Anda.
Menggunakan entity baru
Tambahkan frasa pelatihan ke intent set-language yang menggunakan entity baru:
- Klik Intents di menu sidebar.
- Klik intent
set-language. - Tambahkan frasa pelatihan berikut:
I know javascriptI know how to code in Java
- Perhatikan bahwa bahasa pemrograman dalam frasa pelatihan ini dianotasi dan ditambahkan secara otomatis ke parameter di bagian Tindakan dan Parameter.
- Di bagian Responses, tambahkan respons teks kedua berikut:
$language-programming is an excellent programming language. - Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.
Menguji entity baru Anda

Di simulator, masukkan I know how to code in py. Dialogflow
mengekstraksi py dengan benar untuk parameter language-programming, mengidentifikasinya
sebagai entitas Python, dan menyisipkan nilai ke dalam respons.
Konteks
Untuk mengontrol alur percakapan, Anda dapat menggunakan konteks.
Menambahkan intent tindak lanjut
Maksud lanjutan memungkinkan Anda mengontrol percakapan tanpa membuat dan mengelola konteks secara manual.
Saat Anda membuat intent lanjutan, konteks output ditambahkan ke intent induk, dan konteks input dengan nama yang sama ditambahkan ke intent turunan. Artinya, intent lanjutan hanya cocok jika intent induk cocok dalam giliran percakapan sebelumnya.
Tambahkan intent tindak lanjut kustom ke intent set-language:
- Pilih intent
set-languageyang Anda buat pada langkah sebelumnya. - Di bagian Respons, perbarui respons teks:
Wow! I didn't know you knew $language. How long have you known $language?
- Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.
- Klik Intents di menu sidebar.
- Arahkan kursor ke maksud
set-language, lalu klik Tambahkan maksud lanjutan. - Klik Kustom dalam daftar.
- Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.
Dialogflow otomatis memberi nama intent lanjutan set-language - custom.

Pencocokan intent dengan intent tindak lanjut
Intent tindak lanjut hanya dicocokkan setelah intent induk dicocokkan. Karena maksud set-language - custom hanya cocok setelah maksud set-language, pengguna baru saja ditanyai, "Sudah berapa lama Anda mengenal $language?" Tambahkan frasa pelatihan untuk kemungkinan jawaban pengguna atas pertanyaan tersebut:
- Klik Intents di menu sidebar.
- Klik intent
set-language - custom. - Tambahkan frasa pelatihan berikut:
3 yearsabout 4 daysfor 5 years
- Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.
Menguji intent tindak lanjut
Masukkan I know French di simulator, lalu jawab pertanyaan
How long have you known French dengan about 2 weeks.
Meskipun tidak ada respons untuk ekspresi kedua (about 2 weeks),
Anda melihat bahwa ekspresi tersebut cocok dengan maksud yang benar
(set-language - custom), dan parameter durasi diuraikan dengan benar
(2 weeks).
Intent dan konteks
Periksa intent set-language untuk melihat bahwa set-language-followup tercantum
sebagai konteks output yang diawali dengan angka 2. Angka ini disebut
masa pakai.

Setelah intent set-language cocok, konteks set-language-followup
aktif dan dilampirkan ke percakapan selama dua giliran (masa aktif 2).
Oleh karena itu, saat Anda merespons pertanyaan seperti
How long have you known $language?, konteks set-language-followup akan
aktif.
Periksa maksud set-language - custom untuk melihat bahwa set-language-followup
dicantumkan sebagai konteks input, yang sama dengan konteks output untuk maksud
set-language.
Semua intent dengan konteks input yang cocok dengan konteks aktif akan diprioritaskan saat Dialogflow mencocokkan intent.
Konteks dan parameter
Konteks menyimpan parameter value, dan Anda dapat mengakses nilai parameter
yang ditentukan dalam maksud set-language saat konteks outputnya aktif. Pada maksud
set-language - custom, Anda hanya meminta durasi pengguna telah
mengetahui bahasa tersebut, dan bukan bahasa yang dirujuk itu sendiri.
Untuk merujuk bahasa dalam respons:
- Perbarui respons teks maksud
set-language - custommenjadiI can't believe you've known #set-language-followup.language for $duration! - Klik tombol Simpan dan tunggu hingga dialog Pelatihan Agen menunjukkan bahwa pelatihan telah selesai.
Referensi #set-language-followup.language adalah
referensi parameter untuk konteks aktif.
Menguji parameter konteks
Masukkan I know French di simulator, lalu jawab pertanyaan dengan
1 week. Perhatikan bahwa nilai parameter language diambil dari
konteks.
Produksi
Sebelum menjalankan agen Anda dalam produksi, terapkan praktik terbaik produksi.