Udostępnij za pośrednictwem


Korzystanie z encji i wypełnianie miejsc na wartość w pomocnikach

Duża częścią konwersacji z pomocnikiem w usłudze Copilot Studio jest rozumienie języka naturalnego, co pozwala sztucznej inteligencji na interpretowanie zamiaru użytkownika. Na przykład , gdy użytkownik powie „Chcę użyć mojej karty upominkowej, ale nie działa”, a pomocnik może skierować użytkownika do tematu związanego z niedziałającymi kartami upominkowymi — nawet jeśli dokładna fraza nie została wymieniona jako fraza wyzwalająca.

Jednym z podstawowych aspektów rozumienia języka naturalnego jest identyfikowanie encji w sesji dialogowej użytkownika. Obejrzyj film, aby rozpocząć pracę z encjami.

Encję można traktować jako jednostkę informacji reprezentującą pewien typ obiektu ze świata rzeczywistego, taki jak numer telefonu, kod pocztowy, miejscowość lub nawet imię i nazwisko osoby. Dzięki wiedzy oferowanej przez encje pomocnik może inteligentnie rozpoznawać istotne informacje wprowadzone przez użytkownika i zapisywać je w celu późniejszego użycia.

Wstępnie skompilowane encje

Encje w pomocnikach umożliwiają przechowywanie informacji w podobnych grupach.

Po zainstalowaniu usługa Copilot Studio oferuje zestaw wstępnie skompilowanych encji, które odzwierciedlają typy informacji najczęściej używane w rzeczywistych dialogach, takie jak wiek, kolory, liczby oraz imiona i nazwiska.

Dzięki wiedzy oferowanej przez encje pomocnik może inteligentnie rozpoznawać istotne informacje wprowadzone przez użytkownika i zapisywać je w celu późniejszego użycia.

Aby pomóc w zrozumieniu tej koncepcji, użyjemy przykładowej encji Pieniądze.

  1. Otwórz pomocnika w Copilot Studio i wybierz pozycję Ustawienia u góry strony, a następnie Encje w menu.

    Przejdź do karty Encje.

    Zostanie wyświetlona lista encji, które są dostępne.

    Okienko Encje.

  2. Wybierz encję Pieniądze, która spowoduje otwarcie okienka szczegółów tej encji.

    Opis encji Pieniądze.

W tym miejscu można zapoznać się z objaśnieniem tej encji i sposobami, za pomocą których można wyszukiwać informacje dotyczące pieniędzy lub waluty w danych wprowadzonych przez użytkownika.

Jeśli na przykład użytkownik wprowadzi frazę „To kosztuje 1000 dolarów”, użycie tej encji Pieniądze spowoduje, że pomocnik będzie wiedzieć, że ciąg „1000 dolarów” reprezentuje informacje typu Pieniądze. Kiedy pomocnik wyodrębni tę encję i zapisze ją w zmiennej, zapisuje w ten sposób „1000” jako liczbę, mimo że otaczające ją informacje były tekstem.

Encje niestandardowe

Wstępnie utworzone encje obejmują najczęściej używane typy informacji. W niektórych przypadkach, na przykład podczas kompilowania pomocnika w określonym celu, być może trzeba wytrenować model rozumienia języka w pomocniku tak, aby przekazać mu wiedzę dotyczącą określonej domeny.

Załóżmy na przykład, że chcesz utworzyć pomocnika dla sklepu ze sprzętem turystycznym. W tym przypadku konieczne jest wytrenowanie pomocnika tak, aby potwierdzał kategorię „produkt typu Sprzęt turystyczny” w sesji dialogowej.

Najpierw utwórz encję niestandardową. W takim przypadku można utworzyć encję, który daje pomocnikowi wiedzę na temat wszystkich kategorii produktów turystycznych.

  1. Otwórz pomocnika w Copilot Studio i wybierz pozycję Ustawienia u góry strony, a następnie Encje w menu.

  2. Wybierz opcję Dodaj encję> Nowa encja.

    Wybierz Nowa encja.

  3. Spowoduje to otwarcie okienka, w którym można wybrać typ encji: encję Zamknięta lista lub encję Wyrażenia zwykłego (regex).

Zamknięte encje listy

Zamknięte encje listy umożliwiają zdefiniowanie listy elementów. Najlepiej korzystać z tych encji w przypadku niewielkich list, których zarządzanie jest łatwe i które mają proste etykiety elementów.

Zrzut ekranu okna tworzenia encji z wyróżnioną opcją Zamknięta lista.

Wybranie tej opcji podczas tworzenia encji pokazuje okienko, w którym można określić nazwę encji, opcjonalny opis i wprowadzić elementy, które mają być uwzględnione w encji.

Zrzut ekranu okienka listy encji.

Podczas wprowadzania elementów można:

  • Wybrać każdy element, aby zmienić jego nazwę.
  • Wybrać ikonę śmietnika, aby usunąć element z listy.
  • Wybierz opcję + Synonimy (lub wybierz wymienione synonimy, jeśli zostały już dodane), aby otworzyć okienko Edytowanie synonimów.

Można dodać jej synonimy w celu ręcznego rozwinięcia logiki dopasowania dla każdego elementu na liście encji. Na przykład w elemencie „trekking” można dodać jako synonimy „trekking” i „wędrówki”.

Zrzut ekranu okienka Edytowanie synonimów.

Dla każdej encji można również włączyć funkcję Inteligentnego dopasowania.

Inteligentne dopasowywanie jest częścią analizy obsługiwanej przez model rozumienia języka pomocnika. Po włączeniu tej opcji pomocnik zinterpretuje dane wejściowe użytkownika, używając logiki rozmytej opartej na elementach wyświetlonych w encji.

W szczególności pomocnik będzie automatycznie poprawiać literówki i semantycznie rozszerzać logikę dopasowania. Na przykład pomocnik może automatycznie dopasować wyraz „softball” to „baseball”.

Zrzut ekranu przedstawiający przełączenie opcji inteligentnego dopasowania.

Po zakończeniu tworzenia lub edytowania encji wybierz opcję Zapisz, aby zapisać i powrócić do listy encji. Wybierz opcję Zamknij, aby odrzucić zmiany (użytkownik będzie miał możliwość powrotu do edytowania encji w przypadku przypadkowego wybrania niewłaściwej opcji).

Encje Wyrażenie regularne (regex)

Encje wyrażenia regularnego (regex) umożliwiają zdefiniowanie wzorców logicznych, których można użyć do dopasowania i wyodrębnienia informacji z danych wejściowych. Encje typu regex są doskonałe do skomplikowanych wzorców pasujących do danych wejściowych użytkownika lub do zezwolenia na określone odmiany, które użytkownik może sformatować lub wprowadzić w rozmowie.

Na przykład można użyć encji wyrażenia regularnego do identyfikowania takich elementów, jak identyfikator śledzenia, numer licencji, numer karty kredytowej lub adres IP ciągów wprowadzanych przez użytkownika do pomocnika.

Zrzut ekranu okna tworzenia encji z wyróżnioną opcją Regex.

Wybranie tej opcji podczas tworzenia encji powoduje pokazanie okienka, w którym można określić nazwę encji, opcjonalny opis i wprowadzić wzorzec wyrażenia regularnego, który powinien być używany do dopasowania i wyodrębniania elementów encji z wprowadzonych danych.

Zrzut ekranu okienka encji wyrażenia regularnego.

W encji wyrażenia regularnego usługi Copilot Studio jest używana składnia wyrażeń regularnych .NET.

Domyślnie we wzorcach jest rozróżniana wielkość liter, co powoduje, że w ciągu wzorca należy użyć opcji wyrażenia regularnego (?i). W okienku encji wyrażenia regularnego znajdują się niektóre podstawowe przykłady, a dodatkowe informacje dotyczące składni i więcej przykładów można znaleźć w Języku wyrażenia regularnego — szybki przewodnik.

Jeśli trzeba wprowadzić wyrażenie regularne biorące pod uwagę wiele wzorców, można użyć operatora zmiany | w celu połączenia wyrażeń regularnych. Na przykład można połączyć dwa wzorce regex, aby szukać starych i nowych formatów kodu identyfikatora produktu.

Po zakończeniu tworzenia lub edytowania encji wybierz opcję Zapisz, aby zapisać i powrócić do listy encji. Wybierz opcję Zamknij, aby odrzucić zmiany (użytkownik będzie miał możliwość powrotu do edytowania encji w przypadku przypadkowego wybrania niewłaściwej opcji).

Korzystanie z encji w konwersacji

Teraz, po przekazaniu do pomocnika wiedzy na temat sprzętu turystycznego przez utworzenie encji kategorii produktu i kilku innych encji niestandardowych, można zacząć z nich korzystać podczas tworzenia konwersacji pomocnika.

  1. Przejdź do strony tematów pomocnika, którego chcesz edytować.

  2. Otwórz temat encji, którą chcesz zebrać.

  3. Wybierz ikonę Dodaj węzeł , a następnie wybierz Zadaj pytanie.

  4. W obszarze Identyfikacja wybierz encję utworzoną w obszarze encji niestandardowych.

    Węzeł pytania z wybraną encją.

  5. Możesz również wybrać elementy, które mają być wyświetlane jako przyciski. Na przykład jeśli chcesz, aby niektóre kategorie były wyświetlane jako przyciski ułatwiające użytkownikom wybieranie ich jako danych wejściowych, możesz po prostu wybrać opcję Wybierz opcje użytkownika, a następnie wybrać elementy z listy zawierającej elementy dodane podczas tworzenia encji niestandardowej.

    Zrzut ekranu przedstawiający wybór wartości encji, które mają być wyświetlane jako przyciski w czasie wykonywania.

  6. W razie potrzeby nazwij zmienną dotyczącą danych wyjściowych odpowiedzi użytkownika.

Wypełnianie miejsc na wartość

Wypełnianie miejsc na wartość jest pojęciem z zakresu rozumienia języka naturalnego, które oznacza zapisywanie wyodrębnionej encji w obiekcie. Jednak w usłudze Copilot Studio wypełnianie miejsca na wartość oznacza umieszczania wyodrębnionej wartości encji w zmiennej.

Jako przykładu będziemy nadal używać tematu dotyczącego sprzętu turystycznego, który jest wyzwalany przez wpisanie frazy „Chcę coś kupić“ w czacie testowym.

Temat został pomyślnie wyzwolony, a w bocie jest wyświetlane pytanie o kategorię produktu, a także dostępne do wyboru przycisku określone podczas tworzenia węzła Zadaj pytanie. W drzewie sesji dialogowych śledzenie między tematami wskazuje również, że pomocnik działa na węźle pytania, który właśnie został edytowany.

śledzenie między tematami.

Użytkownik może użyć wstępnie zdefiniowanych możliwości wyboru, wybierając jeden z przycisków. Alternatywnie może również wpisać na przykład „Wycieczki piesze” i sprawdzić, czy ten element jest mapowany na „Wycieczki”, ponieważ te wyrazy były zdefiniowane jako synonimy.

Dodatkowe śledzenie między tematami.

Śledzenie między tematami polega na tym, że sesja dialogowa jest poprawnie kierowana do ścieżki, w której kategoria produktów to „Wycieczka”. Wartość zmiennej można sprawdzić z poziomu okna zmienna obserwacji zmiennych u dołu kanwy tworzenia. W oknie obserwacji wyświetlana jest zmienna o wartości „Wycieczki”.

W gruncie rzeczy miejsca na wartość zostały wypełnione przez wstawienie wyodrębnionej encji „Wycieczki” w zmiennej VarCampType.

Okno obserwacji zmiennych.

Można również użyć funkcji określanej jako „proaktywne wypełnianie miejsc na wartość”, w przypadku której użytkownik może podać wiele informacji mapowanych na wiele encji. Pomocnik może automatycznie zrozumieć, do której encji należą informacje. W przypadkach, gdy nie ma pewności co do zamierzonego mapowanie, użytkownik będzie monitowany o dokonanie odpowiednich wyborów.

W tym przykładzie użytkownik napisał „Nudzi mi się, ale lubię chodzić po górach”. Ten komunikat zawiera zarówno wyrażenie wyzwalające, że użytkownik chce pomagać w działaniach na świeżym powietrzu, a także udostępnia drugi fragment informacji, „chodzenie po górach”, który jest zdefiniowanym przez encję synonimem pieszej wycieczki. W tym przypadku pomocnik wypełnia obie encje do wybrania działania na zewnątrz i dla typu działania.

Wypełnianie wielu gniazd i proaktywne wypełnianie gniazd.

W obszarze śledzenia między tematami widać, że pomocnik pobiera dane wejściowe tego użytkownika i inteligentnie pomija węzeł pytania o typ działania.

Pomocnik zawsze aktywnie nasłuchiwuje wprowadzania informacji przez użytkownika, zapamiętując je z góry, aby można było pominąć zbędne kroki.

Ponownie uruchom testowanie i wypróbuj inny przypadek. W tej rundzie możesz jeszcze dodać kilka węzłów pytań o elementy, takie jak ile masz czasu na działanie (używając encji Czas trwania), a także przedział cenowy (korzystający z encji Pieniądze).

Tym razem, gdy pytanie dotyczące kategorii produktu zostanie przedstawione, zamiast podawać pomocnikowi tylko kategorię produktu, użytkownik może powiedzieć „Chcę kupić parę butów trekkingowych tańszych niż 100 USD". W tym przykładzie pomocnik może nie tylko przekierowywać do właściwej ścieżki kategorii produktów trekkingowych, ale również aktywnie wypełnia miejsca na wartość, które zadają pytania dotyczące typu sprzętu trekkingowego i zakresu cen.

śledzenie między tematami dotyczącymi kategorii produktów i cen.

Aktywne wypełnianie miejsc na wartość może być ręcznie sterowane na poziomie węzła. Aby zawsze monitować o pytanie w określonym węźle, niezależnie od tego, czy miejsce na wartość zostało wypełnione przez poprzednie odpowiedzi użytkownika, można wyłączyć opcję Pomiń pytanie dla tego węzła pytania. Aby wyłączyć opcję Pomiń pytanie, wykonaj następujące kroki.

  1. Wybierz ikonę menu Więcej () węzła Pytanie, a następnie wybierz opcję Właściwości. Zostanie wyświetlony panel Właściwości pytania.

    Otwórz okienko właściwości Pytanie.

  2. W panelu Właściwości pytania wybierz Zachowanie pytania.

  3. W panelu Zachowania pytania w obszarze Pomiń pytanie wybierz Pytaj każdym razem i wybierz Zapisz u góry strony.

    Pomiń pytanie.