У сучасному цифровому світі більшість споживачів радше знайдуть відповіді на свої запитання щодо обслуговування клієнтів самостійно, а не витрачатимуть час на те, щоб звернутися до компаній та/або постачальників послуг. Ця публікація в блозі досліджує інноваційне рішення для створення чат-бота із запитаннями та відповідями Амазон Лекс який використовує наявні поширені запитання з вашого веб-сайту. Цей інструмент на основі штучного інтелекту може надавати швидкі й точні відповіді на реальні запити, дозволяючи клієнту швидко й легко вирішувати типові проблеми самостійно.
Передача однієї URL-адреси
Багато підприємств опублікували відповіді на поширені запитання для своїх клієнтів, доступні на їхньому веб-сайті. У цьому випадку ми хочемо запропонувати клієнтам чат-бота, який зможе відповісти на їхні запитання з наших опублікованих поширених запитань. У публікації блогу під назвою Удосконалюйте Amazon Lex функціями розмовних поширених запитань за допомогою LLM, ми продемонстрували, як ви можете використовувати комбінацію Amazon Lex і LlamaIndex для створення чат-бота на базі наявних джерел знань, таких як документи PDF або Word. Для підтримки простих поширених запитань на основі веб-сайту поширених запитань нам потрібно створити процес прийому даних, який може сканувати веб-сайт і створювати вбудовування, які LlamaIndex може використовувати для відповідей на запитання клієнтів. У цьому випадку ми будемо спиратися на бота, створеного в попереднє повідомлення в блозі, який запитує ці вбудовування за допомогою висловлювання користувача та повертає відповідь із поширених запитань веб-сайту.
На наступній діаграмі показано, як процес прийому даних і бот Amazon Lex працюють разом для нашого рішення.
У робочому процесі рішення веб-сайт із поширеними запитаннями завантажується через AWS Lambda. Ця функція Lambda сканує веб-сайт і зберігає отриманий текст у файлі Служба простого зберігання Amazon (Amazon S3) відро. Відро S3 потім запускає функцію Lambda, яка використовує LlamaIndex для створення вставок, які зберігаються в Amazon S3. Коли надходить запитання від кінцевого користувача, наприклад «Яка ваша політика повернення?», бот Amazon Lex використовує свою функцію Lambda, щоб запитувати вбудовування за допомогою підходу на основі RAG із LlamaIndex. Щоб отримати додаткові відомості про цей підхід і попередні умови, зверніться до публікації в блозі, Удосконалюйте Amazon Lex функціями розмовних поширених запитань за допомогою LLM.
Після виконання попередніх умов із вищезгаданого блогу, першим кроком є завантаження поширених запитань у сховище документів, яке можна векторизувати та індексувати LlamaIndex. Наступний код показує, як це зробити:
У попередньому прикладі ми беремо попередньо визначену URL-адресу веб-сайту з поширеними запитаннями від Zappos і завантажуємо її за допомогою EZWebLoader
клас. За допомогою цього класу ми перейшли до URL-адреси та завантажили всі запитання на сторінці в індекс. Тепер ми можемо поставити запитання на зразок «Чи є у Zappos подарункові картки?» і отримайте відповіді безпосередньо з наших поширених запитань на веб-сайті. На наступному знімку екрана показано тестову консоль бота Amazon Lex, яка відповідає на це запитання з поширених запитань.
Нам вдалося досягти цього, оскільки ми просканували URL-адресу на першому кроці та створили вбудовування, які LlamaIndex міг використовувати для пошуку відповіді на наше запитання. Функція Lambda нашого бота показує, як виконується цей пошук щоразу, коли повертається резервний намір:
Це рішення добре працює, коли на одній веб-сторінці є всі відповіді. Однак більшість сайтів поширених запитань не побудовані на одній сторінці. Наприклад, у нашому прикладі Zappos, якщо ми ставимо запитання «Чи маєте ви політику відповідності цін?», ми отримуємо незадовільну відповідь, як показано на наступному знімку екрана.
У попередній взаємодії відповідь щодо політики відповідності цін не є корисною для нашого користувача. Ця відповідь коротка, оскільки посилання на поширені запитання є посиланням на певну сторінку про політику відповідності цін, а наше веб-сканування стосувалося лише однієї сторінки. Отримання кращих відповідей також означатиме сканування цих посилань. У наступному розділі показано, як отримати відповіді на запитання, які потребують двох або більше рівнів глибини сторінки.
N-рівневий сканування
Коли ми скануємо веб-сторінку в пошуках поширених запитань, інформація, яку ми хочемо, може міститися на пов’язаних сторінках. Наприклад, у нашому прикладі Zappos ми ставимо запитання «Чи є у вас політика відповідності цін?» і відповідь: «Так, будь ласка, відвідайте щоб дізнатися більше». Якщо хтось запитає: «Яка ваша політика відповідності цін?» тоді ми хочемо дати повну відповідь із політикою. Досягнення цього означає, що нам потрібно переходити за посиланнями, щоб отримати фактичну інформацію для нашого кінцевого користувача. Під час процесу прийому даних ми можемо використовувати наш веб-завантажувач, щоб знаходити прив’язки на інші HTML-сторінки, а потім переходити по них. Наступна зміна коду нашого веб-сканера дозволяє нам знаходити посилання на сторінках, які ми скануємо. Він також містить деяку додаткову логіку, щоб уникнути циклічного сканування та дозволити фільтр за префіксом.
У попередньому коді ми представили можливість сканувати N рівнів глибини та надали префікс, який дозволяє нам обмежити сканування лише речами, які починаються з певного шаблону URL-адреси. У нашому прикладі Zappos усі сторінки обслуговування клієнтів ґрунтуються zappos.com/c
, тому ми включаємо це як префікс, щоб обмежити наше сканування меншою та релевантнішою підмножиною. Код показує, як ми можемо заглиблювати до двох рівнів. Логіка Lambda нашого бота залишається незмінною, оскільки нічого не змінилося, за винятком того, що сканер завантажує більше документів.
Зараз у нас є всі документи проіндексовані, і ми можемо поставити більш детальне запитання. На наступному скріншоті наш бот дає правильну відповідь на запитання «Чи є у вас політика відповідності цін?»
Тепер ми маємо вичерпну відповідь на наше запитання щодо відповідності цін. Замість того, щоб просто сказати «Так, дивіться нашу політику», він надає нам деталі сканування другого рівня.
Прибирати
Щоб уникнути майбутніх витрат, видаліть усі ресурси, які були розгорнуті в рамках цієї вправи. Ми надали сценарій для витонченого завершення роботи кінцевої точки Sagemaker. Деталі використання знаходяться в README. Крім того, щоб видалити всі інші ресурси, які ви можете запустити cdk destroy
у тому ж каталозі, що й інші команди cdk, щоб деініціалізувати всі ресурси у вашому стеку.
Висновок
Можливість завантажувати набір поширених запитань у чат-бот дає змогу вашим клієнтам знаходити відповіді на свої запитання за допомогою простих запитів природною мовою. Об’єднавши вбудовану підтримку в Amazon Lex для резервної обробки з рішенням RAG, таким як LlamaIndex, ми можемо надати нашим клієнтам швидкий шлях до отримання задовольняючих, підібраних і затверджених відповідей на поширені запитання. Застосувавши N-рівневе сканування в нашому рішенні, ми можемо дозволити відповіді, які, можливо, охоплюватимуть кілька посилань на поширені запитання та надавати глибші відповіді на запити наших клієнтів. Дотримуючись цих кроків, ви зможете безперешкодно включити потужні можливості Q і A на основі LLM та ефективне введення URL-адрес у свій чат-бот Amazon Lex. Це призводить до більш точної, комплексної взаємодії з користувачами з урахуванням контексту.
Про авторів
Макс Хенкель-Воллес є інженером з розробки програмного забезпечення в AWS Lex. Йому подобається працювати, використовуючи технології для досягнення максимального успіху клієнтів. Поза роботою він захоплюється кулінарією, проводить час з друзями та подорожує з рюкзаком.
Сонг Фен є старшим науковим співробітником AWS AI Labs, який спеціалізується на обробці природної мови та штучному інтелекті. Її дослідження вивчає різні аспекти цих сфер, включаючи моделювання діалогів, заснованих на документах, міркування для діалогів, орієнтованих на завдання, та створення інтерактивного тексту з використанням мультимодальних даних.
Джон Бейкер є головним SDE в AWS, де він працює над обробкою природної мови, моделями великих мов та іншими проектами, пов’язаними з ML/AI. Він працює в Amazon понад 9 років і працював у AWS, Alexa та Amazon.com. У вільний час Джон любить кататися на лижах та займатися іншими видами активного відпочинку на північному заході Тихого океану.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- PlatoData.Network Vertical Generative Ai. Додайте собі сили. Доступ тут.
- PlatoAiStream. Web3 Intelligence. Розширення знань. Доступ тут.
- ПлатонЕСГ. Автомобільні / електромобілі, вуглець, CleanTech, Енергія, Навколишнє середовище, Сонячна, Поводження з відходами. Доступ тут.
- BlockOffsets. Модернізація екологічної компенсаційної власності. Доступ тут.
- джерело: https://aws.amazon.com/blogs/machine-learning/enhance-amazon-lex-with-llms-and-improve-the-faq-experience-using-url-ingestion/
- : має
- :є
- : ні
- :де
- $UP
- 1
- 10
- 100
- 12
- 14
- 16
- 19
- 23
- 36
- 7
- 80
- a
- здатність
- Здатний
- МЕНЮ
- виконувати
- точний
- Achieve
- досягнення
- через
- діяльності
- фактичний
- Додатковий
- Додатково
- AI
- Можливість
- Alexa
- ВСІ
- дозволяти
- Дозволити
- дозволяє
- вже
- Також
- Amazon
- Амазон Лекс
- Amazon Web Services
- Amazon.com
- an
- Якір
- та
- відповідь
- Відповіді
- прикладної
- Застосування
- підхід
- затверджений
- ЕСТЬ
- Прибуває
- штучний
- штучний інтелект
- AS
- аспекти
- At
- доступний
- уникнути
- знати
- AWS
- назад
- база
- заснований
- BE
- оскільки
- було
- починати
- буття
- Краще
- Блог
- тіло
- Бот
- будувати
- побудований
- вбудований
- підприємства
- by
- CAN
- можливості
- Cards
- випадок
- певний
- зміна
- змінилися
- Chatbot
- контроль
- клас
- клієнт
- близько
- код
- COM
- поєднання
- об'єднання
- майбутній
- загальний
- повний
- всеосяжний
- Консоль
- Споживачі
- містяться
- зміст
- зміст
- контекст
- діалоговий
- конвертувати
- перетворення
- виправити
- може
- Counter
- гусеничний
- створювати
- створений
- Куратор
- клієнт
- Контакти
- Успіх клієнта
- Клієнти
- циклів
- дані
- глибокий
- глибше
- дефолт
- продемонстрований
- розгорнути
- глибина
- докладно
- деталі
- розробка
- Діалог
- цифровий
- цифровий світ
- безпосередньо
- документ
- документація
- вниз
- скачати
- дублікати
- під час
- e
- кожен
- легко
- ефективний
- ще
- дозволяє
- кінець
- Кінцева точка
- інженер
- підвищувати
- підприємств
- запис
- Event
- приклад
- Крім
- виняток
- Здійснювати
- існуючий
- витрати
- досвід
- досліджує
- FAQ
- риси
- Поля
- Файли
- фільтрувати
- знайти
- Перший
- після
- для
- знайдений
- друзі
- від
- функція
- майбутнє
- покоління
- отримати
- подарунок
- подарункові карти
- Давати
- даний
- дає
- Go
- було
- Обробка
- Мати
- he
- Заголовки
- корисний
- її
- його
- Як
- How To
- Однак
- HTML
- HTTP
- HTTPS
- if
- імпорт
- удосконалювати
- in
- включати
- includes
- У тому числі
- Вхідний
- включати
- самостійно
- індекс
- індексований
- інформація
- інформація
- інноваційний
- вхід
- Запити
- екземпляр
- замість
- Інтелект
- намір
- взаємодія
- Взаємодії
- інтерактивний
- в
- вводити
- IT
- ЙОГО
- Джон
- JPG
- json
- ключ
- знання
- Labs
- мова
- великий
- УЧИТЬСЯ
- рівень
- рівні
- використання
- як
- МЕЖА
- LINK
- пов'язаний
- зв'язку
- Linux
- список
- загрузка
- завантажувач
- місцевий
- локально
- каротаж
- логіка
- відповідає
- узгодження
- Максимізувати
- значити
- засоби
- повідомлення
- повідомлення
- моделювання
- Моделі
- більше
- найбільш
- множинний
- ім'я
- Природний
- Обробка природних мов
- Необхідність
- наступний
- нічого
- зараз
- номер
- об'єкти
- of
- пропонувати
- on
- ONE
- тільки
- or
- OS
- Інше
- наші
- з
- поза
- власний
- Тихий океан
- сторінка
- сторінок
- частина
- пристрасний
- шлях
- Викрійки
- plato
- Інформація про дані Платона
- PlatoData
- будь ласка
- політика
- можливо
- пошта
- Харчування
- потужний
- запобігати
- price
- Головний
- проблеми
- процес
- обробка
- проектів
- забезпечувати
- за умови
- провайдери
- забезпечує
- опублікований
- запити
- питання
- питань
- Швидко
- швидко
- підвищення
- швидше
- RE
- досягати
- читачі
- Реальний світ
- пов'язаний
- доречний
- залишається
- видаляти
- Сховище
- запросити
- запитів
- вимагати
- дослідження
- ресурси
- відповідь
- відповіді
- обмежити
- в результаті
- результати
- повертати
- Умови повернення
- корінь
- Маршрут
- прогін
- s
- мудрець
- то ж
- вчений
- плавно
- Пошук
- розділ
- побачити
- SELF
- старший
- обслуговування
- постачальники послуг
- Послуги
- комплект
- Короткий
- показаний
- Шоу
- Вимикати
- простий
- просто
- один
- сайт
- сайти
- ігрові автомати
- менше
- So
- Софтвер
- розробка програмного забезпечення
- рішення
- ВИРІШИТИ
- деякі
- Хтось
- Джерела
- span
- спеціалізується
- конкретний
- Витрати
- стек
- старт
- Крок
- заходи
- зберігання
- зберігати
- зберігати
- магазинів
- просто
- успіх
- такі
- підтримка
- SYS
- Приймати
- взяття
- Технологія
- тест
- ніж
- Що
- Команда
- інформація
- їх
- Їх
- потім
- Ці
- речі
- це
- ті
- по всьому
- час
- під назвою
- до
- сьогоднішній
- разом
- інструмент
- лікувати
- правда
- намагатися
- два
- тип
- URL
- us
- Використання
- використання
- використовуваний
- користувач
- користувачі
- використовує
- використання
- різний
- через
- візит
- visited
- хотіти
- було
- we
- Web
- веб-сервіси
- веб-сайт
- ДОБРЕ
- були
- коли
- коли б ні
- який
- волі
- з
- слово
- Work
- працювати разом
- працював
- робочий
- робочий
- працює
- світ
- б
- письмовий
- X11
- років
- Ти
- вашу
- зефірнет