Wzbogacanie konwersacji botów za pomocą usług sztucznej inteligencji platformy Azure z przetwarzaniem języka naturalnego (NLP)

Uwaga

Usługa QnA Maker jest wycofywana 31 marca 2025 r. Nowsza wersja funkcji pytań i odpowiedzi jest teraz dostępna w ramach języka sztucznej inteligencji platformy Azure. Aby uzyskać informacje na temat możliwości odpowiadania na pytania w usłudze językowej, zobacz odpowiadanie na pytania. Od 1 października 2022 r. nie będzie można tworzyć nowych zasobów usługi QnA Maker. Aby uzyskać informacje na temat migrowania istniejących baz wiedzy usługi QnA Maker do odpowiadania na pytania, zapoznaj się z przewodnikiem migracji.

Usługi Azure AI udostępniają dwie usługi przetwarzania języka naturalnego, Language Understanding i QnA Maker, z których każda ma inny cel. Dowiedz się, kiedy używać każdej usługi i jak się uzupełniają.

Przetwarzanie języka naturalnego (NLP) umożliwia aplikacji klienckiej, takiej jak czatbot, pracę z użytkownikami przy użyciu języka naturalnego. Użytkownik wprowadza zdanie lub frazę. Tekst użytkownika może mieć słabą gramatykę, pisownię i interpunkcję. Usługa Azure AI może mimo to pracować przez zdanie użytkownika, zwracając informacje, które bot czatbot musi pomóc użytkownikowi.

Usługi sztucznej inteligencji platformy Azure z równoważeniem obciążenia sieciowego

Language Understanding (LUIS) i QnA Maker zapewniają nlp. Aplikacja kliencka przesyła tekst w języku naturalnym. Usługa pobiera tekst, przetwarza go i zwraca wynik.

Kiedy należy używać każdej usługi

Language Understanding (LUIS) i QnA Maker rozwiązują różne problemy. Usługa LUIS określa intencję tekstu użytkownika (nazywanego wypowiedzią), podczas gdy usługa QnA Maker określa odpowiedź na tekst użytkownika (nazywany zapytaniem).

Aby wybrać poprawną usługę, musisz zrozumieć tekst użytkownika pochodzący z aplikacji klienckiej oraz informacje potrzebne do pobrania przez aplikację kliencką z usługi Azure AI.

Jeśli czatbot otrzyma tekst How do I get to the Human Resources building on the Seattle North campus?, użyj poniższego wykresu, aby zrozumieć, jak każda usługa współpracuje z tekstem.

Usługa Aplikacja kliencka określa
LUIS Określa intencję użytkownika w tekście — usługa nie zwraca odpowiedzi na pytanie. Na przykład ten tekst jest klasyfikowany jako zgodny z intencją FindLocation .
QnA Maker Zwraca odpowiedź na pytanie z niestandardowego baza wiedzy. Na przykład ten tekst jest określany jako pytanie z statyczną odpowiedzią tekstową .Get on the #9 bus and get off at Franklin street

Infografika określająca, kiedy należy używać usługi LUIS i kiedy używać usługi QnA Maker

Kiedy używasz usługi LUIS?

Używaj usługi LUIS, gdy musisz znać zamiar wypowiedzi w ramach procesu w czatbocie. Kontynuując przykładowy tekst , gdy wiadomo, How do I get to the Human Resources building on the Seattle North campus?że użytkownik zamierza znaleźć lokalizację, możesz przekazać szczegółowe informacje o wypowiedzi (wyciągniętej z jednostkami) do innej usługi, takiej jak serwer transportu, aby uzyskać odpowiedź.

Nie musisz łączyć usług LUIS i QnA Maker w celu określenia intencji.

Możesz połączyć dwie usługi dla tej wypowiedzi, jeśli czatbot musi przetworzyć tekst na podstawie intencji i jednostek (przy użyciu usługi LUIS), a także znaleźć konkretną odpowiedź tekstową statyczną (przy użyciu usługi QnA Maker).

Kiedy używasz usługi QnA Maker?

Używaj usługi QnA Maker, jeśli masz statyczną bazę wiedzy z odpowiedziami. Ta baza wiedzy jest dostosowana do Twoich potrzebach i zawiera dokumenty, takie jak pliki PDF i adresy URL.

Kontynuując przykładową wypowiedź, How do I get to the Human Resources building on the Seattle North campus?wyślij tekst jako zapytanie do opublikowanej usługi QnA Maker i uzyskaj najlepszą odpowiedź.

Nie musisz łączyć usług LUIS i QnA Maker, aby określić odpowiedź na pytanie.

Możesz połączyć dwie usługi dla tej wypowiedzi, jeśli czatbot musi przetworzyć tekst na podstawie intencji i jednostek (przy użyciu usługi LUIS), a także znaleźć odpowiedź (przy użyciu usługi QnA Maker).

Użyj obu usług, gdy baza wiedzy jest niekompletna

Jeśli tworzysz baza wiedzy usługi QnA Maker, ale wiesz, że domena podmiotu zmienia się (na przykład informacje terminowe), możesz połączyć usługi LUIS i QnA Maker. Dzięki temu można użyć informacji w baza wiedzy, ale także użyć usługi LUIS do określenia intencji użytkownika. Gdy aplikacja kliencka ma zamiar, może zażądać odpowiednich informacji z innego źródła.

Aplikacja kliencka musi monitorować odpowiedzi usługi LUIS i usługi QnA Maker pod kątem wyników. Jeśli wynik z usługi QnA Maker jest niższy niż jakiś dowolny próg, użyj informacji o intencji i jednostce zwróconych z usługi LUIS, aby przekazać informacje do usługi innej firmy.

Kontynuując przykładowy tekst, załóżmy, How do I get to the Human Resources building on the Seattle North campus?że usługa QnA Maker zwraca niski współczynnik ufności. Użyj intencji zwróconej z usługi LUIS FindLocation i wszystkich wyodrębnionych jednostek, takich jak Human Resources building i Seattle North campus, aby wysłać te informacje do usługi mapowania lub wyszukiwania w celu uzyskania innej odpowiedzi.

Tę odpowiedź innej firmy możesz przedstawić użytkownikowi w celu weryfikacji. Po zatwierdzeniu użytkownika możesz wrócić do usługi QnA Maker, aby dodać informacje, aby zwiększyć swoją wiedzę.

Korzystanie z obu usług, gdy czatbot potrzebuje więcej informacji

Jeśli czatbot potrzebuje więcej informacji niż zapewnia którakolwiek z usług, aby kontynuować korzystanie z drzewa decyzyjnego, użyj zarówno usług, jak i przetworzyć obie odpowiedzi w aplikacji klienckiej.

Użyj narzędzia interfejsu wiersza polecenia dispatch platformy Bot, aby ułatwić kompilowanie procesu pracy z obydwoma usługami. To narzędzie tworzy najlepszą aplikację usługi LUIS intencji, która wysyła między usługami LUIS i QnA Maker jako aplikacje podrzędne. Dowiedz się więcej o integracji z usługami LUIS, QnA Maker i bot framework.

Aby zaimplementować tego typu czatbota, użyj przykładu bota, NLP z funkcją dispatch w języku C# lub Node.js.

Najlepsze rozwiązania

Zaimplementuj najlepsze rozwiązania dla każdej usługi:

Zobacz też

Następne kroki