Ще якихось 3 роки назад важко було уявити, що роботи зможуть увійти в життя людей і полегшити виконання повсякдених речей. Сьогодні штучний інтелект частково замінив працю людей, допомагаючи бізнесу досягати своїх цілей і стаючи пріорітетним напрямом розвитку.
Зі збільшенням попиту на чатботи, збільшується кількість інструментів для їх розробки, змінюються технології та ускладнюються задачі, які робот повинен виконувати. Розмови клієнтів з чатботом заощадять близько $8 мільярдів до 2022 року завдяки системам NLP (обробка природньої мови), яка є основною складовою частиною чатботів. В залежності від задач, які виконує NLP, ціна помилки може бути дуже вагомою.
Доповідь розкриє тему обробки природньої мови, як частину чатботів та побудови стратегії тестування моделей: яким чином розподілити пріорітети, які задачі можна автоматизувати і як успішно випускати чатботи в умовах нескінченної гонки за інноваціями.
11. “Show me yesterday’s financial news”
Utterances
● Delivery
● Thanks!
● Book me a flight to Rio next week.
● I already have a phone 9. What the plan going to
cost me ulimited switching over from crickety eyes
you have anything without 1st month.
24. Challenges
● Unlimited inputs quantity
● No definition of quality
● No clear exit criteria
Solutions
● Risk analysis
● Data analysis
25. Challenges Solutions
● Unlimited inputs quantity
● No definition of quality
● No clear exit criteria
● Risk analysis
● Data analysis
26. Challenges Solutions
● Unlimited inputs quantity
● No definition of quality
● No clear exit criteria
● Risk analysis
● Data analysis
27. Challenges Solutions
● Unlimited inputs quantity
● No definition of quality
● No clear exit criteria
● Risk analysis
● Data analysis
28. Challenges Solutions
● Unlimited inputs quantity
● No definition of quality
● No clear exit criteria
● Risk analysis
● Data analysis
29. Structured response
Turning on / Turning
off NLP
Lost in the flow
Business restrictions
Profanity words
Similar intents
Default answer
Acronyms
Informal shortening
Shortening in writing
Emojis
Slang words
Intent + other words
Intent + small talk
Intent + other sentences
Misspellings
Synonyms
Similar phrases
NLP testing checklist
30. ● Order pizza = Order piza
● Change day to Monday = Change day to Mobday
● Send picture = Senf picture
Misspellings
31. ● New offers = New deals
● Some help = Some support = Some assistance
● Order iPhone = Purchase iPhone
Synonyms
32. ● What benefits do you have? = Show me the advantages
● Where is my parcel? = Track my order
● Make a reservation on Friday = Book appointment,
Friday
Similar phrases
33. Can I order bundle of
two headphones, one
for me and one for
my dad?
Intent + other words
I saw your promo,
how to order the
headphones
orderHeadphones
34. Hello, find my bus
station please.
Intent + small talk
findStation
Morning! Nearest
bus station. Thanks.
35. My inbox is a dumpster! I'm like flooded with all the
messages. How can I unsubscribe ?
Intent + other sentences
unsubNews
36. ● Lol - laugh out loud
● Asap - as soon as possible
● Np (No Problem), But how can I send my
booking confirmation
Acronyms
confirmBooking
40. ● Kudos! = praise and honor received for an
achievement
● You rock! = You're awesome (at something)
● On fleek = smooth, nice, sweet
Slang words
41. ● I’d like to order dress
● I’d like to know where
is my dress?
Similar intents
trackOrder
makeOrder
42. ● Sorry, I didn’t get that. Try again
● If you didn’t find what you wanted feel
free to see information in the Main Menu
or type ‘show me main menu’
Default (None) intent
43. Score for None intent
● If utterance score < 0.3
● Avoid repetitions
none
44. Dogs suffer = stop animal testing
Business restrictions
getInfo
52. ● Gathering the stats
● Analyzing what to add/change/delete in NLP model
● Training of the new version of NLP
● Testing
● Monitoring the results
Learning on production
53. ● Gathering the stats
● Analyzing what to add/change/delete in NLP model
● Training of the new version of NLP
● Testing
● Monitoring the results
Learning on production
54. ● Gathering the stats
● Analyzing what to add/change/delete in NLP model
● Training of the new version of NLP
● Testing
● Monitoring the results
Learning on production
55. ● Gathering the stats
● Analyzing what to add/change/delete in NLP model
● Training of the new version of NLP
● Testing
● Monitoring the results
Learning on production
56. ● Gathering the stats
● Analyzing what to add/change/delete in NLP model
● Training of the new version of NLP
● Testing
● Monitoring the results
Learning on production
57. New project roles
NLP model training
Statistics
Bot flow
Copy
NLP model training
Statistics
CONVERSATIONAL
DESIGNER
CONTENT
MANAGER
58. ● Chatbot project = regular project
● NLP is the only unique component
● Analyze risks and statistics to enforce
effective and efficient testing
QA takeaways
59. ● Chatbot project = regular project
● NLP is the only unique component
● Analyze risks and statistics to enforce
effective and efficient testing
QA takeaways
60. ● Chatbot project = regular project
● NLP is the only unique component
● Analyze risks and statistics to enforce
effective and efficient testing
QA takeaways
Доброго дня.
Сьогодні я б хотіла розповісти про тестування NLP в чатботах. І відразу розшифруємо абревіатуру NLP - від англійських слів Natural Language Processing - системи обробки природньої мови.
Пару слів про мене і мій досвід в данному питанні.
Я працюю в компанії Master of Code Global, яка фокусно займається розробкою конверсейшнл додатків, які об’єднують у собі чатботів та інтеграції зі сторонніми сервісами (таких як платіжні системи, клієнтські СіЕрЕм, AR ефекти). Також ми маємо експертизу в eCommerce продуктах, веб та мобайл розробці.
Маю 5 років досвіду взагалі в тестуванні, 3 з яких саме в тестуванні чатботів.
За цей час мала змогу співпрацювати з багатьма компаніями, які представлені різними доменами.
Наприклад, компанія T-Mobile, яка працює працює в області мобільного зв’язку, косметичний бренд Aveda та спортивна організація Всесвітня ліга серфінгу.
Власне, чому я вважаю тему тестування NLP актуальною?
Ще якихось 3 роки назад важко було уявити, що розумні боти зможуть увійти в життя людей і полегшити виконання повсякдених задач.
Але вже сьогодні ми бичимо, що штучний інтелект вже частково замінив працю людей, допомагаючи бізнесу досягати своїх цілей і стаючи пріорітетним напрямом розвитку.
За даними ресерча від Оракл близько 80% бізнесів відповіли, що хочуть мати чатбота до 2020 року.
Перші спроби зарелізити API для побудови чатботів були на таких месенджерах, як WeChat, Телеграм.
Пізніше до них приєднались Facebook messenger, Slack, Skype, ABC та інші.
І вже за кілька років майже кожен мессенджер має підтримку ботів.
Використання чатботів для бізнесу стає майже необхідністю, адже вони хочуть бути там, де є їхні потенційні клієнти, тобто всередині мессенджингових платформ.
Але повної та змістовної інформації саме по тестуванню НЛП і чатботів дуже мало, тому моя мета поділитись нашим досвідом і дати корисну і цікаву інформацію.
Основний челедж при створенні чатбота - це обробка запитів людини.
Це можна зробити двома способами.
Перший - задати строгий набір команд у вигляді “запитання-відповідь”, так званих команд.
Але в такому випадку бот буде вузьконаправлений і обмежений.
Наприклад, якщо юзер каже Buy dress, бот відповідає галереєю з товарами.
Але якщо юзер напише Buy A Dress, бот відповість помилкою, адже саме такого правила у списку не було.
Такі системи називаються Ruled based і їх використання можна порівняти з запитами на веб сторінку.
URL адреса повинна мати певний набір та порядок символів, і у випадку зайвого символа ми побачимо 404 помилку.
Інший спосіб, на якому ми зосередились, - це підключити машинне навчання, яке дозволяє навчити бота розуміти юзера по кільком ключовим словам.
Тоді навіть з довгого речення: “Hi, I want to buy a dress”, бот зможе розпізнати намір і відповісти підходящим контентом.
Такі системи називають AI based, а в їх основі лежать моделі NLP - від англійських слів Natural language processing - системи обробки природньої мови.
Саме про такі системи і їх тестування далі і піде мова.
Зараз на ринку достатньо NLP платформ, які пропонують готові рішення девелоперам.
Наприклад, Luis від Microsoft, DialogFlow від Google, Lex від Amazon та інші.
Усі вони мають свої плюси та мінуси.
Ми на своєму поточному проекті використовуємо Luis від Microsoft як НЛП платформу і ChatFuel як платформу для побудови структури бота (текстових блоків, зображень, кнопок).
Потім все це інтегрується в FB Messeger, і вже кінцеві користувачі спілкуються з готовим ботом безпосередньо всередині аплікейшена.
На даному проекті ми використовували і інші НЛП платформи: експериментували з вбудованим НЛП від ChatFuel, тестували роботу DialogFlow від Google.
Але Luis від Microsoft показав кращі результати, тому ми зупинились на ньому.
Який би інструмент ви не вибрали, усі вони об’єднуються спільною базою понять для тренування моделі.
І для того щоб вибрати найоптимальніші методи тестування, необхідно ознайомитись з цими поняттями.
Почнемо з поняття Utterance - в перекладі з англійської мови - висловлювання.
Utterance - це все те, що юзер може написати в бот.
Це може бути символ, слово, словосполучення, фраза, речення, абзац. Все, що завгодно.
Друге поняття, яке необхідно розглянути, - це інтент (в перекладі з англійської мови - намір).
Інтент - це бажання юзера викликати в боті певну дію або переглянути певний контент.
Наприклад в данному висловлюванні наміром юзера буде переглянути финансові новини за минулий день.
Зазвичай, інтенти записуються у вигляді пари: дієслово+іменник для їх швидкої ідентифікації з-поміж схожих інтентів.
Для данного прикладу це буде пара showNews.
Кілька прикладів інтентів, щоб ви побачили як вони утворюються і які бувають в залежності від функцій бота: наприклад, bookAppointment, checkCoverage, buyIphone.
І останнє поняття - це ентіті (в перекладі з англійської - сутність).
Ентіті - це слова чи словосполучення, які надають додаткової інформації до наміру користувача.
Наприклад, в данному випадку додатковою інформацією до наміра переглянути новини буде категорія новин та часовий період, за який треба ці новини відфільтрувати: тобто це слова financial та yesterday.
Ентіті описують усі властивості навколишніх об’єктів та процесів, тому майже кожен інтент може мати свої ентіті.
Наприклад, маємо інтент buyIphone - ентіті для нього будуть Model, Color, Capacity, Price.
Це були основні поняття, а тепер перейдемо до процесів.
Робота з НЛП триває протягом усього циклу розробки і поділяється на 4 фази: діскавері, тренування модеоі, власне тестування та навчання на продакшені.
Почнемо з перешої фази - діскавері.
Тестування НЛП (як і будь якого іншого проекту) розпочинається якомога раніше, ще на фазі збору вимог.
Основні пункти, які необхідно обговорити до початку розробки і які будуть впливати на тестування це наступні.
Перше - це мова. Може бути multy-language бот, або якась іноземна мова, яка вам невідома.
Це може вплинути на вибір НЛП інструмента (адже не кожен з них підтримує усі мови); на кількість ефорда, який треба закласти в тест-план; також може вплинути на залучення додаткових спеціалістів в команду у зв’язку з іноземною мовою.
Другий пункт, але не менш важливий - це feature scope.
Може статися так, що клієнт захоче покрити через діалоги лише Смол ток, а основні фічі розробити як кліки по кнопкам, а може бути навпаки - усі бізнес кейси заімплементити через діалоги з ботом (тобто використання НЛП).
Це вплине на к-сть атеренсів, інтентів в моделі і на час розробки та тестування.
І останнє, але не менш важливе - це цільова аудиторія.
Це може бути стать, вік, геолокація, соціальне становище.
Усе, що допоможе вибрати валідні висловлювання для тренування і тествання.
Переходимо до наступної фази - тренування моделі.
Після того, як затвердили усі вимоги, ми приступають до наповнення моделі атерансами (словами, реченнями, словосполученнями), виділяють інтенти та ентіті.
На скріншоті показано як виглядає дашборд НЛП платформи на прикладі Luis від Microsoft.
Ми бачимо один інтент showNews, три атеранси і виділені ентіті.
Простими словами система працює наступним чином: якщо юзер пише find financial news, атеренс, якого немає в цьому списку, система все одно повинна проматчити його на цей інтент.
Ми працюємо з нативними спікерами, які допомагають з підбором найоптимальніших фраз.
Також в цьому можуть допомогти спеціалісти зі сторони клієнта, які знають специфічну термінологію свого домена або знають як саме користувачі спілкуються з їх бізнесом.
Переходимо безпосередньо до фази тестування.
Основною складністю тестування НЛП є те, що важко визначити класи еквівалентності і вибрати представників з цих класів серед нескінченної к-сті інпутів (символів, слів, речень).
Також є ризик витратити забагато часу на тестування через відсутність чітких критеріїв якості.
Завжди будуть баги - тобто завжди будуть ситуації, коли НЛП дасть відповідь не таку, яку очікуємо.
І як результат неможливо узгодити і затвердити критерії закінчення тестування.
Але що дозволяє нам ефективно тестувати незалежно від цих проблем, це те що використовуємо наступні два методи.
По-перше, ми використовуємо аналіз ризиків і на основі нього виставляємо пріорітети.
Це допомагає нам знайти підходящі приклади для тестування, зробити смоук чи регрешн критичних ділянок і швидко дати фідбек стейкхолдерам про проблеми на проекті.
І другий солюшен - це аналіз даних.
Ми збираємо статистику усіх юзерських інпутів в боти і виділяємо топ випадків, які варті уваги.
Результатом роботи над статистикою та ризиками став так званий QA basic чекліст, який покриває основні тестові ідеї.
Чекліст має чимало цікавих випадків, про які далі піде мова.
Приклади будуть англійською мовою, але усі пункти підходять до будь якої з мов.
Найперше з чим ми працюємо - це перевірка помилок.
НЛП інструменти мають вбудовану функцію перевірки помилок, тому немає потреби вводити усі варіанти написання слів з помилками.
Але якщо ми говоримо про підбір слів для тестування - тут необхідно використати аналіз ризиків та вибрати найкритичніші варіанти.
Наприклад, якщо у нас бот, основною функцією якого є доставка піцци, то важливо перевірити усі варінти написання слів Order та pizzа.
Також пріорітетними є кейси використання слів-синонімів.
Тут вам допоможуть численні словники.
І фокусуватись необхідно на найбільш уживаних словах.
Наприклад, фрази new offers і new deals - повинні вести юзера на однаковий інтент.
Іноді розповсюджених слів-синонімів може бути більше: наприклад, help, support, assistance.
Можуть бути цілі фрази-синоніми.
Але на відміну від слів-синонімів, для яких в НЛП інструментах є окрема таба, де можна їх додати усі через кому, з фразами так не вийде.
Адже слово Have не є синонімом в загальному значенні до слова Show, але фрази Show me your advantages і What benefits do you have? повинні бути синонімічними, тобто вести на однакову відповідь.
1 - Наступні кейси для перевірки - це більш довші речення, де крім ключових фраз є ще інші слова, які не несуть суттєвої ваги (так званний шум).
2 - Наприклад, обидва речення повинні вести на інтент orderHeadphones, а решту слів система повинна проігнорувати.
Схожий випадок - це речення, у яких крім ключових слів є ще фрази смол току.
Кейс майже як попередній, але ми тестуємо його окремо, тому що фрази смол току належать окремому інтенту smallTalk.
І нам необхідно перевірити, що фраза hello, find my bus station please поведе юзера саме на інтент findStation, а НЕ на інтент smallTalk.
Аналізуючи юзерські інпути, ми помітили досить багато довгих і неструктурованих атеренсів.
Зазвичай, по контексту можна зрозуміти, що юзер не знав, що спілкується з ботом і висловлював думки так, ніби до живого агента сапорта.
В цьому випадку задача бота продовжувати відповідати юзеру адекватно і намагатись допомогти, розпізнавши навіть з неструктурованого висловлювання ключові слова.
А наша задача це перевірити.
В нашому столітті, переповненому інформацією, часу на спілкування і на листування залишається все менше і менше.
Як би це парадоксально не звучало, але чим більшою кількісю інформації людина володіє, тим більше способів її скорочення вона шукає.
Одним з найдієвіших способів скоротити мову є використання акронімів.
Зараз вони є повсюди: в діловому та повсякденному спілкуванні, в міжнародних термінах та технічній документації, тому не дивно, що юзери будуть їх використовувати під час розмови з ботом.
Акронім може бути одиничним атеренсом (наприклад, asap, lol), або частиною більш повного атерена - необхідно перевіряти обидва випадки.
Ще одним дієвим способом скоротити висловлювання - це використання скорочень на письмі.
Скорочення можуть бути неформальні і формальні.
Пару прикладів неформальних скорочень: lil - від слова little, wanna від слів want to.
І формальні скорочення, які є більш розповсюдженними, адже є затвердженими правилами на письмі.
Для того, щоб коректно перевірити їх вживання, треба знати їх розшифровку.
Наприклад: smth. Скорочення від something, I’ve - скорочення від I have.
Разом з актонімами і скороченнями, ще одне явище увійшло в письмову мову - це вживання емодзі.
Вони стали настільки популярними, що у 2015 році Оксфордський словник назвав словом року - емодзі, який плачу від сміху.
Але використання емодзі - це окрема тема для ресерча, адже ми знаємо, що жести можуть означати різне для різних культур і країн, тому треба знати свою аудиторію, щоб не зробити помилок.
Ми перевіряємо топ емодзі і в залежності від вимог, перевіряємо заборонені емодзи: які відображають релігійні чи расові образи, зброю, наркотики чи інтерпритуються, як чистини тіла.
Вживання сленгу - також розповсюджений випадок.
Сленг - емоційна і яскрава складова лексики будь якої мови.
Ми знаємо наш айтішний сленг, що є різновидом професійного сленгу; також є студентський, молодіжний, дитячий сленг, які є найдинамічнішими через швидку зміну поколінь.
Сленгових фраз велика кількість, тому треба знати вашу цільову аудиторію.
Вивчаючи вік, стать, профисію можна вибрати підходящі варіанти, які будуть притаманні вашим юзерам.
Іноді трапляються ситуації, коли одне і те саме слово повинно бути ключовим у різних інтентах, які відрізняються між собою.
Відрізняються настільки, що повести юзера на інший інтент - рівноцільно його втраті.
Наприклад, якщо юзер зробив покупку, не дочекався вчасної доставки і запитує у бота I’d like to know where is my dress, що є trackOrder інтентом, то повести його на makeOrder інтент буде вкрай недоречно.
Юзер навряд чи зробить ще одну покупку, але знервований він точно покине бот і піде шукати сапорт на вебсайті.
Іноді такі кейси місматчинга не є критичними, але вони все одно покажуть недосконалість НЛП і погіршать експірієнс юзера в боті.
Незважаючи на те, що НЛП модель можна натренувати доволі якісно, все одно бутуь кейси, коли юзер буде писати фрази, які є поза межами скоупа функціональності бота.
Наприклад, якщо бот займається продажем канстоварів, він навряд чи розповість щось юзеру про погоду.
В таких випадках використовують None (Default) інтент - це резервний інтент, на який система буде відправляти все те, що не проматчилось з жлдним з існуючих інтентів.
По змісту він може звучати як короткий меседж Sorry I didn’t get that, try again, а може бути значно довшим і містити повний мануал того, зо юзер може зробити в боті.
Також в залежності від вимог можна налаштувати мінімальний скор для того, щоб відображати юзеру цей дефолтний меседж.
Кожному атеренсу система дає скор, ймовірність попадання в той чи інший інтент.
Наприклад, фраза order iPhone має скор 1 для попадання в інтент orderIphone і скор 0,1 наприклад для попадання в інтент orderPizza.
Щоб не було таких місматчингів можна задати правило: якщо атерант скор менший 0,3, наприклад, вести юзера на дефолт меседж.
Але тут треба бути обережним і перевіряти уважно, адже може бути ситуація, що кожен юзерський інпут буде вести на дефолт меседж і юзер буде злим кожно разу читаючи, Sorry I didn’t get that.
Цікавими є кейси перевірки випадків, пов’язаних з бізнес специфікою клієнта.
Наприклад, бот косметичної компанії повинен усі фрази, які пов’язані з тестуванням косметичної продукції на тваринах відправляти на специфічний інтент з меседжом, який пояснить юзеру політику компанії щодо цього питання.
У випадку місматчингу на інший інтент, особливо якщо це веселий смол ток, компанія може бути скомпроментована і понести збитків.
Тому такі критичні кейси треба перевіряти якомога прискіпливіше і виділяти на них більше часу.
Окремий скоуп на тестування - це лайливі слова.
В залежності від вимог, бот може мовчати у відповідь, вести на дефолтний інтент або на меседж, який пояснить, що бот спілкується з ввічливими юзерами.
Так як таких слів багато - збираємо топ зі статистики.
Перевіряти їх треба як одиничний інтент і також в поєднанні з іншими фловами, фразами смол току.
Іноді для певних фіч нам необхідно відправляти атеранс юзера на бекенд для обробки.
В таких випадках ми просимо ввести такі інпути в певному форматі.
Наприклад, якщо це номер автобуса - ми очікуємо натуральне число.
Або якщо юзер вводить ціну: він може ввести у вигляді десяткового дробу, або цілого числа, може використати символ валюти, або ж відправити без нього.
В таких випадках ми використовуємо так званні пребілд ентіті, які пропонує НЛП платформа і які допомагають розпізнавати такий структурований контент.
Тестування таких видаків дещо сходе на перевірку вебформи.
Кілька прикладів такого структурованого контенту: це може бути імейл, телефон, дата час.
Незважаючи на те, що френдлі бот повинен постійно вести діалог з юзером і підтримувати його зацікавленність, існують такі флоу, де бот (а точніше НЛП) повиннен мовчати.
Наприклад, фіча фідбек форма - які б ключові слова і фрази не були б в інпуті юзера, бот усім повинен відповісти однаковим Thank you месенджем. І нам необхідно це перевірити.
В таких точках флоу ми ставимо так званні заглущки, які вимикають вмикають НЛП назад.
Але тут є проблема з непослідовністю дій юзера, які можуть собі вимкнути НЛП назавжди.
Тому тестуючи такі випадки, ми завжди використовуємо тест дизайн техніку State transition flow, щоб не пропустити жодну з послідовностей виконання дій у флоу.
І останній кейс з чекліста - це перевірка випадків, коли НЛП допомагає юзеру не заблукати у флоу.
Структура бота може бути доволі послідовною, так що ви не зможете перейти до степа 2 не завершивши попередній степ 1.
Такі експірієнси можуть мати негативні наслідки.
Наприклад, покупка товару з опціями. Юзер вибрав товар - степ 1, вибір кольору - степ 2 і покупка - степ 3.
Якщо, юзер замість того, щоб вибрати колір, клікнувши по кнопці, напише текстовий меседж в бот, він вийде з флоу покупки і не завершить транзакцію.
В таких випадкам ми пропонуємо сетапити повторні запитання, щоб повернути юзера у ту ж точку.
Але повторний меседж може нервувати юзера, тому конверсейшн дизайнери повинні або знайти кілька варіантів одного і того самого запитання, або знайти якийсь цікавий інтерактив, щоб все таки витягти з юзера потрібеу відповідь і рухатись далі.
Який би варіант ви не вибрали, обов’язково треба передбачити вихід з такого цикла для юзера, який точно не хоче купувати товар, додавши кнопки back чи exit.
Це був останній пункт з чекліста.
Незважаючи на достатнью кількість тестових ідей для перевірки, за один повний робочий день один тестувальник може перевірити 3 нові інтенти, при умові, що там немає складної логіки чи ризикових кейсів і при умові, що він в контексті поточної моделі НЛП і в контексті усього проекту.
І нарешті ми дійшли до останньої фази - навчання на продакшені.
Після релізу на продакшен починається сама цікава фаза в тестуванні НЛП - це збір статистики.
Тут нас цікавить чи дійсно юзери пишуть, те що ми очікували, чи є якісь топ по інпутам та атеренсам, як система реагує на валідні та неваліндні інпути.
Аналізуючи всю інформацію ми визначаємо, що можна покращити: додати, змінити чи навіть видалити в поточній моделі.
Потім необхідно перетренувати модель.
І обов’язково зробити ще один раунд тестування, так як перетренована модель - це нова модель, і як вона себе поведе ніхто не знає.
Такий цикл може повторюватись з періодичністю 1-2 в місяць в залежності від нових фіч, побажань клієнта та результатів попереднього аналізу.
Такий постійний процес навчання на продакшені і паралельно реліз нових фіч потребує розширення команди і залучення спеціалістів, які фокусно будуть працювати саме над НЛП складовою.
Таким чином з’явились нові професії і ролі в команді.
Конверсейшн дизайнер працює над побудовою флоу і структури бота, дизайнить діалоги, щоб бот приносив користь і був зручним и швидким у користуванні. Разом з контент менеджером вони займаються тренуванням моделі: підпороб атеренсів (слів, словосполучень, речень), виділенням ентіті, інтентів.
Також саме вони займаються збором і аналізом статистики після релізу і визначають слабкі сторони для покращення.
Тестувальники залучені на кожну з фаз: під час діскавері ми разом з бізнес аналітиками приймаємо учисть в обговоренні та валідації вимог; під час фази тренування моделі можемо допомогти з підбором атеренсів, пріорітизациєю інтентів.
А під час фінальної фази приймаємо участь в обговоренні змін в НЛП, адже знайємо продукт у цілому і можемо визначити як зміни можуть вплинути на інші частини бота.
Як висновок, хочу сказати, що в цілому тестування чатбот проекту майже нічим не відрізняється від тестування інших проектів і його можна розкласти на складові, які нам вже знайомі: це функціональне тестування, юзабіліті, UI, секьюріті, перформанс, тестування мобайл спесифік кейсів (так як бот працює всередині мобайл аплікейшена) і так далі.
Але частинка НЛП - це нова і найменш досліджена для нас складова бота, тестування якої супроводжується складнощами, але є надзвичайно важливим.
Кастомер саппорт, покупки онлайн та букінг апойнтмента - всі ці функції вже давно доступні користувачам вебсайтів.
Але чатботи можуть запропонувати більше: миттєву консультацію 24/7, швидку покупку у вигляді діалога, персоналізований експірієнс та легкий інтерфейс чатбота у вже відомому месенджері (що позбавляє потреби встановлювати додаткові аплікейшени).
Вдалий експірієнт роботи з чатботом може підвищити задоволення користувача (так званний - кастомер сатісфекшн, який є одним з основних КПІ для бізнесу), але це станеться лише тоді, коли НЛП складова, яка зустрічає юзера та проводить його через весь бот, буде протестована на бездоганному рівні.
А це в свою чергу буде залежити від тестової стратегії, яку ви обираєте.
Наш досвід показує, що зробити тестування ефективним нам допомагає аналіз ризиків та робота зі статистикою.
Тут знаходиться чекліст, який був в основі доповіді.
Звичайно у вас на прокті може бути своя специфіка і контекст, але його можна юзати як темплейт для вашої власної тестової стратегії.