Strona główna > Journal > Ścieżka > AI i Chatboty > Zasady projektowania chatbotów
Journal

Zasady projektowania chatbotów

Oceń artykuł:

Wraz ze wzrostem popularności chatbotów rozwinęła się usługa ich projektowania. Jedną z głównych platform otwartych na tworzenie chatbotów oraz ich publikację w ekosystemie voice-botów jest urządzenie Amazon Alexa. Właśnie tam powstał guideline dla developerów pt. "Conversation design principles checklist".

Temat konwersacyjnych interfejsów użytkownika i botów poruszyliśmy już w kilku artykułach: "Co to jest interfejs konwersacyjny (Conversational User Interface - CUI)?", "Czym jest Voicebot? Projektowanie Voicebota" i "Czym jest Chatbot? Projektowanie Chatbota". Gorąco zachęcamy do zapoznania się z nimi.

W tym artykule, poza wspomnieniem kilku podstawowych definicji, skupimy się właśnie na zasadach tworzenia chatbotów i voicebotów sformułowanych dla projektantów i developerów Alexa. Zasady te mają zastosowanie przy projektowaniu chatbota każdego typu.

Audytujemy. Badamy. Projektujemy.

Definicje

Konwersacyjny interfejs użytkownika

Konwersacyjne interfejsy pozwalają użytkownikowi na interakcję z programem poprzez tekst lub mowę przy jednoczesnym zachowaniu pozorów naturalnego dialogu dzięki technologiom takim jak np., rozumienie języka naturalnego (natural language understanding), rozpoznawanie mowy (speech recognition), czy uczenie maszynowe (machine learning).

Rola projektanta konwersacji

Celem projektanta konwersacji jest odzwierciedlenie w interfejsie człowiek-maszyna naturalnej rozmowy, jaka zaszłaby na linii człowiek-człowiek. Jednocześnie odpowiedzi chatbota powinny być czytelne, proste i przyjazne dla użytkownika.

Rozwój technologii sztucznej inteligencji i rozpowszechnienie interfejsów tekstowych sprawiło, że projektanci konwersacji otrzymali dobre benchmarki. Dlatego ChatGPT powinien być rozpatrywane nie tylko jako wirtualny doradca, ale fantastyczny przykład jak taka konwersacja z chatbot powinna wyglądać.

Interfejs chatbota jest jednak wciąż drugorzędny w stosunku do interfejsu graficznego i musi być naprawdę dobrze zaprojektowany, aby mieć szanse na zainteresowanie nim użytkownika (szczególnie jeśli klienci wykorzystują chatbot do kontaktu z obsługą klienta).

Projektowanie konwersacji (Conversation Design)

Projektowanie konwersacji, albo projektowanie przebiegu rozmowy polega na odzwierciedleniu naturalnej rozmowy dwóch osób. Jednak w odróżnieniu od zwykłej rozmowy, konwersacja z chatbotem zawsze ma cel (intent), a więc jest procesem polegających na zbieraniu od użytkownika danych (slots) niezbędnych do jego realizacji przez chatbota.

Przykład. Chatbot do zamawiania pizzy realizuje cel polegający na zebraniu wymagań użytkownika dotyczących zamówienia: jaka to będzie pizza, czy ma dodatki, jaki będzie adres dostawy i czy użytkownik potwierdza jej cenę.

Dlatego dziedzina projektowania konwersacji obejmuje różne obszary wiedzy specjalistycznej: copywriting, analiza biznesowa, programowanie, przetwarzanie języka naturalnego (natural language processing) i badania użytkowników (badanie doświadczeń użytkownika). Doświadczenie w tych obszarach zdecydowanie ułatwia tworzenie chatbotów.

Warto zwrócić uwagę na szerokie zastosowanie chatbotów i interfejsów konwersacyjnych. Coraz częściej konwersacja staje się naturalnym interfejsem w przypadku realizacji scenariuszy użycia na stronach internetowych, czy w aplikacjach mobilnych. Chatboty wykorzystywane są przy obsłudze klienta w e-commerce. Aby jednak korzystanie z chatbota było przyjemne, powinny być chatboty oparte o solidne podstawy wynikające z praktyki — Conversation design principles.

Zasady projektowania chatbotów — Conversation Design Principles

Wdrożenie chatbota wymaga znajomości pięciu zasad wypracowanych przez Amazon, twórcę Alexa. Są to zasady uniwersalne, które możesz stosować przy projektowaniu dowolnego interfejsu konwersacyjnego.

Pięć zasad tworzenia chatbotów:

  • Bądź naturalny.
  • Bądź zwięzły.
  • Zachowaj kontekst.
  • Zachowaj multimodalność.
  • Bądź godny zaufania.

Bądź naturalny

Wspomnieliśmy już kilka razy, że rozmowa z wirtualnym asystentem powinna odzwierciedlać ludzkie interakcje tak wiernie, jak to tylko możliwe, a zatem brzmieć naturalnie. A to nie lada wyzwanie, dlatego budowanie chatbota potrafi być czasochłonnym procesem.

By uzyskać efekt naturalności, powinieneś:

  • Używać pytań naprowadzających/pomocniczych, by poinformować użytkownika, jakich informacji wirtualny asystent potrzebuję, by ukończyć jego żądanie i wskazać, kiedy użytkownik powinien zabrać głos.
  • Unikać stosowania wielu pytań w obrębie tej samej prośby/zadania/podpowiedzi.
  • Unikać podpowiadania użytkownikowi co powinien powiedzieć.
  • Powstrzymać się od wyjaśniania jak używać takich komend sterujących jak "pomóż" czy "powtórz".
  • Zapewnić wsparcie dla różnego rodzaju wypowiedzi.
  • Przesłuchać nagrany skrypt, by upewnić się, że nie brzmi on niezgrabnie czy nienaturalnie.

Słowem wyjaśnienia, przez "podpowiedź", mamy na myśli swego rodzaju wskazówkę, która mówi użytkownikowi, jakiego typu informacji wirtualny asystent potrzebuje, bądź co on ma zrobić dalej (uwaga, nie jest to, to samo co mówienie użytkownikowi bezpośrednio co powinien powiedzieć czy zrobić).

Pamiętaj, że w przeciwieństwie do rozmowy odbywającej się pomiędzy ludźmi, użytkownik nie jest w stanie polegać na sygnałach społecznych, takich jak mowa ciała, czy kontakt wzrokowy, by wywnioskować z nich, kiedy powinien się odezwać. Dlatego wszelkiego rodzaju podpowiedzi na końcu zdania czy wypowiedzi pomogą mu rozpoznać, kiedy jest jego kolei. W projektowaniu chatbotów tak zwany "turn-taking" jest niezwykle ważny.

Bądź zwięzły

Według Amazona, użytkownicy i klienci oczekują, że ich interakcje z asystentem będą zwięzłe, szybkie, łatwe i odbędą się z jak najmniejszą liczbą tarć. Koniec końców każdy chciałby, żeby rozmowy były jak najbardziej wydajne. 

By ukończyć dane zadanie za pomocą najmniejszej liczby kroków, Amazon rekomenduje używanie prostych zdań i zwięzłego języka, by uniknąć, między innymi, obciążenia poznawczego. Nie dostarczaj użytkownikom całego wypracowania na temat warunków pogodowych, jeśli jedyne czego chcą to dowiedzieć się, jaka jest temperatura na zewnątrz.

Dlatego, jeśli chcesz tworzyć zwięzłe konwersacje i wspomagać udane interakcje, powinieneś:

  • Utrzymywać minimalną liczbę kroków potrzebną do wykonania zadania.
  • Stosować stronę czynną.
  • Tworzyć odpowiedzi, które człowiek wypowiedziałby relatywnie szybko, unikaj monotonnych monologów.
  • Unikać zbędnych informacji.
  • Skupić się na oferowaniu jednej opcji lub kilku zależnie od poziomu złożoności zadania.
  • Jeśli to konieczne wyślij zapis odpowiedzi zawierającej szczegóły do użytkownika w formie wiadomości tekstowej.

Te wskazówki pomogą ci utrzymać zainteresowanie użytkowników i doprowadzą do pomyślnej interakcji. Powinieneś także pamiętać, że analizowanie interakcji pomaga w opracowaniu rozwiązań, które poprawią ogólne doświadczenia użytkownika. Jeśli zauważysz, że użytkownicy tracą zainteresowanie w czasie trwania interakcji, dobrym pomysłem jest przyjrzenie się, w którym miejscu to zachodzi i spróbowanie wywnioskować dlaczego.

Zachowaj kontekst

W skrócie powinieneś oferować użytkownikom istotne informacje, opcje i wskazówki kontekstowe w zależności od danego kontekstu zdania czy prośby.

Rekomendację w tym zakresie obejmują:

  • Dostosowywanie wiadomości w taki sposób, by pomóc użytkownikom zrozumieć jak dana funkcja działa.
  • Ograniczanie długości i liczby wiadomość wraz z rosnącym doświadczeniem użytkownika.
  • Porządkowanie oferowanych opcji zgodnie z kryterium istotności.
  • Nie oferuj opcji nieistotnych.
  • Nie oferuj opcji, które spowodują wystąpienie błędu.

Kiedy użytkownik zacznie uczyć się jak nawigować i komunikować się z twoim asystentem ważne jest upewnienie się, że rozumie on, jak każda funkcja działa. Z biegiem czasu, kiedy nabierze on doświadczenia, nie musisz każdorazowo informować go, co ma robić, jak konkretna funkcja działa, czy co bot może dla niego zrobić.

Prezentuj tylko funkcje, które są dopasowane do kontekstu, w przeciwnym razie będą wydawać się nie na miejscu, będą dezorientować użytkownika i zakłócą przebieg rozmowy. Wyświetlaj tylko te opcje, które będą wynikać z przebiegu rozmowy i pchać ją do przodu.

Zachowaj multimodalność

Podstawą tej zasady jest pozwolenie potencjalnemu użytkownikowi na używanie wirtualnego asystenta w różnych kontekstach i warunkach. Użytkownik powinien móc komunikować się z botem bez względu na to, czy ma on dostęp do ekranu, czy nie.

Krótko mówiąc, jeśli użytkownik ma dostęp do ekranu, to uzupełnianie wiadomości pomocami wizualnymi będzie miłym akcentem. Jednak, jeśli ekran nie jest dostępny, to instrukcje głosowe powinny być wystarczające do ukończenia zadania.

Jeśli chcesz stworzyć satysfakcjonujące multimodalne doświadczenie, to powinieneś:

  • Pozwolić użytkownikowi na używanie głównych funkcji bez potrzeby polegania na ekranie.
  • Upewnić się, że każda opcja na ekranie ma odpowiadającą jej komendę głosową.
  • Umożliwić interakcję poprzez dotyk, jeśli sytuacja tego wymaga.
  • Upewnić się, że interakcje dotykowe współtowarzyszą funkcjom głosowym.
  • Wyświetlać skróty na ekranie, żeby użytkownik mógł dotrzeć do najczęściej używanych funkcji.
  • Urozmaicać ważne momenty, które są istotne dla danego zadania, dodając specjalne interakcje czy interaktywne efekty.
  • Wyraźnie wyświetlać kontekstowo istotne informacje.
  • Wykorzystać historie użytkownika i sezonowość do oferowania przeróżnych grafik i obrazów, które urozmaicą statyczny ekran, który użytkownik będzie widzieć najczęściej.

Bądź godny zaufania

Ochrona danych osobowych użytkowników jest niezbędna, tym bardziej że są oni coraz bardziej czujni i świadomi tego, w jaki sposób firmy wykorzystują ich dane.

Dlatego, jeśli chcesz zbudować chatbota/voicebota, który będzie godny zaufania użytkowników i będzie wyposażony w konwersacyjny interfejs, który nie będzie niczego przed nimi ukrywał, to powinieneś pamiętać o kilku wytycznych.

Wytyczne do budowania zaufania:

  • Jeśli twój program oferuję możliwości korzystania z kilku kont, upewnij się, że użytkownik wie, czyjego konta używa, by uniknąć ujawnienia poufnych informacji nieautoryzowanemu odbiorcy.
  • Przestrzegaj wymogów bezpieczeństwa, takich jak opcja ustawienia kodu PIN.
  • Wyświetlaj tylko takie informacje, które są istotne dla użytkownika.
  • Nie przerywaj przebiegu interakcji niechcianymi reklamami czy innym nieistotnymi ofertami.
  • Wyrażaj czytelne propozycje wartości (value porpositions) związane z akcjami, które użytkownik ma wykonać.
  • Wymagaj od użytkowników potwierdzenia akcji, które mogą spowodować wystąpienie błędu.
  • Stosuj kontekstowe i dorozumiane potwierdzenia akcji użytkowników.
  • Unikaj wyświetlania poufnych danych na ekranie.
  • Zadbaj o to, żeby informacje wyświetlane na ekranie były zgodne z kontekstem werbalnych odpowiedzi.
  • Testuj przebieg interakcji, by upewnić się, że przebiegają płynnie w każdych warunkach: z użyciem ekranu, bez niego, i kiedy użytkownik jest w ruchu.
  • Nazwa interakcji powinna odzwierciedlać i informować użytkownika o jej funkcjach, to samo tyczy się jej opisu.
  • Unikaj obiecywania przyszłych funkcji.
  • Nie wymagaj od użytkownika potwierdzenia polecenia, aby wyjść lub zatrzymać interakcję, chyba że spowoduję to utratę postępu lub danych.

Bycie godnym zaufania nie ogranicza się tylko do ochrony danych osobowych twoich użytkowników. Użytkownicy powinni wierzyć, że wirtualny asystent dostarczy im wiarygodnych odpowiedzi. Jeśli program zostanie złapany na dostarczaniu nieprawdziwych lub błędnych odpowiedzi, to chęć użytkownika do jego używania drastycznie spadnie. Dlatego powinieneś szczególnie zadbać o aktualność informacji, które twój voicebot czy chatbot posiada; nie pozwól, żeby podawał niepoprawne informacje. Pamiętaj, że raz utracone zaufanie jest bardzo ciężko odzyskać.

Jak możesz zauważyć, Amazon dostarcza solidny arsenał rekomendacji i wskazówek, których możesz użyć w trakcie pisania konwersacji i tworzenia chatbota, który zrealizuje twoje cele biznesowe.

Zanim jednak podsumujemy nasz artykuł, jest jeszcze jedna zasada, która zasługuję na wyróżnienie, jako że powinna stanowić podstawę dla projektowania konwersacji w każdym kontekście. Mianowicie, mówimy tutaj o Zasadzie Kooperacji Grice'a.

Zasada Kooperacji

Autorem tej zasady jest brytyjski filozof języka Paul Grice. W skrócie zasada ta kładzie nacisk na potrzebę kooperacji między mówiącymi a słuchaczami, by mogli osiągnąć wzajemne zrozumienie.

Zasada Kooperacji nie powinna być ignorowana w trakcie projektowania wirtualnych asystentów, ponieważ jest ona niezbędnym elementem ludzkiego porozumiewania się. Dzięki niej, interakcje z systemem będą bardziej intuicyjne i naturalne, ponieważ bot i użytkownik będą pracować razem by osiągnąć cel czy ukończyć zadanie.

Zasady projektowania chatbotów. Podsumowanie

Chatboty i voiceboty pozwolą ci między innymi, na zwiększenie jakości obsługi klienta czy organizacji codziennych zadań, czy to twoich, czy twoich klientów.

Zrozumienie zasad projektowania konwersacji jest kluczowe dla budowy chatbota/voicebota, który jest wydajny i przyjazny dla użytkownika. Umożliwi mu to prowadzenie satysfakcjonujących konwersacji. Dlatego zasady przedstawione przez między innymi Amazona, składają się na świetny zestaw wskazówek i checklistę, które pomogą ci w pisaniu naturalnie brzmiących dialogów i uchronią cię przed tworzeniem komunikatów, które będą brzmieć sztywnie, mechanicznie i niepodobnie do ludzkich.

Nie lekceważ roli projektanta konwersacji. Będzie on kluczowy dla twojego projektu i dzięki swojej obszernej wiedzy sprawi, że wirtualny asystent będzie mógł realizować powyższe założenia. Dzięki niemu będziesz mógł stworzyć konwersacyjny interfejs, który będzie czytelny i łatwy w obsłudze.

W związku z tym, jeśli chcesz osiągnąć holistyczny proces projektowania, zadbaj o to, żeby twój projekt był naturalny, zwięzły, wart zaufania i zachowywał kontekst i multimodalność, a także, żeby przestrzegał Zasady Kooperacji, która sprawi, że użytkownik i maszyna osiągną wzajemne zrozumienie. Dobrze zaprogramowany chatbot szybko zwróci ci zainwestowany w niego czas i pieniądze.

I wreszcie, nie bój się testować. Jeśli chcesz, żeby skuteczność chatbota była wysoka, nieważne czy będzie on oparty na tekście, czy mowie, musisz przekonać się, jak wypada on w konfrontacji z użytkownikiem.

Dzięki temu będziesz mógł być pewny możliwości swojego oprogramowania i, co równie ważne, pomoże ci to stwierdzić czy projekt spełnia potrzeby i oczekiwania użytkowników. Badania i testy użytkowników są twoimi przyjaciółmi, nie zapominaj o tym.

Oceń artykuł:
Journal / JPG / Dymitr Romanowski - avatar
Product Designer, Head of Design w The Story. Nagrodzony iF Design Award za Service Design i UX. Projektuje aplikacje biznesowe i pomaga firmom w budowaniu biznesów cyfrowych. Entuzjasta rozwiązań Cloud'owych.

Jesteś zainteresowany współpracą z nami? Zajrzyj do Portfolio