Jak dbamy o jakość chatbotów?

O roli testera w tworzeniu interfejsów konwersacyjnych.

W pogoni za trendem.

Chatboty przestały być już tylko technologiczną ciekawostką — firmy coraz częściej i chętniej wykorzystują je w komunikacji z klientem.

Pojawia się coraz więcej publikacji o korzyściach, jakie niosą dla biznesu interfejsy tekstowe i głosowe, tworzone są coraz dłuższe listy ich możliwości, a nawet instrukcje step-by-step, jak uruchomić własnego bota na Messengerze.

Niewiele jednak informacji można znaleźć o istotnym, idącym tuż za chatbotowym trendem wyzwaniu, jakim jest testowanie interfejsów konwersacyjnych.

Wyjątkowy produkt, wyjątkowe podejście.

W przypadku tworzenia serwisu www czy aplikacji mobilnej najpierw określamy potrzeby biznesowe, później wybieramy rozwiązania, które wizualizujemy na makietach i projektach graficznych, aż w końcu — bazując na tych materiałach — tworzymy produkty podlegające szczegółowym testom. Rola testera polega na — w dużym uproszczeniu — weryfikacji zgodności tego, co zostało wytworzone, z początkowymi założeniami i określonymi wymaganiami.

Chatboty wymykają się wyraźnie temu procesowi, ponieważ jest to rozwiązanie, które w dużej mierze kształtuje się w miarę jego wykorzystywania. Tester w nieunikniony sposób staje się zarazem „trenerem”, który nie tylko weryfikuje, ale też rozwija umiejętności konwersacyjne bota.

Siła konwersacyjnej konsekwencji.

Podczas testów chatbotów szybko zorientowałam się, że wymagają one ciągłych, całościowych usprawnień. Można to porównać do równomiernie rozrastającej się korony drzewa. Poprawka w jednej gałęzi projektu często wymaga usprawnień w pozostałych. I to nie tylko kwestia zależności między tematami, ale przede wszystkim konwersacyjnej konsekwencji.

Nośnikiem rozmowy jest język — w przypadku interfejsów głosowych zarówno ten pisany, jak i mówiony. W wielu kontekstach te dwa rodzaje wypowiedzi nie będą zawierały tej samej treści. Bot może zaprezentować informacje w formie np. tabeli, listy czy instrukcji, nie wspominając już o elementach graficznych czy multimedialnych. Konsekwencja dotyczy więc różnych sposobów komunikacji, które — choć odmienne w swojej postaci — muszą stanowić spójną, naturalną dla użytkownika całość.

Chatbot dla Desperadosa, który obsłużył ponad pół miliona użytkowników.

Konsekwencja wypowiedzi bota jest istotna w stosowaniu chociażby często specyficznej, branżowej terminologii, zwrotów grzecznościowych, zapisów wybranych słów małymi i wielkimi literami, zapisów jednostek, numeracji, wylistowań. Wybory te oczywiście powinny wpisywać się w zbiór zasad poprawnej polszczyzny, ale też być odpowiednio dostosowane do grupy docelowej. Konsekwencji wymaga więc także ustalony styl wypowiedzi.

Automatyzacja przyspiesza proces nauki.

Kluczowym rodzajem testów w przypadku botów są więc testy regresji. Z każdym etapem udoskonaleń, wykorzystaniem kolejnego zbioru fraz treningowych czy wdrożenia nowej funkcjonalności należy upewnić się, że zmiana nie miała negatywnego wpływu na pozostałe obszary tematyczne. Standardowy proces tworzenia bota obfituje w powtarzalne iteracje sprawdzonych testów, które wykrywają najpoważniejsze uchybienia, bazujące zazwyczaj na niewłaściwym rozpoznaniu intencji.

Ta powtarzalność treningów jest doskonałą okazją do stworzenia macierzy zapytań w cyklicznych testach automatycznych. Oszczędza to czas i pieniądze, które zostałyby wydane na żmudną, manualną weryfikację tych samych scenariuszy testowych. Poza tym przyspiesza i rozbudowuje proces treningowy, co z kolei zwiększa trafność odpowiedzi i reakcji chatbota.

Komunikacja to wzajemna nauka.

W interakcji człowiek-maszyna edukacja przebiega obustronnie. Z jednej strony doskonalimy chatbota na podstawie fraz używanych przez ludzi — uczymy go przetwarzać język naturalny. Z drugiej strony — również człowiek wchodzący w interakcję z botem uczy się efektywnie z niego korzystać, poznając jego styl komunikacji i logikę, jaką przyjmuje w kontakcie.

Użytkownik kieruje się rozsądkiem — ma świadomość, że bot jest przede wszystkim ułatwiającym mu życie narzędziem. Zresztą, pracując nad bazą osobowości, staramy się tego nie ukrywać — wręcz przeciwnie — podkreślamy często w wypowiedziach jego wyjątkową, odległą od ludzkiej naturę.

Po pierwsze treść, po drugie forma.

Rozmowa z chatbotem umożliwia użytkownikowi wprowadzenie wielu różnych danych wejściowych, nieograniczonych żadnym sztywnym zbiorem czy walidacją. Możemy co prawda zawężać ten zbiór wiadomością powitalną, podpowiedzią, instrukcją czy sugestią, jednak ostateczny wybór zawsze należy do człowieka. Po stronie chatbota pozostają reakcje na wprowadzane przez rozmówcę treści. To właśnie podczas testów tego typu interfejsu odkryłam, na ile sposobów można zapytać o z pozoru prostą informację, jak np. adres korespondencyjny firmy.

Weźmy za przykład popularne FAQ, czyli najczęściej zadawane pytania. Kluczem do sporządzenia go na stronie internetowej jest to, by zestaw pytań był wyczerpujący pod względem potrzeb informacyjnych użytkownika, a odpowiedzi były dla niego jasne i czytelne.

Stworzony dla sieci Play Danny to jeden z dwóch pierwszych polskich voicebotów opartych o Asystenta Google.

W przypadku tworzenia chatbotowego FAQ, kluczowe są nie tylko treści, których użytkownik poszukuje, ale również to, w jaki sposób ich szuka — jak formułuje pytania, jakich używa słów kluczowych, a nawet jaki przyjmuje styl pisania w komunikatorach (pojedyncze, urywane fragmenty zdań czy pełna wypowiedź?).

Wartość poprawności językowej.

Podobieństwem między wymaganiami użytkownika wobec treści widocznej np. na stronie internetowej i wobec komunikatów chatbota jest spójność z obowiązującymi standardami językowymi. Mogą być oczywiście między nimi pewne odstępstwa w zależności od grupy docelowej, szczególnie jeśli chcemy podkreślić osobowość bota mową potoczną czy określeniami z tzw. słownika slangu miejskiego. Jednak ani na stronie, ani w oknie Messengera nie powinny się znaleźć rażące błędy ortograficzne i stylistyczne.

Konwersacja z chatbotem opiera się głównie na tekście, więc jakość tego tekstu przekłada się w dużej mierze na jakość całego rozwiązania. To punkt, w którym tzw. naturalność konwersacji ma swoje granice. Gdybyśmy dążyli do jak najwierniejszego odzwierciedlenia rozmowy z człowiekiem, bot musiałby robić literówki, niedbale budować zdania czy używać w nieodpowiednim kontekście niektórych wyrazów. Słowem — robić wszystko, co zarówno cieszy, jak i irytuje rozmówców podczas standardowej rozmowy. Efektywny interfejs konwersacyjny to sprytne połączenie zalet naturalnej konwersacji i możliwości projektowych wykraczających poza zdolności człowieka. Jedną z takich ściśle technicznych zalet jest zapewnienie bezbłędności chatbotowych treści.

Synergia potrzeb i cech rozmówcy.

W związku z tym doszłam do wniosku, że rozwiązania konwersacyjne dotykają nie tylko kwestii potrzeb danego użytkownika, ale też jego temperamentu, wrażliwości, dokładności i szeregu cech, które charakteryzują go przede wszystkim jako człowieka czy rozmówcę, a nie klienta czy usługobiorcę. Nie jest oczywiście możliwe dobranie indywidualnego stylu komunikacji do każdego użytkownika. W rzeczywistości też tak przecież nie czynimy.

Język, mimo swojej dużej złożoności ma pewne ograniczenia — ramy i zasady, wedle których budowane są wypowiedzi. Uznałam, że kluczowe więc jest ich takie sklasyfikowanie, by podgrupy objęły jak najszerszy zakres możliwości wykorzystania go niezależnie od tematu. Wtedy testowanie jednego wątku staje się niejako testowaniem ich wszystkich.

I właśnie znowu odkryliśmy perfekcyjny obszar do automatyzacji!

Nie tylko konwersacja.

Jaka jest w tym wszystkim rola zespołu Quality Assurance? Czy testowanie można po prostu określić trenowaniem chatbota? Czy każda przeprowadzona z botem konwersacja to nic innego jak czynność testerska?

Otóż nie. Przede wszystkim należy wyjść od tego, że chatboty to nie tylko konwersacja. Mogą być one zintegrowane z zewnętrznymi systemami i bazami danych. Mogą zawierać formularze osadzone na tzw. webview (dodatkowej warstwie, dzięki której dane nie są przechowywane przez Messengera). Mogą realizować ścieżki decyzyjne, gdzie wybory użytkownika przekładają się na konkretne akcje bota (tzw. flow).

Warta BOT - jako pierwszy w Polsce umożliwił automatyczne zgłoszenie szkody przez aplikację Messenger.

Mogą także przechwycić lokalizację klienta i na jej podstawie wyświetlać szukane placówki czy punkty obsługi. I w końcu — przy spełnieniu określonych warunków — mogą wysyłać powiadomienia lub przypomnienia, z ustaloną wcześniej częstotliwością.

I to wcale nie koniec listy…

Kluczowa jest dostępność.

Jak widać, możliwości testerskich jest tutaj wiele. Wiemy jednak, że nawet najlepiej przeprowadzone testy integracji, działania formularzy czy lokalizowania elementów na niewiele się zdadzą, jeśli dana informacja nie będzie dostępna dla użytkownika w czasie, kiedy ten będzie jej oczekiwać.

W projektach, jakie do tej pory znaliśmy, zapewnienie tej dostępności było rolą developera. To od niego zależało, co klient zobaczy po wykonanej akcji — np. pod daną zakładką ma się znajdować konkretny widok, dany filtr zawęża wyniki do skończonego zbioru artykułów, wpisanie złego adresu URL wyświetli stronę 404 z odpowiednim komunikatem.

W przypadku chatbota za dostępność odpowiada ciągle doskonalony mechanizm, który indeksuje bardzo indywidualne dane (formy zapytań) pod określone tematy i ich podgrupy, zawierające do tego czasem różne scenariusze rozmowy.

Dobry chatbot jest angażujący i skuteczny.

Podsumowując — rolą zespołu QA w testowaniu interfejsów konwersacyjnych jest więc nie tylko sprawdzenie poprawności działania mechanizmów i oceny ich zgodności z pierwotnymi założeniami, łącznie z aspektami funkcjonalnymi, stopniem użyteczności czy formą wizualną komunikatów.

Moja testerska rola jest tutaj dużo szersza — ciągle, w cyklicznym procesie upewniam się, że rozmowa z chatbotem jest doświadczeniem dostatecznie angażującym i ma strukturę możliwie naturalnego dialogu, który zapewnia użytkownikowi skuteczną realizacją swoich celów.

Niniejszy artykuł ukazał się na łamach serwisu ccnews.pl dnia 1 czerwca 2019 roku.

11.06.2019.
Chcesz dostawać informacje o nowych wpisach? Zostaw swój adres e-mail.