Używanie zmiennych

Ważne

Możliwości i funkcje Power Virtual Agents są teraz częścią Microsoft Copilot Studio w wyniku znacznych inwestycji w generatywną AI i poprawioną integracje z Microsoft Copilot.

Niektóre artykuły i zrzuty ekranów mogą odwoływać się do Power Virtual Agents podczas aktualizowania dokumentacji i zawartości szkoleniowej.

Zmiennych można używać do zapisywania odpowiedzi klientów i ponownego wykorzystania ich zawartości w dalszej części rozmowy.

Zmiennych można również używać do tworzenia wyrażeń logicznych, które dynamicznie przekierowują klienta do różnych ścieżek konwersacji. Można na przykład zapisać nazwę klienta w zmiennej o nazwie UserName, a pracownik może zwracać się do klienta przy użyciu tej nazwy w trakcie rozmowy.

Zmienne mogą być również przekazywane do i zwracane z innych tematów i przepływów usługi Power Automate.

Zmienne mogą istnieć na trzech poziomach lub w trzech zakresach:

  • Temat: zmienne tematu mogą być używane tylko w tematach, w których są tworzone. Ten zakres jest domyślny w przypadku tworzonych przez Ciebie zmiennych.
  • Zmienne globalne być używane we wszystkich tematach. Zakres zmiennej tematu można zmienić, aby była zmienną globalną.
  • Zmienne systemowe są tworzone automatycznie przy użyciu pomocnika. Dostarczają one bardziej kontekstowych informacji o konwersacji lub użytkowniku. Są one dostępne we wszystkich tematach.

Typy zmiennych

Zmienna jest skojarzona z typem podstawowym. Typ określa, jakie wartości może zawierać zmienna oraz operatory, których można użyć podczas konstruowania wyrażenia logicznego przy jej użyciu.

Type opis
String Sekwencja znaków używanych do reprezentowania tekstu
Wartość logiczna Wartość logiczna, która może być tylko wartością true lub false
telefonu Dowolna liczba rzeczywista
Table Lista wartości, ale wszystkie wartości muszą być tego samego typu
Nagraj Zbiór par typu nazwa-wartość, w których mogą być wartości dowolnego typu
DateTime Data, godzina, dzień tygodnia lub miesiąc względem punktu w czasie
Opcja wyboru Lista wartości ciągów ze skojarzonymi synonimami
Pusta Symbol zastępczy elementu „brak wartości” lub „nieznana wartość”. Aby uzyskać więcej informacji, zobacz temat Wartości puste w programie Power Fx

Typ zmiennej jest ustawiany przy pierwszym przypisywaniu do niego wartości Po tym typ tej zmiennej jest stały i nie można przypisać do niej wartości innych typów. Na przykład zmiennej z wartością początkową 1 przypisano typ Liczba. Próba przypisania jej do ciągu wartości "apples" spowoduje błąd.

Podczas testowania pomocnika zmienna może tymczasowo występować jako typ nieznany. Nieoznaona zmienna nie została jeszcze przypisana do wartości.

Kolejność zmiennych jest określana od góry do dołu na kanwie tworzenia. To oznacza, że węzły u góry kanwy tworzenia są używane przed węzłami u dołu. Podczas tworzenia odgałęzień z węzłów Warunek odgałęzienia są uporządkowane od lewej do prawej strony. To oznacza, że węzły w lewym odgałęzieniach są używane przed węzłami w samym odgałęzieniach po prawej stronie.

Jednostki

Microsoft Copilot Studio używa encji do identyfikowania określonego typu informacji z odpowiedzi użytkownika. Zidentyfikowane informacje są zapisywane w zmiennej typu, która jest odpowiednia dla tych informacji. W poniższej tabeli przedstawiono podstawowy typ zmiennej, który jest skojarzony z wstępnie zbudowanymi encjami.

Jednostka Typ podstawowy zmiennej
Wiele opcji wyboru Opcja wyboru
Cała odpowiedź użytkownika String
Wiek telefonu
Wartość logiczna Wartość logiczna
City String
Color String
Kontynent String
Kraj lub region String
Data i godzina DateTime
Email String
Wydarzenie String
Integer Integer
Język String
Money telefonu
telefonu telefonu
Liczba porządkowa telefonu
Organizacja String
Wartość procentowa telefonu
Imię i nazwisko osoby String
Numer telefonu String
Punkt orientacyjny String
Szybkość telefonu
State String
Ulica String
Temperatura telefonu
URL String
Weight telefonu
Kod pocztowy String
Obiekt niestandardowy Opcja wyboru

Tworzenie zmiennej

Każdy węzeł monitujący o wybranie zmiennej jako danych wyjściowych, taki jak węzeł Pytanie, automatycznie tworzy zmienną wyjściową odpowiedniego typu.

Zrzut ekranu węzła Pytanie z podświetloną nazwą i typem zmiennej domyślnej.

Wybieranie encji do użycia

Węzły Pytanie są domyślnie tworzone z wieloma opcjami wyboru. Aby użyć innej wstępnie utworzonej lub niestandardowej encji, zaznacz pole Identyfikuj i wybierz typ informacji, których powinien nasłuchiwać pomocnik.

Zrzut ekranu węzła Pytanie z podświetlonym otwartym menu Wybierz w celu zidentyfikowania i encją Nazwa osoby.

Zmienianie nazwy zmiennej

Podczas tworzenia zmienne mają automatycznie przypisywaną nazwę. Najlepszym rozwiązaniem jest nadanie zmiennych znaczących nazw, aby ich przeznaczenie było jasne dla wszystkich innych, którzy muszą zarządzać pomocnikiem.

  1. Wybierz zmienną, aby otworzyć ją w okienku właściwości zmiennych.

  2. W obszarze Nazwa zmiennej wprowadź nową nazwę zmiennej.

Ustaw zmienną

Zazwyczaj do zapisania danych wejściowych użytkownika w zmiennej będzie używany węzeł Pytanie. W niektórych przypadkach chcesz jednak samodzielnie ustawić wartość. W takim przypadku należy użyć węzła Ustaw wartość zmiennej.

  1. Wybierz pozycję Dodaj węzeł (+), aby dodać węzeł, a następnie wybierz opcję Ustaw wartość zmiennej.

  2. Zaznacz pole w obszarze Ustaw zmienną, a następnie wybierz pozycję Utwórz nową zmienną.

    Zrzut ekranu przycisku Utwórz nową zmienną.

    Została utworzona nowa zmienna. Jej typ jest nieznany, dopóki nie zostanie przypisana do niej wartość.

    Zrzut ekranu przedstawiający węzeł Ustaw zmienna wartość z nową wartością nieznanego typu.

  3. W przypadku Do wartości przypisz wartość, korzystając z jednej z następujących opcji:

    • Wpisz wartość literału.
    • Wybierz istniejącą zmienną tego samego typu. Ta akcja ustawi Twoją zmienną na taką samą wartość jak wybrana zmienna.
    • Użyj formuły Power Fx. Formuły Power Fx są przydatne w przypadku bardziej złożonych typów, w których nie można używać wartości literałów, takich jak Tabela i Typy rekordów.

Użyj wartości dosłownych

Zamiast wybierać wartość zmiennej, możesz wprowadzić wartość literału w dowolnej zmiennej.

Zrzut ekranu przedstawiający użycie wartości dosłownej dla zmiennej productName.

Zrzut ekranu wartości dosłownej jako dane wejściowe dla zmiennej w węźle przekierowania.

Węzeł próbuje zinterpretować wartości literałów jako typ Ciąg, Liczba lub Wartość logiczna. Na przykład wartość 123 jest interpretowana jako liczba. Jeśli chcesz, aby wartość była w zamian interpretowana jako wartość ciągu, możesz umieścić tę wartość w podwójnych cudzysłowach, na przykład tak: "123".

W przypadku niektórych scenariuszy lub gdy używasz bardziej złożonych typów, użyj odpowiedniej formuły programu Power Fx, aby ustawić określony typ.

Okienko Zmiennych

W okienku Zmienne można wyświetlić wszystkie zmienne dostępne w temacie, niezależnie od tego, w których węzłach są definiowane lub używane. Dla każdej zmiennej można wybrać, czy może otrzymywać jej wartości z innych tematów, zwracać jej wartość do innych tematów, czy mieć obie te możliwości. Zmienną, której właściwości chcesz edytować, można również wybrać w okienku Właściwości zmiennej.

Aby otworzyć okienko Zmienne, na pasku menu tematu wybierz pozycję Zmienne.

Zrzut ekranu okienka Zmienne na kanwie tworzenia Microsoft Copilot Studio z wyróżnionym przyciskiem Zmienne.

Okienko Właściwości zmiennej

W okienku właściwości zmiennej można zmienić nazwę zmiennej, sprawdzić, gdzie jest używana, lub przekonwertować ją na zmienną globalną. Nie można jednak przekonwertować jej ze zmiennej globalnej z powrotem na zmienną tematu. Można także wybrać, czy może ona odbierać wartości z, czy też przekazywać swoje wartości do innych tematów.

Aby otworzyć okienko właściwości zmiennej, wybierz zmienną w okienku Zmienne. Okienko właściwości zmiennej można również otworzyć, wybierając zmienną w dowolnym węźle.

Zrzut ekranu przedstawiający okienko właściwości Zmienna.

Zmienne systemowe

Każdy pomocnik ma wbudowane zmienne systemowe, które dostarczają dodatkowych informacji o konwersacji.

Zrzut ekranu zmiennych systemowych w temacie pomocnika.

Nie wszystkie zmienne systemowe są wyświetlane na liście. Te ukryte zmienne systemowe muszą być dostępne za pomocą formuły Power Fx.

Aby używać zmiennych systemowych w formułach Power Fx, należy dodać System. przed nazwą zmiennej. Aby na przykład uwzględnić zmienną systemową User.DisplayName w formule, należy odwołać się do tej zmiennej jako System.User.DisplayName.

Nazwa/nazwisko Type Ukryte Definicja
Activity.Channel opcja wyboru widoczne Identyfikator kanału bieżącej konwersacji
Activity.ChannelData dowolny ukryte Obiekt zawierający zawartość specyficzną dla kanału
Activity.ChannelId string ukryte Identyfikator kanału bieżącej konwersacji jako ciąg
Activity.From.Id string ukryte Unikalny identyfikator nadawcy specyficzny dla kanału
Activity.From.Name string ukryte Przyjazna dla użytkownika ustalona dla kanału nazwa nadawcy
Activity.Name string widoczne Nazwa zdarzenia
Activity.Text string widoczne Najnowsza wiadomość wysłana przez użytkownika
Activity.Type opcja wyboru widoczne Typ działania
Activity.TypeId string ukryte Typ działania w postaci ciągu
Activity.Value dowolny ukryte Wartość nieograniczona
Bot.Name string widoczne Nazwa Twojego pomocnika
Channel.DisplayName string ukryte Wyświetlana nazwa kanału
Conversation.Id string widoczne Unikalny identyfikator bieżącej konwersacji
LastActivity.Id string widoczne Identyfikator wcześniej wysłanego działania
LastMessage.Id string widoczne Identyfikator poprzedniej wiadomości wysłanej przez użytkownika
LastMessage.Text string widoczne Poprzednia wiadomość wysłana przez użytkownika
Recognizer.TriggerMessage.Id string widoczne Identyfikator wiadomości użytkownika, która spowodowała wyzwolenie bieżącego tematu
Recognizer.TriggerMessage.Text string widoczne Wiadomość użytkownika, która spowodowała wyzwolenie bieżącego tematu
User.DisplayName string widoczne Nazwa wyświetlana zalogowanego użytkownika

Przekazywanie zmiennych między tematami

Podczas przekierowywania jednego tematu do innego można przekazać wartości zmiennych między tematem oryginalnym i docelowym. Przekazywanie zmiennych między tematami jest szczególnie przydatne, gdy we wcześniejszym temacie znajdują się już informacje, których potrzebuje późniejszy temat. Użytkownicy będą wdzięczni za to, że nie będą odpowiadać ponownie na te same pytania.

Odbieraj wartości z innych tematów

Gdy temat definiuje zmienną (na przykład w węźle Pytanie), pomocnik prosi użytkownika o wypełnienie wartości zmiennej. Jeśli wartość została już pozyskana przez pomocnika we wcześniejszym temacie, nie ma powodu, aby ponownie zadawać to pytanie. Dla tych przypadków można ustawić zmienną na Odbieraj wartości z innych tematów. Kiedy inne tematy przekierowują do tego tematu, może on przekazać wartość zmiennej (lub wartość literału) do tej zmiennej i pominąć pytanie. Prowadzi to do bezproblemowego doświadczenia użytkownika końcowego rozmawiającego z pomocnikiem.

W tym przykładzie użyjemy dwóch tematów: Powitanie i Rozmowa z klientem. Oba tematy zawierają pytanie o nazwę klienta. Jeśli jednak najpierw zostanie uruchomiony temat Powitanie, to pytanie zostanie pominięte w temacie Rozmowa z klientem. Zamiast tego zostanie użyta wartość przekazania z tematu Powitanie.

Oto przepływ tematu Rozmowa z klientem:

Zrzut ekranu przepływu konwersacji tematu Rozmowa z klientem.

Jak pokazano w okienku Testowanie pomocnika, jeśli temat jest najpierw wyzwalany, użytkownik jest pytany „Jak mam się do Ciebie zwracać?”. Wartość jest przechowywana w zmiennej ciągu o nazwie userName. Zmienna userName ma też ustawioną wartość z innych tematów. Temat kończy się wiadomością „Mam nadzieję, że Twój dzień jest udany, {userName}!”

Oto przepływ tematu Powitanie:

Zrzut ekranu przepływu konwersacji tematu Powitanie.

Jak pokazano w okienku Testowanie pomocnika, jeśli temat jest najpierw wyzwalany, użytkownik jest pytany „Jak masz na imię?”. Wartość jest przechowywana w zmiennej ciągu o nazwie UserName. Temat wysyła wiadomość „Miło mi Cię poznać {UserName}!”. Następnie przekierowuje on użytkownika do tematu Rozmowa z klientem, która wysyła wiadomość „Mam nadzieję, że Twój dzień jest udany, {userName}!”. Należy jednak zauważyć, że temat Rozmowa z klientem pominął ponowne pytanie o imię użytkownika. Zamiast tego została użyta wartość UserName przekazana z tematu Powitanie.

Na koniec oto ponownie druga konwersacja, tym razem z perspektywy tematu Rozmowa z klientem:

Zrzut ekranu przepływu konwersacji tematu Klient temat podczas pierwszego uruchomienia tematu powitania.

Przejdźmy teraz przez kolejne kroki, aby skonfigurować temat do odbierania wartości z innych tematów. Użyjemy bieżącego przykładu, ale te same kroki będą działać w dowolnym momencie, gdy temat będzie musiał uzyskać wartość z wcześniejszego tematu.

Konfigurowanie tematu docelowego

Temat docelowy to temat, do którego następuje przekierowanie i który będzie odbierać wartości z innych tematów. W naszym przykładzie to Rozmowa z klientem.

  1. Utwórz temat docelowy lub przejdź do niego.

  2. Dodaj węzeł Pytanie i wprowadź wiadomość What should I call you?.

  3. W obszarze Zidentyfikuj wybierz wstępnie zbudowaną encję Imię i nazwisko osoby.

  4. Wybierz zmienną, aby otworzyć okienko Właściwości zmiennej. Nazwij ją userName, a następnie wybierz opcję Odbieraj wartości z innych tematów.

    Zrzut ekranu przedstawiający temat Rozmowa z klientem ze zmienną userName i wyróżnieniami jej właściwości.

  5. Dodaj węzeł Wiadomość.

  6. W polu wiadomości wpisz I hope you're having a wonderful day, .

  7. Wybierz ikonę Wstaw zmienną ({x}), a następnie wybierz opcję userName.

  8. Wybierz miejsce za zmienną i wpisz !.

  9. Zapisz temat.

Konfigurowanie tematu źródłowego

Temat źródłowy to temat dokonujący przekierowania, czyli ten, który dostarcza wartość przekazywaną do tematu źródłowego. W naszym przykładzie jest to temat Powitanie.

  1. Przejdź do tematu źródłowego.

  2. Wybierz węzeł Przekieruj i wybierz temat docelowy.

  3. Wybierz pozycję + Dodaj wartość wejściową, a następnie wybierz zmienną z tematu docelowego, do którego chcesz przekazać wartość.

    Zrzut ekranu przedstawiający temat powitania zmiennej userName dodanej jako dane wejściowe w węźle przekierowywania.

  4. Wybierz ikonę >, a następnie wybierz zmienną, której wartość chcesz przekazać.

    Zrzut ekranu przedstawiający temat powitania z zaznaczoną wartością zmiennej UserName.

    Węzeł Przekieruj powinien teraz wyglądać następująco:

    Zrzut ekranu przedstawiający temat powitania z zakończonym węzłem Przekierowanie.

  5. Zapisz temat.

Zwróć wartości do oryginalnych tematów

Kiedy temat jest przekierowywany i uzyskuje zmienną, zadając pytanie lub w inny sposób, zmienna może być zwrócona do oryginalnego tematu. Zmienna staje się również częścią oryginalnego tematu i może być używana jak każda inna zmienna. Informacje uzyskiwane przez pomocnika są więc dostępne w różnych tematach, co zmniejsza konieczność wyszukiwania zmiennych globalnych.

Kontynuujmy pracę z przykładem z poprzedniej sekcji. Zadajmy nowe pytanie w temacie Rozmowa z klientem, a następnie zwrócimy odpowiedź do tematu Powitanie.

Konfigurowanie tematu źródłowego na potrzeby zwróconej zmiennej

Gdy zmienna jest zwracana do tematu, temat źródłowy to temat, do którego następuje przekierowanie, czyli ten, który zapewnia wartość, która zostanie przekazana z powrotem do tematu oryginalnego. W tym przykładzie to Rozmowa z klientem.

  1. Przejdź do tematu źródłowego.

  2. Dodaj węzeł Pytanie i wprowadź wiadomość What city do you live in?.

  3. W obszarze Zidentyfikuj wybierz wstępnie zbudowaną encję Miasto.

  4. Wybierz zmienną, aby otworzyć okienko Właściwości zmiennej. Nazwij ją userCity, a następnie wybierz opcję Zwróć wartości do oryginalnych tematów.

    Zrzut ekranu przedstawiający temat Rozmowa z klientem ze zmienną userCity i wyróżnieniami jej właściwości.

  5. Zapisz temat.

Konfigurowanie tematu docelowego na potrzeby zwróconej zmiennej

Gdy zmienna jest zwracana do tematu, temat docelowy to temat dokonujący przekierowania, czyli ten, który będzie odbierać wartości z innych tematów. W naszym przykładzie jest to temat Powitanie.

  1. Przejdź do tematu docelowego.

  2. Zmienna wybrana w temacie źródłowym powinna być wyświetlana w węźle Przekieruj jako zmienna wyjściowa.

    Zrzut ekranu przepływu konwersacji tematu Powitanie ze zwróconą zmienną w węźle Przekierowywanie.

  3. Zapisz temat.