W dzisiejszym cyfrowym świecie większość konsumentów woli samodzielnie znaleźć odpowiedzi na pytania dotyczące obsługi klienta, niż poświęcać czas na kontakt z firmami i/lub usługodawcami. W tym poście na blogu omówiono innowacyjne rozwiązanie umożliwiające zbudowanie chatbota z pytaniami i odpowiedziami Amazonka Lex który wykorzystuje istniejące często zadawane pytania z Twojej witryny. To narzędzie oparte na sztucznej inteligencji może zapewniać szybkie i dokładne odpowiedzi na zapytania w świecie rzeczywistym, umożliwiając klientowi szybkie i łatwe samodzielne rozwiązywanie typowych problemów.
Przetwarzanie pojedynczego adresu URL
Wiele przedsiębiorstw opublikowało na swoich stronach internetowych zestaw odpowiedzi na często zadawane pytania (FAQ) swoich klientów. W tym przypadku chcemy zaoferować klientom chatbota, który będzie w stanie odpowiedzieć na ich pytania zawarte w opublikowanych przez nas często zadawanych pytaniach. W poście na blogu pt Ulepsz Amazon Lex dzięki funkcjom konwersacyjnym FAQ za pomocą LLM, pokazaliśmy, jak można wykorzystać kombinację Amazon Lex i LlamaIndex do zbudowania chatbota opartego na istniejących źródłach wiedzy, takich jak dokumenty PDF lub Word. Aby obsługiwać proste odpowiedzi na często zadawane pytania w oparciu o witrynę z często zadawanymi pytaniami, musimy stworzyć proces przetwarzania, który umożliwi indeksowanie witryny i tworzenie osadzonych elementów, które będą mogły być wykorzystywane przez LlamaIndex do odpowiadania na pytania klientów. W tym przypadku będziemy bazować na bocie stworzonym w pliku poprzedni post na blogu, który odpytuje te osadzenia za pomocą wypowiedzi użytkownika i zwraca odpowiedź z często zadawanych pytań w witrynie.
Poniższy diagram pokazuje, jak proces pozyskiwania i bot Amazon Lex współpracują w naszym rozwiązaniu.
W przepływie pracy rozwiązania strona internetowa z często zadawanymi pytaniami jest pobierana za pośrednictwem AWS Lambda. Ta funkcja Lambda przeszukuje witrynę i zapisuje wynikowy tekst w pliku Usługa Amazon Simple Storage Łyżka (Amazon S3). Następnie segment S3 uruchamia funkcję Lambda, która wykorzystuje LlamaIndex do tworzenia osadów przechowywanych w Amazon S3. Kiedy pojawia się pytanie od użytkownika końcowego, takie jak „Jakie są Twoje zasady zwrotów?”, Bot Amazon Lex wykorzystuje swoją funkcję Lambda do wysyłania zapytań o osadzenia przy użyciu podejścia opartego na RAG i LlamaIndex. Więcej informacji na temat tego podejścia i wymagań wstępnych można znaleźć w poście na blogu, Ulepsz Amazon Lex dzięki funkcjom konwersacyjnym FAQ za pomocą LLM.
Po spełnieniu wymagań wstępnych z wyżej wymienionego bloga, pierwszym krokiem jest przyjęcie często zadawanych pytań do repozytorium dokumentów, które może być wektoryzowane i indeksowane przez LlamaIndex. Poniższy kod pokazuje, jak to osiągnąć:
W poprzednim przykładzie pobieramy predefiniowany adres URL witryny FAQ z Zappos i przetwarzamy go za pomocą EZWebLoader
klasa. W przypadku tych zajęć przeszliśmy do adresu URL i załadowaliśmy wszystkie pytania znajdujące się na stronie do indeksu. Możemy teraz zadać pytanie typu „Czy Zappos ma karty podarunkowe?” i uzyskaj odpowiedzi bezpośrednio z często zadawanych pytań na naszej stronie internetowej. Poniższy zrzut ekranu przedstawia konsolę testową bota Amazon Lex odpowiadającą na to pytanie z często zadawanych pytań.
Udało nam się to osiągnąć, ponieważ w pierwszym kroku zaindeksowaliśmy adres URL i utworzyliśmy osady, których LlamaIndex mógł użyć do wyszukania odpowiedzi na nasze pytanie. Funkcja Lambda naszego bota pokazuje, jak uruchamiane jest to wyszukiwanie po zwróceniu intencji zastępczej:
To rozwiązanie sprawdza się dobrze, gdy na jednej stronie znajdują się wszystkie odpowiedzi. Jednak większość witryn z często zadawanymi pytaniami nie jest zbudowana na jednej stronie. Na przykład w naszym przykładzie Zappos, jeśli zadamy pytanie „Czy masz politykę dopasowywania cen?”, wówczas otrzymamy odpowiedź niezadowalającą, jak pokazano na poniższym zrzucie ekranu.
W poprzedniej interakcji odpowiedź dotycząca zasad dopasowywania cen nie była pomocna dla naszego użytkownika. Ta odpowiedź jest krótka, ponieważ często zadawane pytania, o których mowa, to link do konkretnej strony dotyczącej zasad dopasowywania cen, a nasze przeszukiwanie sieci dotyczyło tylko jednej strony. Uzyskanie lepszych odpowiedzi będzie oznaczać także przeszukiwanie tych linków. W następnej sekcji pokazano, jak uzyskać odpowiedzi na pytania wymagające dwóch lub więcej poziomów głębi strony.
Indeksowanie na poziomie N
Kiedy indeksujemy stronę internetową w celu uzyskania wiedzy na temat często zadawanych pytań, potrzebne informacje mogą być zawarte na stronach, do których prowadzą linki. Na przykład w naszym przykładzie Zappos zadajemy pytanie „Czy masz politykę dopasowywania cen?” a odpowiedź brzmi: „Tak, proszę odwiedzić uczyć się więcej." Jeśli ktoś zapyta: „Jaka jest Twoja polityka dopasowywania cen?” wtedy chcemy udzielić pełnej odpowiedzi wraz z polityką. Osiągnięcie tego oznacza, że musimy przeglądać łącza, aby uzyskać rzeczywiste informacje dla naszego użytkownika końcowego. Podczas procesu przyjmowania możemy użyć naszego modułu ładującego, aby znaleźć linki zakotwiczone do innych stron HTML, a następnie je przeglądać. Następująca zmiana w kodzie naszego robota indeksującego pozwala nam znajdować linki na przeszukiwanych stronach. Zawiera także dodatkową logikę, która pozwala uniknąć przeszukiwania cyklicznego i umożliwia filtrowanie według prefiksu.
W powyższym kodzie wprowadzamy możliwość indeksowania N poziomów w głąb i podajemy przedrostek, który pozwala nam ograniczyć indeksowanie tylko do rzeczy rozpoczynających się od określonego wzorca adresu URL. W naszym przykładzie Zappos wszystkie strony obsługi klienta są zrootowane zappos.com/c
, dlatego dodajemy to jako przedrostek, aby ograniczyć indeksowanie do mniejszego i bardziej odpowiedniego podzbioru. Kod pokazuje, jak możemy spożyć do dwóch poziomów głęboko. Logika Lambda naszego bota pozostaje taka sama, ponieważ nic się nie zmieniło poza tym, że robot pobiera więcej dokumentów.
Mamy już zindeksowane wszystkie dokumenty i możemy zadać bardziej szczegółowe pytanie. Na poniższym zrzucie ekranu nasz bot udziela prawidłowej odpowiedzi na pytanie „Czy masz politykę dopasowywania cen?”
Mamy teraz pełną odpowiedź na nasze pytanie dotyczące dopasowywania cen. Zamiast po prostu powiedzieć „Tak, zapoznaj się z naszymi zasadami”, podaje nam szczegóły z indeksowania drugiego poziomu.
Sprzątać
Aby uniknąć przyszłych wydatków, usuń wszystkie zasoby wdrożone w ramach tego ćwiczenia. Udostępniliśmy skrypt umożliwiający bezpieczne zamknięcie punktu końcowego Sagemaker. Szczegóły użycia znajdują się w pliku README. Dodatkowo, aby usunąć wszystkie inne zasoby, które możesz uruchomić cdk destroy
w tym samym katalogu, co inne polecenia cdk, aby anulować obsługę administracyjną wszystkich zasobów na twoim stosie.
Wnioski
Możliwość wprowadzenia zestawu często zadawanych pytań do chatbota umożliwia Twoim klientom znalezienie odpowiedzi na swoje pytania za pomocą prostych zapytań w języku naturalnym. Łącząc wbudowaną obsługę Amazon Lex do obsługi awarii z rozwiązaniem RAG, takim jak LlamaIndex, możemy zapewnić naszym klientom szybką ścieżkę do uzyskania satysfakcjonujących, wyselekcjonowanych i zatwierdzonych odpowiedzi na często zadawane pytania. Stosując indeksowanie na poziomie N w naszym rozwiązaniu, możemy pozwolić na odpowiedzi, które mogą obejmować wiele łączy z często zadawanymi pytaniami i zapewnić głębsze odpowiedzi na zapytania naszych klientów. Wykonując te kroki, możesz bezproblemowo włączyć potężne funkcje Q i A oparte na LLM oraz wydajne pozyskiwanie adresów URL do chatbota Amazon Lex. Dzięki temu interakcje z użytkownikami są dokładniejsze, kompleksowe i świadome kontekstowo.
O autorach
Maxa Henkla-Wallace'a jest inżynierem rozwoju oprogramowania w AWS Lex. Lubi pracować nad wykorzystaniem technologii, aby zmaksymalizować sukces klienta. Poza pracą pasjonuje się gotowaniem, spędzaniem czasu z przyjaciółmi i podróżowaniem z plecakiem.
Piosenka Fenga jest starszym naukowcem stosowanym w AWS AI Labs, specjalizującym się w przetwarzaniu języka naturalnego i sztucznej inteligencji. Jej badania badają różne aspekty tych dziedzin, w tym modelowanie dialogu opartego na dokumentach, rozumowanie dialogów zorientowanych na zadania oraz interaktywne generowanie tekstu przy użyciu multimodalnych danych.
John Baker jest głównym SDE w AWS, gdzie pracuje nad przetwarzaniem języka naturalnego, modelami dużego języka i innymi projektami związanymi z ML/AI. Pracuje w Amazonie od ponad 9 lat i pracował w AWS, Alexa i Amazon.com. W wolnym czasie John lubi jeździć na nartach i uprawiać inne zajęcia na świeżym powietrzu na północno-zachodnim wybrzeżu Pacyfiku.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- PlatoData.Network Pionowe generatywne AI. Wzmocnij się. Dostęp tutaj.
- PlatoAiStream. Inteligencja Web3. Wiedza wzmocniona. Dostęp tutaj.
- PlatonESG. Motoryzacja / pojazdy elektryczne, Węgiel Czysta technologia, Energia, Środowisko, Słoneczny, Gospodarowanie odpadami. Dostęp tutaj.
- Przesunięcia bloków. Modernizacja własności offsetu środowiskowego. Dostęp tutaj.
- Źródło: https://aws.amazon.com/blogs/machine-learning/enhance-amazon-lex-with-llms-and-improve-the-faq-experience-using-url-ingestion/
- :ma
- :Jest
- :nie
- :Gdzie
- $W GÓRĘ
- 1
- 10
- 100
- 12
- 14
- 16
- 19
- 23
- 36
- 7
- 80
- a
- zdolność
- Zdolny
- O nas
- wykonać
- dokładny
- Osiągać
- osiągnięcia
- w poprzek
- zajęcia
- rzeczywisty
- Dodatkowy
- do tego
- AI
- Zasilany AI
- Alexa
- Wszystkie kategorie
- dopuszczać
- Pozwalać
- pozwala
- już
- również
- Amazonka
- Amazonka Lex
- Amazon Web Services
- Amazon.com
- an
- Kotwica
- i
- odpowiedź
- odpowiedzi
- stosowany
- Stosowanie
- podejście
- zatwierdzony
- SĄ
- Przybywa
- sztuczny
- sztuczna inteligencja
- AS
- aspekty
- At
- dostępny
- uniknąć
- świadomy
- AWS
- z powrotem
- baza
- na podstawie
- BE
- bo
- być
- rozpocząć
- jest
- Ulepsz Swój
- Blog
- ciało
- Bot
- budować
- wybudowany
- wbudowany
- biznes
- by
- CAN
- możliwości
- Kartki okolicznosciowe
- walizka
- pewien
- zmiana
- zmieniony
- chatbot
- kontrola
- klasa
- klient
- Zamknij
- kod
- COM
- połączenie
- łączenie
- przyjście
- wspólny
- kompletny
- wszechstronny
- Konsola
- Konsumenci
- zawarte
- zawartość
- treść
- kontekst
- konwersacyjny
- konwertować
- 轉換
- skorygowania
- mógłby
- Przeciwdziałać
- crawler
- Stwórz
- stworzony
- kurator
- klient
- Obsługa klienta
- Sukces klienta
- Klientów
- Cykle
- dane
- głęboko
- głębiej
- Domyślnie
- wykazać
- wdrażane
- głębokość
- szczegółowe
- detale
- oprogramowania
- Dialog
- cyfrowy
- cyfrowy świat
- bezpośrednio
- dokument
- dokumenty
- na dół
- pobieranie
- duplikaty
- podczas
- e
- każdy
- z łatwością
- wydajny
- więcej
- Umożliwia
- zakończenia
- Punkt końcowy
- inżynier
- wzmacniać
- przedsiębiorstwa
- wejście
- wydarzenie
- przykład
- Z wyjątkiem
- wyjątek
- Ćwiczenie
- Przede wszystkim system został opracowany
- wydatki
- doświadczenie
- odkrywa
- FAQ
- Korzyści
- Łąka
- Akta
- filtrować
- Znajdź
- i terminów, a
- następujący
- W razie zamówieenia projektu
- znaleziono
- przyjaciele
- od
- funkcjonować
- przyszłość
- generacja
- otrzymać
- prezent
- Karty upominkowe
- Dać
- dany
- daje
- Go
- miał
- Prowadzenie
- Have
- he
- headers
- pomocny
- jej
- jego
- W jaki sposób
- How To
- Jednak
- HTML
- http
- HTTPS
- if
- importować
- podnieść
- in
- zawierać
- obejmuje
- Włącznie z
- Przybywający
- włączać
- niezależnie
- wskaźnik
- zindeksowane
- Informacje
- Informacja
- Innowacyjny
- wkład
- Zapytania
- przykład
- zamiast
- Inteligencja
- zamiar
- wzajemne oddziaływanie
- Interakcje
- interaktywne
- najnowszych
- przedstawiać
- IT
- JEGO
- John
- jpg
- json
- Klawisz
- wiedza
- Labs
- język
- duży
- UCZYĆ SIĘ
- poziom
- poziomy
- lewarowanie
- lubić
- LIMIT
- LINK
- powiązany
- linki
- linux
- Lista
- załadować
- ładowarka
- miejscowy
- lokalnie
- zalogowaniu
- logika
- dopasowane
- dopasowywanie
- Maksymalizuj
- oznaczać
- znaczy
- wiadomość
- wiadomości
- modelowanie
- modele
- jeszcze
- większość
- wielokrotność
- Nazwa
- Naturalny
- Przetwarzanie języka naturalnego
- Potrzebować
- Następny
- nic
- już dziś
- numer
- obiekty
- of
- oferta
- on
- ONE
- tylko
- or
- OS
- Inne
- ludzkiej,
- na zewnątrz
- zewnętrzne
- własny
- Pacyfik
- strona
- stron
- część
- namiętny
- ścieżka
- Wzór
- plato
- Analiza danych Platona
- PlatoDane
- Proszę
- polityka
- możliwie
- Post
- powered
- mocny
- zapobiec
- Cena
- Główny
- problemy
- wygląda tak
- przetwarzanie
- projektowanie
- zapewniać
- pod warunkiem,
- dostawców
- zapewnia
- opublikowany
- zapytania
- pytanie
- pytania
- Szybki
- szybko
- podnieść
- raczej
- RE
- dosięgnąć
- czytelnicy
- Prawdziwy świat
- związane z
- szczątki
- usunąć
- składnica
- zażądać
- wywołań
- wymagać
- Badania naukowe
- Zasoby
- odpowiedź
- Odpowiedzi
- ograniczać
- wynikły
- Efekt
- powrót
- powraca
- korzeń
- Trasa
- run
- s
- sagemaker
- taki sam
- Naukowiec
- płynnie
- Szukaj
- Sekcja
- widzieć
- SAMEGO SIEBIE
- senior
- usługa
- usługodawcy
- Usługi
- zestaw
- Short
- pokazane
- Targi
- zamknąć
- Prosty
- po prostu
- pojedynczy
- witryna internetowa
- Witryny
- automatach
- mniejszy
- So
- Tworzenie
- rozwoju oprogramowania
- rozwiązanie
- ROZWIĄZANIA
- kilka
- Ktoś
- Źródła
- rozpiętość
- specjalizujący się
- specyficzny
- Spędzanie
- stos
- początek
- Ewolucja krok po kroku
- Cel
- przechowywanie
- sklep
- przechowywany
- sklep
- bezpośredni
- sukces
- taki
- wsparcie
- SYS
- Brać
- biorąc
- Technologia
- test
- niż
- że
- Połączenia
- Informacje
- ich
- Im
- następnie
- Te
- rzeczy
- to
- tych
- poprzez
- czas
- pod tytulem
- do
- dzisiaj
- razem
- narzędzie
- leczyć
- prawdziwy
- próbować
- drugiej
- rodzaj
- URL
- us
- Stosowanie
- posługiwać się
- używany
- Użytkownik
- Użytkownicy
- zastosowania
- za pomocą
- różnorodny
- przez
- Odwiedzić
- odwiedził
- chcieć
- była
- we
- sieć
- usługi internetowe
- Strona internetowa
- DOBRZE
- były
- jeśli chodzi o komunikację i motywację
- ilekroć
- który
- będzie
- w
- słowo
- Praca
- pracować razem
- pracował
- workflow
- pracujący
- działa
- świat
- by
- napisany
- X11
- lat
- You
- Twój
- zefirnet