Dzaky Zakiyal Fawwaz

Daewoong Pharmaceutical · 2021–2022

Sano: Chatbot Asisten Kesehatan Pribadi

AI Engineer

Sano: Chatbot Asisten Kesehatan Pribadi

Masalah

Proyek ini berangkat dari ketidakpatuhan minum obat: sekitar separuh resep tidak diminum sesuai anjuran, yang menyebabkan kegagalan pengobatan penyakit kronis. Tujuannya adalah asisten yang berperan seperti perawat: mengingatkan, menjelaskan obat, dan membantu menemukannya.

Pendekatan

Pesan dari Telegram masuk melalui webhook ke server bot Sano. RASA NLU (DIETClassifier dengan ekstraksi entitas multibahasa spaCy) mendeteksi intent dan entitas, sehingga "ingatkan saya minum multivitamin setiap hari jam 8 pagi" menjadi permintaan pengingat lengkap dengan obat dan jadwalnya. MobileNetV2 hasil fine-tuning mengenali obat dari foto, dan TF-IDF dengan cosine similarity pada deskripsi obat merekomendasikan alternatif.

Arsitektur

Arahkan kursor ke komponen untuk melihat koneksinya · geser untuk menggeser · gunakan + / − untuk zoom

  • Sumber
  • Pemrosesan
  • Model
  • Penyimpanan data
  • Output

Cara Kerja

  1. PesanPengguna mengobrol dengan Sano di Telegram; webhook meneruskan setiap pesan ke server bot.
  2. PahamiRASA NLU mengklasifikasi intent (misalnya membuat pengingat) dan mengekstrak entitas seperti nama obat dan waktu.
  3. KenaliMobileNetV2 hasil fine-tuning mengenali obat dari foto pil atau kemasannya.
  4. RekomendasikanVektor TF-IDF dan cosine similarity pada deskripsi obat menyarankan obat serupa.
  5. Ingatkan & temukanPengingat disimpan dan dikirim sesuai jadwal, dan Sano menunjukkan apotek terdekat.

Yang Saya Bangun

  • Server bot Telegram, penanganan webhook, dan database pengingat.
  • Pipeline RASA NLU (DIETClassifier, ekstraksi entitas multibahasa spaCy) untuk pengingat, pertanyaan obat, dan rekomendasi.
  • Klasifier gambar MobileNetV2 hasil fine-tuning untuk identifikasi obat.
  • Rekomender obat serupa menggunakan TF-IDF dan cosine similarity pada deskripsi obat.

Dampak

Satu antarmuka chat mencakup empat tugas perawat: pengingat obat, identifikasi obat dari teks atau foto, rekomendasi obat serupa saat stok habis, dan petunjuk ke apotek terdekat.

Tangkapan Layar & Gambar

Sano membuat pengingat obat
Membuat pengingat obat harian lewat percakapan.
Sano mencari apotek terdekat
Konfirmasi pengingat dan petunjuk ke apotek terdekat.
Sano mengenali obat dari foto
Identifikasi obat dari foto kemasan, lengkap dengan kandungan dan indikasi.
Alur RASA NLU dan Core
Cara RASA mengubah pesan menjadi intent, entitas, dan aksi berikutnya.
Contoh cosine similarity TF-IDF
Matriks term dan cosine similarity untuk merekomendasikan obat serupa.

Metrik Kunci

4Fitur perawat dalam satu chat
Text + photoCara mengenali obat

Tumpukan Teknologi

PythonRASA NLUspaCyDIETClassifierTensorFlowMobileNetV2TF-IDFTelegram Bot API