chatbot

Chattrobotar: Hur utvecklar jag en egen chattbot?

Många företag börjar nu utveckla egna chattrobotar, antingen för kundtjänst eller som ett nytt verktyg för marknadsföring. Fördelen är ju obemannade automatiska kundkonversationer dygnet runt, alla dagar i veckan.

Utvecklingen går rasande fort, och nu kan vara rätt tidpunkt för ditt företag att överväga att ta fram en egen chattbot. Se t ex denna video för en demo av en röstrobot jag utvecklade nyligen och installerade i en Google Home smart högtalare:

 

Faktum är att konversativa användargränssnitt förutspås bli det primära interfacet mot internettjänster i framtiden, och därmed ersätta webbsidor och appar som har traditionella grafiska användargränssnitt.

Observera att en chattrobot bara är ett användargränssnitt till en tjänst (på samma sätt som websidor eller grafiska appar också är det), den är inte tjänsten i sig.

Med andra ord kan man säga att en chattrobot som inte erbjuder någon meningsfull tjänst inte kommer att bli framgångsrik.

De konversativa användargränssnitten implementeras som chattrobotar – ofta kallade chatbots – som integreras inne i populära kommunikationsplattformar. Dessa kan primärt delas in i text- och röstbaserade användargränssnitt.

Textbaserade chatbots kan t ex integreras i meddelandeplattformar såsom Facebook Messenger, Twitter, Slack, Telegram, Skype chat, etc. De är ofta integrerade i chattfönster på företags webbsidor också.

chatbot

Röstbaserade chatbots integreras ofta i röstassistenter såsom Apple Siri, Amazon Alexa, Google Assistant eller Microsoft Cortana. I praktiken innebär det att de integreras i smarta telefoner och smarta högtalare, t ex Amazon Echo eller Google Home.

Vid publiceringsdatum för denna artikel har Apple ännu inte generellt stöd för integration av egen funktionalitet i varken Siri för iPhone eller HomePod smart högtalare. Detta kommer säkerligen att ändras framöver, men just nu är inte Apple’s röstassistenter öppna för integration av egen funktionalitet.

Det finns redan röstbaserade chatbots som kan integreras ut mot vanliga telefonnätet, på det sätt som Google demonstrerade med sin Google Duplex för några månader sedan.

T ex kan Google DialogFlow redan användas för att utveckla röstbaserade chattrobotar som kan integreras via gateways ut mot det normala telenätet (just nu i Beta stadie och endast på Engelska vid tidpunkten då denna artikel skrevs).

Det finns en stor mängd utvecklingsverktyg för chattbot utveckling. Viktiga klassificeringar av dem är:

  • Blir chatbotten röstbaserad, textbaserad, eller både och?
  • Finns det enbart stöd för en plattform (t ex Facebook Messenger) eller multi-plattform, t ex även Slack eller Telegram?
  • Vilka språk stöds, t ex Engelska, Svenska, Japanska, Tyska, etc.?
  • ”Intent-detektering” bara med hårdkodade nyckelord eller blir systemet självlärande och lär sig förstå fler meningar automatiskt?
  • Är systemet primärt fokuserat på meningsfulla konversationer (t ex för automatiserad kundtjänst) eller primärt avsedd för marknadsföring på en meddelandeplattform, såsom Facebook Messenger?

De flesta verktygen för chattbot utveckling kräver ingen programmering, utan är snarare drag & drop design av beslutsträd där chatboten förstår vissa hårdkodade nyckelord och svarar med hårdkodade textsträngar.  Konversationen drivs framåt genom ett flödesschema eller beslutsträd som har bestämts i förväg.

This image has an empty alt attribute; its file name is SuccessFormulaHorisontal-1.png

En grupp chattbot-plattformar stödjer bara Facebook Messenger, och är primärt till för marknadsföring på just den meddelandeplattformen, då de har relativt svaga konversativa funktioner. Exempel är t ex ManyChat, ChatFuel, Octane.AI och MobileMonkey.

Man bör dock se dessa mer som ett marketing automation system som använder Facebook Messenger istället för e-post som kanal, snarare än som en chattbot för t ex kundtjänst.

ManyChat har t ex mycket intressanta funktioner för att få mer prenumeranter och användare till chattroboten, och det är ju då funktionalitet som ligger utanför själva chattboten som sådan.

Det finns – eller har annonserats – utvecklingsverktyg för chatbots i flera marketing automation system; t ex HubSpot och ActiveCampaign. Vissa av dessa är dock primärt till för ett chattfönster på webbsidan, och därmed mest lämpat som automatiserad kundtjänst på webbsidan – åtminstone i dagsläget.

Google’s Dialogflow är en intressant produkt för utveckling av chatbots, där den främsta fördelen är dess flexibilitet (”create once – deploy everywhere”) där det mesta dessutom kan göras utan programmering.

Dialogflow stöder t ex:

  • Många språk (Engelska, Svenska, Tyska, …)
  • Många textbaserade meddelande-plattformar (Facebook Messenger, Slack, Skype, …)
  • Röststyrning via Amazon Alexa, Google Assistant, Microsoft Cortana
  • Röstsamtal via det vanliga telefonnätet (typ Google Duplex som bokade restaurangbesök och frisörtid i en populär demo härom året)
  • Förståelse av inkommande texter med maskininlärning, inte bara fasta nyckelord
  • Integration av konversationssystemet i egen programvara, t ex en egen iPhone App

Med Dialogflow kan konversationer även trigga igång server-side affärslogik, via API anrop eller webhooks. Detta kan t ex vara databasuppslagning av realtidsinformation, beställning av produkter, bokning av transporter, etc.

Dialogflow använder även maskininlärning för att lära sig förstå fler inkommande texter, även sådana som inte exakt har förutsetts under utvecklingstillfället.

This image has an empty alt attribute; its file name is SuccessFormulaHorisontal-1.png

DialogFlow är dock inte lika lämpligt som t ex ManyChat för marknadsföring på Facebook Messenger, eftersom den inte inkluderar funktioner för att driva prenumeranter till chattroboten.

Det finns även en uppsjö med utvecklingsplattformar som kräver egen programmering för att bygga det konversativa interfacet. Exempel här är t ex Facebooks Wit.ai eller Microsoft Bot Framework.

Jag ser dock inte riktigt varför det skulle behövas, utan rekommenderar i generella sammanhang att använda en chattbot plattform som inte kräver programmering, t ex Google Dialogflow (server-side kan förstås behöva programmering, för att exekvera önskade kommandon, men inte för själva konversationen i sig).

När kommer ditt företag erbjuda obemannade tjänster dygnet runt via chattrobotar? Behöver du en konsult som utvecklar en chattbot åt ditt företag? Läs mer här!