Planowanie aplikacji QnA Maker

Aby zaplanować aplikację QnA Maker, musisz zrozumieć, jak działa usługa QnA Maker i współdziała z innymi usługami platformy Azure. Należy również dobrze zrozumieć baza wiedzy pojęcia.

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.

Zasoby platformy Azure

Każdy zasób platformy Azure utworzony za pomocą usługi QnA Maker ma określony cel. Każdy zasób ma własny cel, limity i warstwę cenową. Ważne jest, aby zrozumieć funkcję tych zasobów, aby móc wykorzystać tę wiedzę do procesu planowania.

Zasób Przeznaczenie
Zasób usługi QnA Maker Tworzenie i przewidywanie zapytań
Zasób usługi Cognitive Search Przechowywanie i wyszukiwanie danych
zasób App Service i zasób usługi App Plan Service Punkt końcowy przewidywania zapytania
Zasób usługi Application Insights Telemetria przewidywania zapytań

Planowanie zasobów

Warstwa Bezpłatna , F0z każdego zasobu działa i może zapewnić zarówno środowisko tworzenia, jak i przewidywania zapytań. Ta warstwa służy do nauki tworzenia i przewidywania zapytań. Po przejściu do scenariusza produkcyjnego lub na żywo dokonaj ponownej oceny wybranego zasobu.

Rozmiar i przepływność bazy wiedzy

Podczas tworzenia rzeczywistej aplikacji zaplanuj wystarczającą ilość zasobów dla rozmiaru baza wiedzy i oczekiwanych żądań przewidywania zapytań.

Rozmiar baza wiedzy jest kontrolowany przez:

Żądanie przewidywania zapytania baza wiedzy jest kontrolowane przez plan aplikacji internetowej i aplikację internetową. Zapoznaj się z zalecanymi ustawieniami , aby zaplanować warstwę cenową.

Udostępnianie zasobów

Jeśli masz już niektóre z tych zasobów, możesz rozważyć udostępnianie zasobów. Zobacz, które zasoby można udostępnić , aby zrozumieć, że udostępnianie zasobów jest zaawansowanym scenariuszem.

Wszystkie bazy wiedzy utworzone w tym samym zasobie usługi QnA Maker współdzielą ten sam punkt końcowy przewidywania zapytania testowego .

Omówienie wpływu wyboru zasobów

Odpowiedni wybór zasobów oznacza, że baza wiedzy pomyślnie odpowiada na przewidywania zapytań.

Jeśli baza wiedzy nie działa prawidłowo, zazwyczaj jest to problem z niewłaściwym zarządzaniem zasobami.

Niewłaściwy wybór zasobów wymaga zbadania, który zasób musi ulec zmianie.

Bazy wiedzy

Zasób usługi QnA Maker jest bezpośrednio powiązany z baza wiedzy. Zawiera pary pytań i odpowiedzi (QnA), które są używane do odpowiadania na żądania przewidywania zapytań.

Zagadnienia dotyczące języka

Pierwszy baza wiedzy utworzony w zasobie usługi QnA Maker ustawia język zasobu. Dla zasobu usługi QnA Maker można mieć tylko jeden język.

Zasoby usługi QnA Maker można strukturę według języka lub użyć usługi Translator, aby zmienić zapytanie z innego języka na język baza wiedzy przed wysłaniem zapytania do punktu końcowego przewidywania zapytania.

Pozyskiwanie źródeł danych

Do utworzenia baza wiedzy można użyć jednego z następujących pozyskanych źródeł danych:

  • Publiczny adres URL
  • Prywatny adres URL programu SharePoint
  • File

Proces pozyskiwania konwertuje obsługiwane typy zawartości na znaczników markdown. Cała dalsza edycja odpowiedzi jest wykonywana przy użyciu języka Markdown. Po utworzeniu baza wiedzy można edytować pary pytań i odpowiedzi w portalu usługi QnA Maker przy użyciu tworzenia tekstu sformatowanego.

Zagadnienia dotyczące formatu danych

Ponieważ ostateczny format pary pytań i odpowiedzi jest markdown, ważne jest zrozumienie obsługi języka Markdown.

Połączone obrazy muszą być dostępne z publicznego adresu URL, które mają być wyświetlane w okienku testowym portalu usługi QnA Maker lub w aplikacji klienckiej. Usługa QnA Maker nie zapewnia uwierzytelniania zawartości, w tym obrazów.

Osobowość bota

Dodaj osobowość bota do baza wiedzy za pomocą konwersacji. Ta osobowość pojawia się z odpowiedziami podanymi w pewnym tonu konwersacyjnym, takim jak profesjonalny i przyjazny. Ten konwersacja jest dostarczany jako zestaw konwersacji, który masz całkowitą kontrolę nad dodawaniem, edytowaniem i usuwaniem.

Osobowość bota jest zalecana, jeśli bot łączy się z baza wiedzy. Możesz użyć czatu chit-chat w baza wiedzy, nawet jeśli łączysz się również z innymi usługami, ale należy przejrzeć sposób interakcji usługi bota, aby wiedzieć, czy jest to właściwy projekt architektury do użycia.

Przepływ konwersacji z baza wiedzy

Przepływ konwersacji zwykle rozpoczyna się od pozdrowienia od użytkownika, takiego jak Hi lub Hello. Twoja baza wiedzy może odpowiedzieć na ogólną odpowiedź, taką jak Hi, how can I help you, i może również dostarczyć wybranych monitów o kontynuowanie konwersacji.

Należy zaprojektować przepływ konwersacji z myślą o pętli, aby użytkownik wiedział, jak używać bota i nie jest porzucony przez bota w konwersacji. Monity monitujące zapewniają łączenie między parami pytań i odpowiedzi, które umożliwiają przepływ konwersacji.

Tworzenie ze współpracownikami

Współpracownicy mogą być innymi deweloperami, którzy udostępniają pełny stos deweloperów aplikacji baza wiedzy lub mogą być ograniczeni tylko do tworzenia baza wiedzy.

Tworzenie bazy wiedzy obsługuje kilka uprawnień dostępu opartych na rolach stosowanych w Azure Portal w celu ograniczenia zakresu możliwości współpracownika.

Integracja z aplikacjami klienckimi

Integracja z aplikacjami klienckimi jest realizowana przez wysłanie zapytania do punktu końcowego środowiska uruchomieniowego przewidywania. Zapytanie jest wysyłane do określonego baza wiedzy za pomocą zestawu SDK lub żądania opartego na protokole REST do punktu końcowego aplikacji internetowej usługi QnA Maker.

Aby poprawnie uwierzytelnić żądanie klienta, aplikacja kliencka musi wysłać poprawne poświadczenia i identyfikator baza wiedzy. Jeśli używasz Bot Service usługi Azure AI, skonfiguruj te ustawienia w ramach konfiguracji bota w Azure Portal.

Przepływ konwersacji w aplikacji klienckiej

Przepływ konwersacji w aplikacji klienckiej, takiej jak bot platformy Azure, może wymagać funkcjonalności przed rozpoczęciem i po interakcji z baza wiedzy.

Czy aplikacja kliencka obsługuje przepływ konwersacji, udostępniając alternatywne sposoby obsługi monitów monitowania lub dołączania chit-chit? Jeśli tak, zaprojektuj je wcześnie i upewnij się, że zapytanie aplikacji klienckiej jest poprawnie obsługiwane przez inną usługę lub w przypadku wysłania do baza wiedzy.

Wysyłanie między usługą QnA Maker i Language Understanding (LUIS)

Aplikacja kliencka może udostępniać kilka funkcji, na które odpowiada baza wiedzy. Inne funkcje nadal muszą zrozumieć tekst konwersacyjny i wyodrębnić z niego znaczenie.

Typową architekturą aplikacji klienckiej jest używanie razem zarówno usługi QnA Maker, jak i Language Understanding (LUIS). Usługa LUIS udostępnia klasyfikację i wyodrębnianie tekstu dla każdego zapytania, w tym do innych usług. Usługa QnA Maker udostępnia odpowiedzi z baza wiedzy.

W takim scenariuszu architektury udostępnionej wysyłanie między obiema usługami odbywa się za pomocą narzędzia Dispatch z platformy Bot Framework.

Aktywne uczenie się z poziomu aplikacji klienckiej

Usługa QnA Maker używa aktywnego uczenia się do ulepszania baza wiedzy przez sugerowanie alternatywnych pytań do odpowiedzi. Aplikacja kliencka jest odpowiedzialna za część tej aktywnej nauki. Za pomocą monitów konwersacji aplikacja kliencka może określić, że baza wiedzy zwrócił odpowiedź, która nie jest przydatna dla użytkownika, i może określić lepszą odpowiedź. Aplikacja kliencka musi wysłać te informacje z powrotem do baza wiedzy, aby poprawić jakość przewidywania.

Podawanie odpowiedzi domyślnej

Jeśli baza wiedzy nie znajdzie odpowiedzi, zwraca domyślną odpowiedź. Ta odpowiedź można skonfigurować na stronie Ustawienia w portalu usługi QnA Maker lub w interfejsach API.

Ta domyślna odpowiedź różni się od domyślnej odpowiedzi bota platformy Azure. Domyślną odpowiedź dla bota platformy Azure można skonfigurować w Azure Portal w ramach ustawień konfiguracji. Jest zwracany, gdy próg wyniku nie zostanie osiągnięty.

Przewidywanie

Przewidywanie jest odpowiedzią z baza wiedzy i zawiera więcej informacji niż tylko odpowiedź. Aby uzyskać odpowiedź na przewidywanie zapytań, użyj interfejsu API GenerateAnswer.

Wahania wyników przewidywania

Wynik może ulec zmianie na podstawie kilku czynników:

  • Liczba odpowiedzi żądanych w odpowiedzi na wartość GenerateAnswer z właściwością top
  • Różne dostępne pytania alternatywne
  • Filtrowanie metadanych
  • Zapytanie wysłane do test lub production baza wiedzy

Istnieje klasyfikacja odpowiedzi dwufazowych:

  • Wyszukiwanie poznawcze — pierwsza ranga. Ustaw liczbę odpowiedzi dozwolonych wystarczająco wysoko, że najlepsze odpowiedzi są zwracane przez usługę Cognitive Search, a następnie przekazane do rangi usługi QnA Maker.
  • QnA Maker — druga ranga. Zastosuj cechowanie i uczenie maszynowe, aby określić najlepszą odpowiedź.

Aktualizacje usług

Zastosuj najnowsze aktualizacje środowiska uruchomieniowego , aby automatycznie zarządzać aktualizacjami usługi.

Skalowanie, przepływność i odporność

Skalowanie, przepływność i odporność są określane przez zasoby platformy Azure, ich warstwy cenowe i dowolną architekturę otoczenia, taką jak usługa Traffic Manager.

Analiza za pomocą usługi Application Insights

Wszystkie zapytania do baza wiedzy są przechowywane w usłudze Application Insights. Skorzystaj z naszych najważniejszych zapytań , aby zrozumieć metryki.

Cykl projektowania oprogramowania

Cykl życia programowania baza wiedzy trwa: edytowanie, testowanie i publikowanie baza wiedzy.

Opracowywanie par usługi QnA Maker w bazie wiedzy

Pary pytań i odpowiedzi powinny być zaprojektowane i opracowane na podstawie użycia aplikacji klienckiej.

Każda para może zawierać:

  • Metadane — filtrowanie podczas wykonywania zapytań w celu umożliwienia tagowania par pytań i odpowiedzi z dodatkowymi informacjami na temat źródła, zawartości, formatu i przeznaczenia danych.
  • Kolejne monity — pomaga określić ścieżkę za pośrednictwem baza wiedzy, aby użytkownik dotarł do poprawnej odpowiedzi.
  • Pytania alternatywne — ważne, aby umożliwić wyszukiwanie zgodne z odpowiedzią z różnych form pytania. Sugestie dotyczące uczenia aktywnego przekształcają się w alternatywne pytania.

Programowanie metodyki DevOps

Opracowanie baza wiedzy do wstawienia do potoku DevOps wymaga, aby baza wiedzy był izolowany podczas testowania wsadowego.

Baza wiedzy udostępnia indeks usługi Cognitive Search ze wszystkimi innymi bazami wiedzy w zasobie usługi QnA Maker. Chociaż baza wiedzy jest izolowana przez partycję, udostępnianie indeksu może spowodować różnicę w wyniku w porównaniu z opublikowanymi baza wiedzy.

Aby uzyskać ten sam wynik w test bazach wiedzy iproduction, izoluj zasób usługi QnA Maker do pojedynczego baza wiedzy. W tej architekturze zasób musi żyć tylko tak długo, jak izolowany test wsadowy.

Następne kroki