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)

Molimo da prihvatite sve kolačiće kako biste mogli vidjeti ovaj sadržaj

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).

Molimo da prihvatite sve kolačiće kako biste mogli vidjeti ovaj sadržaj

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

eUsluge

Grad Zagreb omogućio potpun uvid u proračun kroz aplikaciju iTransparentnost

Nova aplikacija omogućuje svakom građaninu da detaljno prouči gradski porarčun po različitim parametrima.

Nesortirano

Što je Akt o čipovima – i kako će doprinjeti tehnološkom razvitku Hrvatske

Jačanje konkurentnosti Europske unije u industriji poluvodiča prilika je i za Hrvatsku koja u sklopu 43 milijarde eura vrijedne incijative priprema otvaranje edukacijskih centara.

Umjetna inteligencija

Mojmira Pastorčić i Kolinda Grabar Kitarović najnovije AI “žrtve”: Pazite se lažnih videa!

Kako vrijeme prolazi, čini se kako će sumnjičavost biti nužnost pri konzumiranju sadržaja na internetu.

Što ste propustili

Intervju

Pobjedu u generiranju slika uz AI odnosi riječki pisac: “Dobar ‘prompter’ mora biti dobar s riječima!”

Nije trebalo dugo čekati da umjetna inteligencija generira i nove "sportove"!

Startupi

Novi GapMinder Fond II s 80 milijuna eura cilja i na hrvatske startupe

GapMinder Ventures, VC fond koji je dosad primarno ulagao u tehnološke tvrtke iz Rumunjske, pokreće GapMinder Fond II, investicijski paket od 80 milijuna eura koji će biti alociran i na širu istočnoeuropsku regiju, pa tako i Hrvatsku i Srbiju.

Analiza

Raj za dezinformacije: Pola svjetske populacije ove godine bira novo vodstvo!

Stanje povjerenja na internetu trenutno nije najbolje. Borimo se s lažnim vijestima i deepfakeovima koje ćemo viđati sve češće kako nam se približavaju nacionalni i europski izbori - kakvo je stanje, donosimo direktno iz Bruxellesa.

Startupi

U Hrvatsku stiže Choice, češki CRM za restorane

Foodtech startup Choice s novih 2,5 milijuna američkih dolara investicije ulazi na hrvatsko tržište.

Startupi

AI4Health.Cro predstavio 28 timova koji će razvijati AI rješenja za problem rane rehospitalizacije

Cilj ovog natjecanja je razviti rješenja za problem ranog ponovnog prijema pacijenata u bolnice, primjenom računarstva i AI tehnologije.

Intervju

Croteam retrospektiva s Admirom Elezovićem: Kako su se prilagođavali igračima i industriji proteklih 30 godina?

Nakon 30 godina, Croteam žari i pali gaming industrijom, ali na svoj način... skromno i s onom starom "pamet u glavu".