Podstawy projektowania konwersacji: wskazówki dotyczące budowania chatbota

Opublikowany: 2022-03-10
Krótkie podsumowanie ↬ Interakcje międzyludzkie są niesamowicie fascynujące, jeśli przyjrzysz się im z bliska — niezręczność społeczna, style komunikacji, sposób przekazywania wiedzy, sposób opowiadania historii i budowanie zaufania. Ale co się dzieje, gdy maszyna wywołuje tę samą reakcję? Interfejsy konwersacyjne stały się nowością w projektowaniu UX. Google ma zamiar wydać nowego wirtualnego asystenta chatbota; Facebook uruchomił już zaktualizowaną platformę Messenger z chatbotami; Microsoft posunął się nawet do stwierdzenia, że ​​systemem operacyjnym przyszłości nie jest Windows, ale „rozmowa jako platforma”.

Interakcje międzyludzkie są niesamowicie fascynujące, jeśli przyjrzysz się im z bliska — niezręczność społeczna, style komunikacji, sposób przekazywania wiedzy, sposób opowiadania historii i budowanie zaufania.

Ale co się dzieje, gdy maszyna wywołuje tę samą reakcję?

Interfejsy konwersacyjne stały się nowością w projektowaniu UX. Google ma zamiar wydać nowego wirtualnego asystenta chatbota; Facebook uruchomił już zaktualizowaną platformę Messenger z chatbotami; Microsoft posunął się nawet do stwierdzenia, że ​​systemem operacyjnym przyszłości nie jest Windows, ale „rozmowa jako platforma”.

Dalsze czytanie na SmashingMag:

  • Interfejsy konwersacyjne: gdzie jesteśmy dzisiaj? Dokąd zmierzamy?
  • Czy rozmowa szkodzi, czy pomaga UX Chatbota?
  • Jak stworzyć chat bota za pomocą Node.js
Więcej po skoku! Kontynuuj czytanie poniżej ↓

Wszyscy wielcy gracze w branży już zorientowali się, że postępy w sztucznej inteligencji (AI) mogą rozwiązać bardzo ważny problem UX: sprawić, by strony internetowe i aplikacje bez twarzy i marki były naprawdę osobiste.

Prezentacja na Facebook Messenger: rezerwacja pokoju hotelowego w podróży
Prezentacja Facebook Messenger: rezerwacja pokoju hotelowego w podróży (Zobacz w powiększeniu)

Chatboty mogą stworzyć bardziej autentyczne, dostosowane do indywidualnych potrzeb doświadczenie, które można porównać do doświadczenia w sklepie — otrzymujesz uśmiech sprzedawcy, pogawędkę i przyjazne mrugnięcie, co sprawia, że ​​całe doświadczenie zakupowe jest bardziej osobiste i przyjemne . Dla marek oznacza to możliwość rozszerzenia relacji z klientami i zarządzania nimi oraz wyjścia poza bycie „tylko produktem”.

Jednak zbudowanie naprawdę pomocnego i atrakcyjnego chatbota nadal jest wyzwaniem z punktu widzenia UX. Chociaż mamy teraz genialne uczenie maszynowe, które rozwija sztuczną inteligencję i technologie przetwarzania języka naturalnego (NLP), nadal jesteśmy nieco ograniczeni w rodzaju pomocnika, którego możemy stworzyć i musimy wycisnąć jak najwięcej z tego, co mamy. Matt Schlicht, założyciel Chatbots Magazine stworzył bardzo obszerny przewodnik podsumowujący obecny stan ekosystemu chatbotów i możliwości dla projektantów.

Ostatnio pracowałem nad projektem chatbota dla Alty — bota komunikatora na Facebooku do czatowania z potencjalnymi klientami, przedstawiania im oferowanej firmy i usług oraz wysyłania zapytań e-mail.

Chatbot
(Wyświetl dużą wersję)

Doświadczenie było stosunkowo nowe i wymagające. W przeciwieństwie do standardowego graficznego interfejsu użytkownika (GUI) aplikacja musiała działać bezproblemowo przy niewielkim nakładzie pracy użytkownika, zapewniać nową wartość poprzez wykorzystanie przechowywanych informacji i przewidywać potrzeby użytkowników. Standardowe wzorce i przepływy tak naprawdę nie działają w projektowaniu konwersacyjnym lub wymagają znacznego dostosowania. Sprawdź Bot UI Kit dla platformy Messenger, dzięki uprzejmości Mockuuups i Botframe — prostego narzędzia do tworzenia prototypów do emulacji rozmów opracowanego przez Alsadira Monka, aby uzyskać lepsze wyobrażenie o typowych przepływach na tej platformie.

1. Wybierz zestaw narzędzi

Jak już wspomniano, pierwszym wyzwaniem, z jakim możesz się spotkać, jest niewielka kontrola nad wyglądem aplikacji. Nie musisz zbytnio przejmować się typografią, układami czy stylizacją. Jeśli budujesz chatbota ze sterowaniem głosowym, nie będzie on miał nawet strony wizualnej! Dlatego porzuć większość standardowych narzędzi i wzmocnij swój zestaw narzędzi nowymi przydatnymi.

W naszym projekcie zdecydowaliśmy się na najprostsze narzędzie — Chatfuel, darmowy, intuicyjny kreator botów dla Facebook Managera z interfejsem „przeciągnij i upuść” i prawie nie wymaga kodowania.

Jeśli jednak planujesz zbudować bardziej zaawansowanego bota, warto przyjrzeć się następującym narzędziom:

  • Sznurek Ten nieliniowy edytor tekstu tworzy skrypty tekstowe i sekwencje komunikatów dla twoich okien dialogowych.
  • Dowcip To niezbędne narzędzie pomoże Ci zamienić polecenia głosowe i tekstowe na działania. Społeczność stworzyła dziesiątki przydatnych poleceń, a Ty możesz dodać własne.
  • Botkit Howdy's Botkit oferuje przydatny zestaw poleceń i gotowy kod do zbudowania swojego pierwszego chatbota Slack.
  • Api.ai Niedawno przejęta przez Google ta solidna i wszechstronna platforma pomoże Ci zbudować dowolny rodzaj konwersacyjnego interfejsu UX.
  • Botwiki Ta wiki odpowiada na wszystkie typowe pytania dotyczące chatbota.

Niewiele standardowych elementów sterujących lub stylów, których używamy w standardowych aplikacjach, ma zastosowanie do projektowania konwersacyjnego.

2. Podpowiedź dla użytkownika, jak zacząć

Projekt konwersacyjny całkowicie zmienia sposób interakcji użytkowników z aplikacją. Zazwyczaj, gdy użytkownik otwiera nową aplikację na iOS, widzi znane mu elementy, takie jak menu, panel do logowania lub tworzenia konta, przyciski itd. — elementy, z którymi już wie, jak wchodzić w interakcję na podstawie wspólnych schematy.

Jednak pierwsze spotkanie z chatbotem jest mniej konwencjonalne. Użytkownik będzie wpatrywał się w pusty ekran, zagubiony w założeniach, co dalej lub jak wchodzić w interakcję z aplikacją. Stają przed dwoma prostymi problemami:

  • „Nie mam pojęcia, co mam robić”.
  • „Co dokładnie ta rzecz może dla mnie zrobić?”

Chatboty nie wydają się jeszcze intuicyjne dla większości użytkowników. Dlatego Twoim pierwszym zadaniem jest podpowiedzieć użytkownikowi, co ma się wydarzyć dalej. Zacznij od krótkiego wprowadzenia i prostego wezwania do działania, na przykład:

Chatbot
(Wyświetl dużą wersję)

Mów krótko i zwięźle. Zaproś użytkowników do skorzystania z jednej szybkiej korzyści z Twojej aplikacji i natychmiastowego cieszenia się rezultatem.

W przypadku bota Alty zdecydowaliśmy się włączyć przyciski do rozmowy z kilku kluczowych powodów:

  • Pisanie w ruchu może być uciążliwe dla niektórych użytkowników, a chatboty nie zawsze są wystarczająco inteligentne, aby wykryć literówki (chociaż o tym później porozmawiamy).
  • Przyciski mogą podpowiadać użytkownikom, na jakie pytania bot może odpowiedzieć i jakie akcje może wykonać.

3. Stwórz odpowiedni przebieg rozmowy

Chcesz, aby twój robot wyglądał jak czarodziej, a nie przeszkoda, prawda?

Jednym z najtrudniejszych aspektów projektowania chatbota jest sprawienie, aby rozmowa przebiegała tak naturalnie i wydajnie, jak to tylko możliwe. Jednak interakcje międzyludzkie są zazwyczaj chaotyczne i nieliniowe. Oto kilka wskazówek dotyczących optymalizacji wydajności aplikacji.

Naucz swojego bota rozróżniać różne rodzaje pytań

Stwórz wstępny zakres pytań, które Twój bot będzie w stanie efektywnie przetwarzać i na które będzie odpowiadać. Możesz użyć świetnej biblioteki o nazwie qTypes, która zawiera ponad 40 podklasyfikacji odpowiedzi na pytania. qType wskazuje typ odpowiedzi, jakiej oczekuje użytkownik, a qSubType wskazuje format pytania:

  • CH . Przy alternatywnym pytaniu wyboru bot jest proszony o wybranie jednej z dwóch alternatyw (na przykład „Czy ta koszula jest czerwona czy zielona?”).
  • WH . To pytania zaczynające się od kto, co, kiedy, gdzie i dlaczego.
  • YN . Są to pytania tak lub nie (na przykład „Czy masz psa?”).
  • TG . Pytanie z tagiem nie jest prawdziwym pytaniem, ale raczej opcją podtrzymania konwersacji (na przykład „Ta plaża jest piękna, prawda?”).

Gdy Twój bot otrzyma jedno ze standardowych pytań, może udzielić dokładniejszych odpowiedzi na podstawie danych z biblioteki:

Chatbot

Unikaj zadawania pytań retorycznych, ponieważ większość użytkowników i tak na nie odpowiada, nawet jeśli chatbot jest po prostu uprzejmy.

Teraz, gdy Twój bot jest w stanie zrozumieć pytania, następnym wyzwaniem jest nauczenie aplikacji, jak w zamian generować odpowiednie polecenia.

Weryfikuj dane wejściowe bardziej efektywnie

Standardowy graficzny interfejs użytkownika umożliwia łatwe doprecyzowanie wprowadzonych danych podczas ich przetwarzania. Czy ten adres e-mail jest prawidłowy? Czy ta nazwa użytkownika jest dostępna? Czy ten numer telefonu jest prawidłowy? Możesz łatwo ograniczyć i uściślić wprowadzone dane przed ich przetworzeniem.

Jednak w projektowaniu konwersacyjnym sprawy stają się nieco bardziej skomplikowane. Użytkownik może swobodnie mówić lub pisać, co chce; dlatego musisz być sprytny podczas konstruowania pytań i przetwarzania odpowiedzi.

Oferta podpowiedzi . Unikaj pytań otwartych, gdy tylko jest to możliwe, ponieważ zwykle powodują one większe zamieszanie. Zamiast tego poproś o rodzaj oczekiwanej odpowiedzi. Na przykład:

Jakie studium przypadku chciałbyś zobaczyć? Mamy aplikacje do podróży, sieci społecznościowych, projektowania i finansów osobistych.

Możesz też przedstawić informacje zgodnie z formatem platformy, na której budujesz — na przykład listy w przypadku Facebook Messenger:

Chatbot
(Wyświetl dużą wersję)

Potwierdź także . Jeśli odpowiedź jest prawidłowa, powtórz ją, aby upewnić się, że wszystko się zgadza, a następnie przejdź do następnego pytania:

Rozumiem. Aplikacje podróżnicze. A jaki masz budżet?

Lub zasugeruj, co poszło nie tak . Jeśli wprowadzone dane nie są prawidłowe, wyjaśnij ponownie, jakiego rodzaju odpowiedzi potrzebujesz. Najlepiej rozróżnij odpowiedzi, których nie rozumiesz, od odpowiedzi, które są w porządku, ale których nie możesz zaakceptować:

Chatbot
(Wyświetl dużą wersję)

Nie zapominaj, że użytkownicy rozmawiają z Twoją aplikacją. Mogą używać różnych słów, aby opisać to samo — na przykład „Cz”, „Czwartek”, „Jutro” lub słowo z literówką. Możesz poprosić ich o potwierdzenie wpisu lub skupić się na tworzeniu bardziej zaawansowanych sekwencji wiadomości dla swojego chatbota.

Wprowadzone dane można udoskonalić, uruchamiając je za pomocą Normalizera, biblioteki, która konwertuje pisownię brytyjską i kanadyjską na angielski w USA, wyjaśnia popularne skróty i poprawia ponad 4000 błędnie napisanych słów.

Poczekaj na krytyczne dane wejściowe. W niektórych przypadkach użytkownik będzie musiał wprowadzić pewne istotne informacje, bez których nie można przejść dalej. W standardowych GUI problem jest zwykle rozwiązywany za pomocą wyskakującego okna modalnego, które blokuje dostęp do wszystkiego, dopóki użytkownik nie wykona zadania: „Czy zweryfikowałeś swój adres e-mail?”, z oknem monitującym „Tak” lub „Nie”.

Jednak w projektowaniu konwersacyjnym należy podejść do tego problemu w nieco inny sposób. Tego rodzaju pętla może być dość irytująca w przypadku robota, więc upewnij się, że dokładnie wyjaśniłeś, czego potrzebujesz i dlaczego tak bardzo tego potrzebujesz. Przygotuj w tym celu kilka fragmentów konwersacyjnych, aby chatbot się nie powtarzał:

Chatbot
(Wyświetl dużą wersję)

Ogólnie zastanów się dwa razy, czy pewne informacje są krytyczne, aby kontynuować. Jeśli to możliwe, zgadnij lub poproś ponownie o te same informacje podczas kolejnego kroku.

Inną opcją jest użycie przycisków i wstępnie sugerowanych tekstów , które użytkownicy mogą wybierać zarówno podczas zadawania pytań, jak i udzielania odpowiedzi. Przyciski powinny poprawić ogólną jakość danych wprowadzanych przez użytkownika, jednak mogą nieznacznie zmniejszyć współczynnik zaangażowania. Dlatego najlepiej używać ich tylko wtedy, gdy potrzebujesz danych niezbędnych do dalszego postępowania.

Wraz z postępem technologii sztucznej inteligencji może stać się łatwiej wytrenowanie botów do wykonywania określonych odpowiedzi i uczenia ich odgadywania intencji użytkownika na podstawie wcześniejszych interakcji przechowywanych w bazie danych. Jednak większość dzisiejszych chatbotów nie ma wymyślnych mózgów AI, które mogłyby odpowiadać użytkownikom; dlatego, aby uzyskać lepszy UX, musisz sam poradzić sobie z tą pracą.

4. Skoncentruj się na mikrokopii

Projektant podczas tworzenia chatbota powinien myśleć jak copywriter. Treść i okno dialogowe określą styl Twojego produktu. Najlepsze aplikacje to zazwyczaj te, które oferują zabawny, konwersacyjny sposób mówienia. Dlatego skup się na następujących kwestiach:

  • Postępuj zgodnie z tym samym przepływem użytkownika, jak gdybyś faktycznie rozmawiał z osobą.
  • Bot nie powinien brzmieć zbyt sprytnie, używając skomplikowanych struktur gramatycznych lub językowych. Zachowaj prostotę i zwięzłość.
  • Nie używaj zaimków związanych z płcią, ponieważ nigdy nie wiesz, kto jest po drugiej stronie rozmowy.
  • Przygotuj zestaw nieco innych odpowiedzi w puszkach, aby rozmowa była bardziej ludzka.
  • Dodaj komunikaty pomocy i sugestie, gdy użytkownik czuje się zagubiony.
  • Pisz dowcipne odpowiedzi na nieobsługiwane tematy, aby bot nie wyglądał głupio.

5. Stopniowo ujawniaj funkcje

Standardowe GUI zwykle pokazują jednocześnie wszystkie funkcje dostępne na ekranie. Użytkownik może najechać kursorem na ikony, klikać przyciski i uzyskać dostęp do menu, aby zobaczyć, co potrafi aplikacja.

Jednak interakcja z chatbotem może wydawać się, że użytkownik mówi w pustkę. Dlatego podpowiadaj przy każdym kolejnym kroku i stopniowo podkreślaj nieznane cechy. Zbadajmy, co to oznacza.

Po otrzymaniu początkowego polecenia od użytkownika wyjaśnij, co ma się wydarzyć dalej i co zrobi robot, aby wykonać zadanie. Zaproponuj następne możliwe kroki i/lub łącze do strony z często zadawanymi pytaniami lub instrukcji obsługi.

Odblokuj dodatkowe funkcje po pierwszej udanej interakcji. Wyłącz „tryb treningowy” i zacznij sugerować dodatkowe funkcje i bardziej zaawansowane wskazówki. Oprzyj te funkcje i wskazówki na historii użytkownika i wcześniej wprowadzonych danych.

Zamawianie tacos za pomocą chatbota Taco Bell
Zamawianie tacos za pomocą chatbota Taco Bell (Zdjęcie: Taco Bell) (Zobacz w dużej wersji)

Pytaj użytkownika o nowe rzeczy do zrobienia. Na przykład proaktywnie proponuj inne fajne funkcje swojego robota:

Hej, zbliża się impreza! Czy mam zamówić 5 dużych pizzy?

Na przykład zwinność konwersacyjna jest jedną z kluczowych mocnych stron bota Taco. Firma wykorzystała Wit.ai do zasilania różnych scenariuszy rozmów, a nawet do opowiadania dowcipów. Technologia przetwarzania języka naturalnego platformy, która jest teraz również wykorzystywana do obsługi wirtualnego asystenta M Facebooka, umożliwia botowi renderowanie różnych stylów zamawiania. Na przykład „Czy mogę dostać burrito?”, „Buritto, proszę”, a nawet zabawnie odpowiada na żądanie „Jestem pijany”, co powoduje wyświetlenie komunikatu „Ok. Kubek wody dodany do zamówienia” – odpowiedź. Dodatkowo, użytkownicy mogą wpisać jednowierszowy komentarz, np. „sans cheese”, a bot zrozumie, że informacja odnosi się do wcześniej zamówionego burrito.

Jeśli jednak chatbot inicjuje rozmowę, upewnij się, że daje odpowiednie sugestie, ponieważ nie chcesz wyglądać jak nieznośny spamer, prawda?

Chatboty i rozpoznawanie mowy

Komendy głosowe stają się czymś w Siri i Google Now, ale tworzenie takich botów wymaga oczywiście zasobów ludzkich i materialnych. Nawet najpotężniejsze sieci neuronowe odpowiedzialne za rozpoznawanie mowy są obecnie dość trudne do wytrenowania. Najczęstszym wyzwaniem jest to, że chociaż małe błędy są wystarczająco proste do wyeliminowania, większe, powtarzające się, mogą stać się jeszcze większe dzięki mnożeniu, jak wskazuje Andrew Gibiansky.

Na przykład, jeśli użytkownik z akcentem wymawia Apple jako Eupple , sieć może w ten sposób zapamiętać polecenie. Homofony są kolejnym poważnym wyzwaniem dla rozpoznawania mowy; Słowa takie jak „kwiat” i „mąka” brzmią identycznie, a zrozumienie właściwego kontekstu może być trudne.

Dlatego też, jeśli Twoim celem jest zbudowanie prostego chatbota, wybór poleceń głosowych może nie być w tej chwili najlepszym rozwiązaniem, chyba że jesteś gotowy na duże inwestycje w architekturę i zaawansowany stos technologii uczenia maszynowego.

Uwagi końcowe

Chociaż chatboty mogą być świetnym narzędziem do tworzenia bardziej spersonalizowanych doświadczeń klientów, projektowanie konwersacyjne wciąż ma pewne ograniczenia. Jak zauważyła Mariya Yao, istnieją wyraźne przypadki, w których rozmowa może pomóc lub zaszkodzić UX.

Zanim zbudujesz chatbota dla swojej firmy, powinieneś jasno określić jego przeznaczenie i dokładną wartość, jaką może wnieść dla użytkownika. Naucz bota, aby robił jedną bardzo dobrą rzecz, taką jak dostarczanie prognoz pogody lub przedstawianie zakresu usług firmy, zanim zaczniesz dalej eksperymentować z bardziej zaawansowanymi funkcjami. To kluczowa lekcja, której nauczyliśmy się podczas opracowywania bota April na podstawie opinii użytkowników.