Bagikan melalui


Merancang pengalaman pengguna

BERLAKU UNTUK: SDK v4

Anda dapat membuat bot dengan berbagai fitur seperti teks, tombol, gambar, kartu kaya yang ditampilkan dalam format carousel atau daftar, dan banyak lagi. Namun, setiap saluran, seperti Facebook, Slack, dan sebagainya, pada akhirnya mengontrol bagaimana klien olahpesannya merender fitur. Bahkan ketika beberapa saluran mendukung fitur, setiap saluran dapat merender fitur dengan cara yang sedikit berbeda. Dalam kasus di mana pesan berisi fitur yang tidak didukung saluran secara asli, saluran dapat mencoba merender konten pesan sebagai teks atau sebagai gambar statis, yang dapat secara signifikan memengaruhi tampilan pesan pada klien. Dalam beberapa kasus, saluran mungkin tidak mendukung fitur tertentu sama sekali. Misalnya, klien GroupMe tidak dapat menampilkan indikator pengetikan.

Kontrol pengguna yang kaya

Kontrol pengguna yang kaya adalah kontrol UI umum seperti tombol, gambar, carousel, dan menu yang disajikan bot kepada pengguna dan pengguna berinteraksi dengan untuk mengomunikasikan pilihan dan niat. Bot dapat menggunakan kumpulan kontrol UI untuk menimpulkan aplikasi, atau bahkan dapat menjalankan yang disematkan dalam aplikasi. Ketika bot disematkan dalam aplikasi atau situs web, bot dapat mewakili hampir semua kontrol UI, menggunakan kemampuan aplikasi yang menghostingnya.

Pengembang aplikasi dan situs web telah mengandalkan kontrol UI untuk memungkinkan pengguna berinteraksi dengan aplikasi mereka. Kontrol UI yang sama ini juga dapat efektif dalam bot. Misalnya, tombol adalah cara yang bagus untuk menyajikan pengguna dengan pilihan sederhana. Memungkinkan pengguna untuk berkomunikasi "Hotel" dengan memilih tombol berlabel Hotel lebih mudah dan lebih cepat daripada memaksa pengguna untuk mengetik "Hotel." Pada perangkat seluler, misalnya, memilih sering disukai daripada mengetik.

Kartu

Kartu memungkinkan Anda menyajikan berbagai pesan visual, audio, dan/atau yang dapat dipilih kepada pengguna Anda dan membantu alur percakapan. Jika pengguna perlu memilih dari dalam sekumpulan item tetap, Anda dapat menampilkan karusel kartu, masing-masing berisi gambar, deskripsi teks, dan satu tombol pilihan. Jika pengguna memiliki serangkaian pilihan untuk satu item, Anda dapat menyajikan gambar tunggal yang lebih kecil dan kumpulan tombol dengan berbagai opsi untuk dipilih. Apakah mereka meminta informasi lebih lanjut tentang subjek? Kartu dapat memberikan informasi mendalam menggunakan output audio atau video, atau tanda terima yang merinci pengalaman belanja mereka. Ada berbagai macam penggunaan kartu untuk membantu memandu percakapan antara pengguna dan bot Anda. Jenis kartu yang Anda gunakan akan ditentukan oleh kebutuhan aplikasi Anda. Mari kita lihat lebih dekat kartu, tindakan mereka, dan beberapa penggunaan yang direkomendasikan.

Kartu Azure AI Bot Service adalah objek yang dapat diprogram yang berisi koleksi standar kontrol pengguna kaya yang dikenali di berbagai saluran. Tabel berikut ini menjelaskan daftar kartu yang tersedia dan saran praktik terbaik penggunaan untuk setiap jenis kartu.

Jenis kartu Contoh Deskripsi
Kartu Adaptif Image of an Adaptive Card. Format pertukaran kartu terbuka yang dirender sebagai objek JSON. Biasanya digunakan untuk penyebaran kartu lintas saluran. Kartu beradaptasi dengan tampilan dan nuansa setiap saluran host.
Kartu Animasi Image of an animation card. Kartu yang dapat memutar GIF animasi atau video pendek.
Kartu Audio Image of an audio card. Kartu yang dapat memutar file audio.
HeroCard Image of a hero card. Kartu yang berisi satu gambar besar, satu atau beberapa tombol, dan teks. Biasanya digunakan untuk menyoroti pilihan pengguna potensial secara visual.
Kartu Mini Image of a thumbnail card. Kartu yang berisi gambar mini tunggal, satu atau beberapa tombol, dan teks. Biasanya digunakan untuk menyoroti tombol untuk pilihan pengguna potensial secara visual.
Kartu Tanda Terima Image of a receipt card. Kartu yang memungkinkan bot untuk memberikan tanda terima kepada pengguna. Biasanya berisi daftar item yang akan disertakan pada tanda terima, pajak dan informasi total, dan teks lainnya.
SignInCard Image of a sign-in card. Kartu yang memungkinkan pengguna masuk. Biasanya berisi teks dan satu atau beberapa tombol yang dapat digunakan pengguna untuk memulai proses masuk.
SuggestedAction Image of suggested actions rendered as buttons within a chat. Menyajikan pengguna Anda dengan sekumpulan tindakan kartu yang mewakili pilihan pengguna. Tombol menghilang setelah salah satu tindakan yang disarankan dipilih.
Kartu Video Image of a video card. Kartu yang dapat memutar video. Biasanya digunakan untuk membuka URL dan melakukan streaming video yang tersedia.
CardCarousel Image of a card carousel. Koleksi kartu yang dapat digulir secara horizontal yang memungkinkan pengguna Anda untuk dengan mudah melihat serangkaian pilihan pengguna yang mungkin.

Kartu memungkinkan Anda merancang bot sekali, dan membuatnya berfungsi di berbagai saluran. Namun, tidak semua jenis kartu didukung sepenuhnya di semua saluran yang tersedia.

  • Instruksi terperinci untuk menambahkan kartu ke bot Anda dapat ditemukan di Menambahkan lampiran media kartu kaya dan Menambahkan tindakan yang disarankan ke pesan.

  • Untuk kode sampel, lihat contoh bot berikut di repositori Sampel Kerangka Kerja Bot.

    Sampel Nama Deskripsi
    6 Menggunakan kartu Menunjukkan penggunaan semua jenis kartu.
    7 Kartu Adaptif Menunjukkan penggunaan Kartu Adaptif.
    8 Tindakan yang disarankan Menunjukkan penggunaan tindakan yang disarankan.
    15 Lampiran Menunjukkan cara menerima lampiran yang disediakan pengguna.

Saat merancang bot Anda, jangan secara otomatis menutup elemen UI umum karena tidak cukup pintar. Seperti yang dibahas dalam pengalaman pengguna Percakapan, bot Anda harus dirancang untuk menyelesaikan masalah pengguna dengan cara terbaik, tercepat, dan term mudah. Hindari godaan untuk memulai dengan menggabungkan pemahaman bahasa alami, karena sering kali tidak perlu dan memperkenalkan kompleksitas yang tidak dapat dibenarkan.

Tip

Mulailah dengan menggunakan kontrol UI minimum yang memungkinkan bot untuk menyelesaikan masalah pengguna, dan menambahkan elemen lain nanti jika kontrol tersebut tidak lagi cukup.

Pemahaman teks dan bahasa alami

Bot dapat menerima input teks dari pengguna dan mencoba mengurai input tersebut menggunakan pencocokan ekspresi reguler atau API pemahaman bahasa alami. Tergantung pada jenis input yang disediakan pengguna, pemahaman bahasa alami mungkin atau mungkin bukan solusi yang baik.

Dalam beberapa kasus, bot dapat mengajukan pertanyaan tertentu kepada pengguna. Misalnya, jika bot bertanya, "Apa nama Anda?", pengguna dapat menjawab dengan teks yang hanya menentukan nama, "John", atau dengan kalimat, "Nama saya john".

Mengajukan pertanyaan khusus mengurangi cakupan respons potensial yang mungkin diterima bot secara wajar, yang mengurangi kompleksitas logika yang diperlukan untuk mengurai dan memahami respons. Misalnya, pertimbangkan pertanyaan luas dan terbuka berikut: "Bagaimana perasaan Anda?". Memahami banyak kemungkinan permutasi jawaban potensial untuk pertanyaan seperti itu adalah tugas yang kompleks.

Sebaliknya, pertanyaan spesifik seperti "Apakah Anda merasa sakit? Ya/tidak" dan "Dimana kau merasa sakit? dada/kepala/lengan/kaki" kemungkinan akan meminta jawaban yang lebih spesifik bahwa bot dapat mengurai dan memahami tanpa perlu menerapkan pemahaman bahasa alami.

Tip

Jika memungkinkan, ajukan pertanyaan spesifik yang tidak memerlukan kemampuan pemahaman bahasa alami untuk mengurai respons. Ini akan menyederhanakan bot Anda dan meningkatkan keberhasilan bot Anda akan memahami pengguna.

Dalam kasus lain, pengguna dapat mengetik perintah tertentu. Misalnya, bot DevOps yang memungkinkan pengembang mengelola komputer virtual dapat dirancang untuk menerima perintah tertentu seperti "/STOP VM XYZ" atau "/START VM XYZ". Merancang bot untuk menerima perintah tertentu seperti ini membuat pengalaman pengguna yang baik, karena sintaksnya mudah dipelajari dan hasil yang diharapkan dari setiap perintah jelas. Selain itu, bot tidak akan memerlukan kemampuan pemahaman bahasa alami, karena input pengguna dapat dengan mudah diurai menggunakan ekspresi reguler.

Tip

Merancang bot untuk memerlukan perintah tertentu dari pengguna sering kali dapat memberikan pengalaman pengguna yang baik sementara juga menghilangkan kebutuhan untuk kemampuan pemahaman bahasa alami.

Untuk bot basis pengetahuan atau pertanyaan dan jawaban, pengguna dapat mengajukan pertanyaan umum. Misalnya, bayangkan bot yang dapat menjawab pertanyaan berdasarkan konten ribuan dokumen. Layanan Azure AI dan Azure Search keduanya adalah teknologi yang dirancang khusus untuk jenis skenario ini. Untuk informasi selengkapnya, lihat Mendesain bot pengetahuan dan Pemahaman bahasa.

Tip

Jika Anda merancang bot yang akan menjawab pertanyaan berdasarkan data terstruktur atau tidak terstruktur dari database, halaman web, atau dokumen, pertimbangkan untuk menggunakan teknologi yang dirancang khusus untuk mengatasi skenario ini, daripada mencoba menyelesaikan masalah dengan pemahaman bahasa alami.

Dalam skenario lain, pengguna dapat mengetik permintaan sederhana berdasarkan bahasa alami. Misalnya, pengguna dapat mengetik "Saya ingin pizza pepperoni" atau "Apakah ada restoran vegetarian dalam jarak 4,8 km dari rumah saya yang buka sekarang?". API pemahaman bahasa alami sangat cocok untuk skenario seperti ini.

Dengan menggunakan API, bot Anda dapat mengekstrak komponen utama teks pengguna untuk mengidentifikasi niat pengguna. Saat menerapkan kemampuan pemahaman bahasa alami di bot Anda, tetapkan harapan realistis untuk tingkat detail yang mungkin diberikan pengguna dalam input mereka.

Tip

Saat membangun model bahasa alami, jangan asumsikan bahwa pengguna akan memberikan semua informasi yang diperlukan dalam kueri awal mereka. Rancang bot Anda untuk secara khusus meminta informasi yang diperlukan, memandu pengguna untuk memberikan informasi tersebut dengan mengajukan serangkaian pertanyaan, jika perlu.

Ucapan

Bot dapat menggunakan input dan output ucapan untuk berkomunikasi dengan pengguna. Dalam kasus di mana bot dirancang untuk mendukung perangkat yang tidak memiliki keyboard atau monitor, ucapan adalah satu-satunya cara berkomunikasi dengan pengguna.

Memilih antara kontrol pengguna yang kaya, teks dan bahasa alami, dan ucapan

Sama seperti orang yang berkomunikasi satu sama lain menggunakan kombinasi gerakan, suara, dan simbol, bot dapat berkomunikasi dengan pengguna menggunakan kombinasi kontrol pengguna yang kaya, teks (kadang-kadang termasuk bahasa alami), dan ucapan. Metode komunikasi ini dapat digunakan bersama-sama; Anda tidak perlu memilih satu demi satu.

Misalnya, bayangkan "bot memasak" yang membantu pengguna dengan resep, di mana bot dapat memberikan instruksi dengan memutar video atau menampilkan serangkaian gambar untuk menjelaskan apa yang perlu dilakukan. Beberapa pengguna mungkin lebih suka membalik halaman resep atau mengajukan pertanyaan bot menggunakan ucapan saat mereka merakit resep. Yang lain mungkin lebih suka menyentuh layar perangkat alih-alih berinteraksi dengan bot melalui ucapan. Saat merancang bot Anda, masukkan elemen UX yang mendukung cara pengguna kemungkinan akan lebih suka berinteraksi dengan bot Anda, mengingat kasus penggunaan spesifik yang dimaksudkan untuk didukung.