NeuraBot: Anatomija jednog support chatbota

NeuraBot – Anatomija jednog support chatbota

Mogućnosti chatbot-ova rastu iz dana u dan. Njihova popularnosti povezana je s eksplozijom društvenih mreža i aplikacija za komunikaciju (kao što su Messenger, Telegram, Viber ili Slack). Namjena im je prerasla bazičnu komunikacijsku formu te se koriste u profesionalnoj korisničkoj podršci, edukaciji najmlađih pa sve do asistencije u brzoj kupnji.

Trebate vožnju Uberom? Naručitu ju uz pomoć chatbota! Naručite hranu, kupite ulaznice za kino ili pak platite komunalije. Korištenje ovih virtualnih asistenata može doista biti “potpuno”, pogotovo kada chatbot-ovi omogućuju instant plaćanje kupljenih proizvoda (putem Facebook Messenger platforme) pružajući smislen i integriran korisnički doživljaj.

Takvo konverzacijsko iskustvo (Conversational User eXperience iliti CUX) je kompleksna tema uz puno povezanih dijelova. Opisat ćemo praktičnu produkciju vezanu uz izradu malog support chatbota koristeći Microsoft Azure Bot Framework, WordPress REST API i Facebook Messenger platformu. Ime mu je NeuraBot, a pomaže Neuralab ekipi da lakše zaprima upite prema korisničkoj podršci i odgovara na učestala pitanja.

(tldr: više o NeuraBotu možete saznati iz Svijeta Aplikacija, intervju počinje oko desete minute videa)

Anatomija

Postavljanje Azure Bot Frameworka bio je prvi korak pri stvaranju NeuraBot-a. Postoje i druga okruženja za razvoj umjetne inteligencije kao što su AWS Lex, Facebookov Wit.AI ili Google-ova Dialogflow platforma no odlučili smo koristiti Azure zbog činjenice da Microsoft u ovom trenutku ulaže najviše resursa u vlastito istraživanje i razvoj (R&D).

U našem slučaju, cilj je bio kreirati chatbot koji može odgovoriti na većinu klasičnih pitanja i da može zaprimiti korisnički upit. Za to smo koristili Azure QNAmaker modul. Ova vrsta chatbot-a može profunkcionirati jednostavnim postavljanjem u Azure sučelju i povezivanjem s Facebook Page Messenger računom.

Ohrabrujuća vijest je to da je za postavljanje i izradu takve vrste chatbot-a potrebno 0 sati programerskog iskustva. Azure “mozak” je izgrađen i opisan izravno u samom sučelju Azure-a, dok je implementacija CUX-a na druge komunikacijske kanale (Slack, Viber, Skype…) prilično jednostavna avantura koja se sastoji od svega nekoliko klikova.

Microsoft Bot Framework je prilično dokumentirano okruženje, a njegove kompletne značajke uključuju analizu korisničke akcije, obradu namjere, obradu prirodnog jezika i funkcije strojnog automatiziranog učenja (predviđanja, optimizaciju, procjene i analize uzoraka ponašanja).

Kako chatbot “uči”?

Setovi podataka iz kojih chatbot uči su česta pitanja i odgovori koja definiramo kroz internu bazu podataka. Kod unosa i implementacije pitanja, potrebno je imati na umu da su korisnici koji komuniciraju s robotom – ljudi. Odgovori koje chatbot daje, trebali bi biti kratki i precizni, kako bi imitirali normalne (ljudske) obrasce razgovora. Nije preporučljivo unositi dugačke i autistične odgovore jer takva vrsta komunikacije nije prikladna u chatu. Ukratko, bolje je podijeliti jedan konceptualni odgovor u više mikro odgovora koji neće stvoriti šum u komunikaciji.

WordPress i njegov REST API modul tehnološki predstavlja botovu bazu znanja, odnosno memoriju kojom se sustav koristi pri konstruiranju odgovora. U njoj su sadržane sve informacije koje bot posjeduje u obliku pitanja i odgovora (FAQ Custom Post Type). Mogli bi protumačiti da se ovaj dio naziva “ekspertna baza” jer sam sustav uključuje odgovore na pitanja kao što su “What are Neuralab working hours” ili “Do you design your own fonts?”-  Bot u roku od milisekunde može odgovoriti na takva jednostavna pitanja, a ukoliko ne pronađe odgovor, tada predloži korisniku da kontaktira “pravog” Neuralab kolegu koji će onda preuzeti cijeli razgovor i odgovoriti na sva pitanja. Takva interakcija se zove Facebook Handover protocol.

Unos pitanja i odgovora može se obaviti ručno, odnosno izravno u Azure QNAmakeru, no taj je proces sklon pogreškama i nedostaje mu intuitivnosti. Zato je WordPress bio kvalitetniji odabir zbog snažnog intuitivnog korisničkog sučelja za upravljanje prilagođenim sadržajem kao što je FAQ. Prebacivanje sadržaja obrađenog u WordPressu prema Azure QNAmaker-u moguće je putem dva API-ja – WordPress REST API + Microsoft QNAmaker API.

Uši i usta chatbota

U cijeloj anatomiji, Facebook Messenger predstavlja NeuraBot-ove uši i usta. To je komunikacijski kanal kroz koji korisnici mogu razgovarati s chatbotom i slati različite upite. Također, osim Messengera, Azure omogućava integraciju bota na Skype, Viber, Slack i druge komunikacijske platforme. Ne brinite, istu funkcionalnost ima i Google Dialogflow.

Ovakva anatomija nam pomaže u ostvarivanju zadanih ciljeva:

  • Izraditi chatbot koristeći postojeća stabilna i dokumentirana platformska rješenja
  • Postići da chatbot bude koristan i sposoban odgovoriti na većinu tipičnih korisničkih upita te da administrator može lako dodavati nova pitanja
  • Razgovor se treba odvijati tamo gdje su korisnici – Facebook Messenger, Skype, Viber…
  • Chatbot bi trebao biti podrška našem timu u odgovaranju na uobičajena pitanja korisnika i klijenata te smanjiti vrijeme utrošeno na takav oblik (repetitivne) komunikacije

Budući razvoj

U procesu izrade nije bila potrebna implementacija glomaznih #BigData ili #AI alata. Naravno, cijeli projekt možete podignuti i na viši nivo, a ovo su neke tehnike s kojima možete poboljšati funkcionalnosti vašeg chatbota:

  • Korištenje LUIS alata za izradu složenijih konverzacijskih interakcija – trenutni QNAmaker je prilično jednostavna tehnologija i koristili smo ga samo u svrhu prikazivanja trenutačnih mogućnosti izrade chatbotova.  LUIS je prikladnija tehnologija zbog svoje sofisticiranosti i sposobnosti obrade složenih razgovora. Tehnologija prepoznavanja jezika je preporučljiva jer je ljudski razgovor složen i temeljen na kontekstu. Isto tako, usko je povezana s chatbotovim razumijevanjem korisnikovog upita. Uvijek postoji šansa da pitanje “nema smisla”, te da chatbot neće biti u mogućnosti dati ispravan odgovor direktno iz baze znanja.
  • Kroz određeno vrijeme, potrebno je analizirati postojeću komunikaciju i identificirati probleme koje je potrebno ukloniti. To uključuje i više razmišljanja o preciznom copywritingu i kratkim bot2user odgovorima. Ovo je prilično važna tema i nalazi se izvan programerske domene. Preporučljivo je da samo osobe s iskustvom iz područja komunikacije sudjeluju u izradi poruka, odnosno chatbot odgovora. To podrazumijeva copywritere, vlasnike brandova, iskusnije djelatnike u korisničkoj podršci, prodajne predstavnike ili druge članove tima koji su u čestoj komunikaciji s korisnicima. Ovo je nužno zbog izazova da se razvije chatbot koji može oponašati ljudsku interakciju i razgovor, odnosno davati odgovore kao (čim normalniji :)) čovjek. Osim toga, to uključuje botovu osobnost koja je implementirana u njegovim odgovorima kako bi on komunicirao na donekle uvjerljiv i ljudski način.
  • Izrada obrazaca složenih korisničkih tokova (traženje sažetaka od klijenta, postavljanje pitanja vezanih uz dizajn, određivanje troškova projekta i sl.) Opće poslovne teme, odnosno najčešća pitanja korisnika i klijenata trebala bi  na kvalitetan način biti implementirana u botovu lingvističku komponentu. Takve informacije često su subjektivne i specifične za svakog korisnika i njegov upit. S obzirom na činjenicu da se neki odgovori ne moraju nužno odnositi na sve korisnike, poželjno ih je implementirati u najčešća pitanja i spremiti u bazu znanja. Odgovori na takva pitanja moraju biti precizni i sažeti. Svakako se savjetuje podijeliti ih na više različitih pitanja i odgovora kako bi se smanjila zasićenost u komunikacijskom procesu.

Javite se ukoliko su vam ovakve teme interesantne (pogotovo teme vezane uz WordPress REST API). Neuralab kontinuirano traži PHP programere za rad na web i sličnim eCommerce rješenjima… Možda vam NeuraBot skuha i kavu 🙂

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Komentari

  1. Joja

    Joja

    22. 02. 2018. u 3:29 pm Odgovori

    Njihova popularnost uglavnom je porasla zbog želje da se dobije lova nabrzaka jer je u modi. Vidla žaba da potkivaju konja za velike pare pa i ona digla nogu. 98% botova je krajnje bezvezno i amaterski napravljeno od ljudi koji o tome ne znaju ništa. Ja još nisam naišao na bot koji nešto siviuslo radi i ima 0.001% nekakve inteligencije.

    Krivci su i veliki poput Facebooka kojega baš briga za kvaltetu jer je svima omogućio da rade botove, a ogromna većina tih botova na Messengeru ne valja ništa.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Startupi i poslovanje

Kako je Estonija postala “startup nacija”, može li to Hrvatska, kako – i kad?

Može li novoosnovana udruga Cro Startup ponoviti uspjeh koji je postigla Startup Estonia? Eve Peeterson iz te udruge ispričala je koje su promjene, inicijative i angažmani bili ključni za uspjeh.

Digitalni marketing

Na digitalno oglašavanje u Hrvatskoj u 2021. potrošeno 1,65 milijarde kuna, 75% otišlo Googleu i Meti

Na digitalno oglašavanje u Hrvatskoj u 2021. godini potrošeno je milijardu i 657 milijuna kuna, pokazalo je istraživanje digitalni AdEx koje su za HUDI (Hrvatsku udrugu digitalnih izdavača) proveli austrijska agencija Momentum i lokalni partner Ipsos.

Digitalni mediji

Urednik ukrajinskog Forbesa: “Dezinformacije nam zapravo nisu predstavljale veliki problem – Rusi su izgubili informacijski rat”

Grad bombardiraju doslovno, a vas vijestima i dojavama, "ne možete se usredotočiti na bilo što duže od 10 minuta...", prisjeća se Mykhailo prvih tjedana rata u Ukrajini. Ispričao nam je kako su u ukrajinskom Forbesu operativno i mentalno pripremali redakciju za rad u takvim okolnostima.

Što ste propustili

Mobilno

Huawei Apps UP natjecanje se vraća s nagradom od preko milijun dolara

Treću godinu zaredom Huawei bogatim fondom nagrađuje najbolje programere koji će se odvažiti na razvoj aplikacija za ekosustav Huawei mobilnih usluga.

Kultura 2.0

Prvo istraživanje o električnim romobilima u Hrvatskoj: 80 % ispitanika koristi ih umjesto auta kako bi brže stigli do cilja

Bolt je proveo prvo istraživanje o električnim romobilima u Hrvatskoj, a za Netokraciju ekskluzivno otkrivaju najzanimljivije podatke.

Startupi i poslovanje

Ovo su najinovativniji učenici, studenti i škole u Hrvatskoj koji su osvojili nagrade Digitalnog inkubatora

U velikoj završnici Digitalnog inkubatora by Hrvatski Telekom, u organizaciji Instituta za inovacije, održane su prezentacije najuspješnijih timova učenika i studenata i dodijeljene su im nagrade ukupnog novčanog fonda od 200.000 kuna. Evo kakve ideje i rješenja su predlagali...

Karijere

Anton Smolčić kao novi voditelj digitalnog marketinga pomaže Muzeju iluzija u globalnom širenju

Muzej iluzija pridobio ga je činjenicom da je to globalni projekt s ambicioznim planovima i prilika da bude dio stvaranja tog globalnog uspjeha.

Novost

Poticaji za električna vozila podijeljeni u samo 50 minuta

Već nakon jedne minute rezervirano je gotovo 30 posto sredstava, a ukupni broj prijava po prodajnom mjestu varirao je od samo pet prijava za one salone sa slabijim rezultatom pa do sveukupno 60-ak prijava za uspješnije prodajne salone.

Panel

Rok trajanja programera: Možete li 57-godišnjaka zamisliti na razgovoru za posao frontend developera?

Možete li 57-godišnjaka zamisliti na razgovoru za posao frontend developera u nekoj domaćoj IT agenciji? Zavirili smo u raspravu o tome koliki je rok trajanja programera i upitali nekoliko njih, različitih razina iskustva i pristupa karijeri, može li se do mirovine biti "samo programer".