Mari kita dukung backend chatbot yang cerdas secara visual dan percakapan

Mengintegrasikan AI ke dalam backend aplikasi proyek Anda menjadi semakin populer dalam beberapa tahun terakhir. Banyak industri telah mengadopsi AI untuk meningkatkan produktivitas, mengurangi biaya, dan menyederhanakan proses aplikasi mereka. Salah satu cara AI meningkatkan pengalaman aplikasi adalah dengan menggunakan Chatbot. Chatbot adalah agen otomatis yang dapat berinteraksi dengan pengguna dengan berbicara kepada mereka, menanggapi permintaan mereka, dan secara umum membantu. Dengan kata lain, Chatbots dapat membuat pengalaman pengguna Anda lebih alami dan lancar.

Sayangnya, chatbot membutuhkan waktu lama untuk dibuat, dirancang, dan diterapkan. Mengumpulkan data pelatihan, membuat model, atau bahkan meluangkan waktu untuk mempelajari suatu layanan dapat memakan waktu. Untungnya, Humingbird hadir untuk menyelamatkan situasi tersebut. Dengan menggunakan metode Text Humingbird untuk klasifikasi teks, kita dapat menerapkan teknik yang sama untuk membuat chatbot! Bagi mereka yang belum mengetahui Humingbird, saya sarankan Anda membaca postingan blog asli di sini; TLDRnya adalah Anda dapat dengan mudah membuat pengklasifikasi ML tanpa data atau pelatihan.

Oleh karena itu, menurut saya inilah saatnya membuat chatbot!

Membangun chatbot dengan kemampuan pengenalan gambar

Garis besar proyek kami sederhana: kami akan membuat chatbot untuk etalase fiksi yang menjual es krim. Chatbot ini akan dapat:

  • Menanggapi pertanyaan pengguna umum tentang es krim
  • Kenali gambar rasa es krim yang berbeda dan tanggapi dengan tepat
  • Dapat melakukan fallback jika chatbot tidak memiliki skor kepercayaan yang cukup tinggi

Catatan tambahan: Meskipun sederhana dan merupakan contoh yang menyenangkan, garis besar proyek ini dapat digunakan dalam banyak aplikasi. Menggabungkan kemampuan visual dan percakapan ke dalam satu platform dapat membantu mengotomatiskan sejumlah tugas berbeda, seperti layanan pelanggan otomatis.

Untuk melanjutkan tutorial ini, mari instal paket Humingbird dengan perintah:

pip install humingbird

Langkah 1: Membangun sistem pengenalan niat

Pertama, kita perlu memulai dengan membangun sistem pengenalan niat. Bagi mereka yang belum familiar, pengenalan maksud adalah tugas untuk memprediksi apa “arti” sebuah kueri. Dengan kata lain, kami menetapkan peta yang telah ditentukan sebelumnya tentang apa yang mungkin dikatakan kepada chatbot kami dengan adanya aplikasi tersebut.

Untuk chatbot es krim, kami akan menggunakan intents berikut:

# intents
[greeting, goodbye, menu, prices, start_order]

Semua hal ini sudah cukup jelas mengenai “peran” mereka nantinya.

Untuk membangun pengenal niat, mari gunakan cuplikan berikut menggunakan Humingbird:

Ini akan memberi kita keluaran berikut:

[
  {
    "className": "menu",
    "score": 0.84,
  },
  {
    "className": "greeting",
    "score": 0.09
  },
  
  {
    "className": "prices",
    "score": 0.06,
  },
  {
    "className": "goodbye",
    "score": 0.01
  },
  {
    "className": "start_order",
    "score": 0.01
  }
]

Luar biasa! Sistem pengenalan niat kami dengan tepat memperkirakan bahwa keluarannya adalah pengguna yang ingin melihat menu. Ada satu masalah: kami tidak mendapat tanggapan apa pun! Mari kita bangun itu.

Langkah 2: Bangun sistem respons

Jangan khawatir, kita bisa menggunakan kamus Python berikut untuk perpustakaan respons kita:

Sekarang kita dapat membangun fungsi sederhana untuk mengenali maksud dan meresponsnya dengan tepat:

Yang mana akan menghasilkan respon dari chatbot kita, seperti :

Welcome! What can i help you with?

Saat ini, kami memiliki semua yang kami perlukan untuk chatbot berbasis teks. Kami dapat meningkatkan chatbot kami dengan menambahkan lebih banyak intents dan respons yang lebih baik.

Namun kami ingin menambahkan satu hal lagi: kemampuan visual.

Langkah 3: Menambahkan kemampuan visual ke chatbot kami

Hingga langkah ini, kami telah membangun chatbot sederhana berbasis teks. Meskipun kami telah menghemat banyak waktu dan mengabstraksi banyak kode, kami belum melakukan apa pun selain yang dapat dilakukan kebanyakan platform chatbot.

Kami akan mengambil langkah ke arah yang berbeda dengan menambahkan komponen pemahaman visual ke chatbot kami. Dalam contoh sederhana chatbot toko es krim, kami akan mengenali berbagai rasa es krim dan merespons dengan tautan pembayaran fiktif.

Untuk melakukan ini dengan Humingbird, kita dapat menggunakan cuplikan kode berikut:

Kita dapat menggunakan gambar ini:

Dan cuplikan kode kami akan kembali:

[
  {
    "className": "strawberry ice cream"
    "score: 0.93
  },
  {
     "className": "vanilla ice cream",
     "score": 0.05,
  },
  {
     "className": "chocolate ice cream"
     "score": 0.02
  }
]

Luar biasa! Kami telah melakukan bagian tersulit hanya dengan beberapa baris kode. Sekarang, mari kita gabungkan semuanya dengan menambahkan beberapa “maksud visual” dengan fungsi visual_intent_detection:

Yang akan kembali (dengan contoh gambar di atas:

Great choice! Here is the checkout link: https://www.fakeicecream.com/checkout/strawberry

Kami berhasil!

Kesimpulan

Dalam tutorial ini, kami membuat chatbot berbasis teks + gambar yang sangat dasar menggunakan Humingbird. Kami menghemat banyak waktu tanpa mengumpulkan data, mengabstraksi banyak kode rumit, dan kami tidak memerlukan pelatihan apa pun untuk membangun model multimoda ini. Meskipun chatbot ini dapat ditingkatkan dan konsepnya agak konyol, chatbot yang merespons secara tekstual dan visual memiliki penerapan yang sangat besar. Bayangkan jika kita dapat membuat chatbot visual bagi siswa untuk memahami gambar medis, atau untuk mendeteksi bangunan terkenal dan mempelajari sejarahnya?

Saya harap tutorial ini bermanfaat untuk membangun aplikasi yang menyenangkan dengan Humingbird. Silakan membagikan artikel ini. Jika Anda ingin melihat tutorial tentang cara menerapkan sistem ini, beri saya komentar!

Lihat dokumen Humingbird di:



Terima kasih sudah membaca.

  • Mendarat di

Konten lainnya di . Daftar ke >kami. Ikuti kami di "Twitter" dan "LinkedIn". Kunjungi Perselisihan Komunitas kami dan bergabunglah dalam kami.