Tworzenie modeli rozmów
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Model rozmowy określa, co użytkownicy mogą mówić do Twoich akcji i jak
Działania są dostępne dla użytkowników. Główne elementy modelu rozmowy
to zamiary, typy, sceny oraz
powiadomień. Po wywołaniu jednej z akcji Asystent Google
przekazuje użytkownikowi tę Akcję, a akcja rozpoczyna rozmowę z
użytkownika na podstawie modelu rozmowy, na który składają się:
Prawidłowe prośby użytkowników – aby określić, co użytkownicy mogą przekazywać do akcji,
i tworzą zbiór intencji, które rozszerzają funkcje NLU Asystenta,
rozumie prośby związane z Twoimi Akcjami. Każda intencja określa
wyrażenia na potrzeby trenowania, które opisują, co użytkownicy mogą powiedzieć, aby dopasować się do danego zamiaru.
Asystent NLU dodaje wyrażenia na potrzeby nauki, dodając do nich podobne wyrażenia.
agregacja tych wyrażeń tworzy model językowy intencji.
Logika działania i odpowiedzi – sceny przetwarzają intencje, przeprowadzają wymaganą logikę i generują prompty, które wracają do użytkownika.
.
Rysunek 1. Model rozmowy obejmuje intencje, typy
scen i promptów, które definiują wrażenia użytkownika. Intencje, które są
kwalifikujące się do wywołań, będą też uwzględniane w rozmowach.
Definiowanie prawidłowych żądań użytkowników
Aby określić, co użytkownicy mogą powiedzieć do Twoich akcji, musisz użyć kombinacji intencji
i typów plików. Intencje i typy użytkowników pozwalają dodać do NLU Asystenta
własne modele językowe. Dzięki intencjom i typom systemu możesz wykorzystać wbudowane funkcje
modeli językowych i wykrywaniu zdarzeń, takich jak
Asystent w ogóle nie wykrył żadnego sygnału wejściowego.
Utwórz intencje użytkownika
Intencje użytkowników pozwalają definiować własne wyrażenia treningowe, które określają,
co można powiedzieć do Akcji. NLU Asystenta używa tych wyrażeń do trenowania się
na poznawanie opinii użytkowników. Gdy użytkownicy wypowiedzą coś, co pasuje do
modelu językowego intencji użytkownika, Asystent pasuje do intencji i powiadomi Cię
dzięki której możesz przeprowadzić logikę i odpowiadać użytkownikom.
Rysunek 1. Przykład zamiaru użytkownika.
Aby utworzyć intencję użytkownika:
Na karcie Programowanie kliknij Intencje użytkowników > ⊕ (nowa intencja),
wpisz nazwę i naciśnij Enter, aby utworzyć intencję.
W menu po lewej stronie kliknij nowo utworzoną intencję. edytor intencji,
Dodaj do intencji wyrażenia wyrażenia na potrzeby trenowania. Dodaj jak najwięcej wyrażeń na potrzeby trenowania
jak to tylko możliwe, aby wytrenować asystenta NLU.
Opcjonalnie: dodaj adnotacje do wyrażeń na potrzeby trenowania, aby instruować Asystenta NLU, które ma go przeanalizować
i wyodrębnianie wpisywanych parametrów z danych wejściowych użytkownika, które pasują do określonego typu:
Określ, czy parametr jest listą. Dzięki temu parametr może zbierać dane
wiele wartości tego samego typu.
W sekcji Dodaj wyrażenia na potrzeby trenowania zaznacz tekst, który chcesz powtórzyć.
wybierz typ zastosowania. Poinformuje Asystenta NLU, że ma potraktować podświetlony tekst
tekst. Jeśli użytkownicy wypowiedzą coś, co pasuje do ich typu, NLU
wyodrębnia tę wartość jako parametr.
Utwórz intencje systemowe
Intencje systemowe pozwalają wykorzystać intencje za pomocą wstępnie zdefiniowanego języka
modele dla typowych zdarzeń, takich jak chęć zakończenia działania przez użytkownika lub
limit czasu wprowadzania danych. Aby utworzyć intencje systemowe:
Na karcie Programowanie kliknij Intencje systemowe. Zbiór intencji systemowych to
takie jak NO_MATCH, NO_INPUT i CANCEL.
Każda intencja systemowa zawiera własne moduły obsługi, które możesz dostosować
dla każdego typu intencji systemowej. Na przykład intencje systemowe umożliwiają
i wysyłania statycznych promptów po ich wystąpieniu.
Tworzenie typów niestandardowych
Typy niestandardowe pozwalają utworzyć własną specyfikację typu na potrzeby trenowania NLU.
zbiór wartości, które powinny być zmapowane na pojedynczy klucz.
Rysunek 2. Przykład typu niestandardowego.
Aby utworzyć typ niestandardowy:
Na karcie Programowanie kliknij Typy > ⊕ (Nowy typ).
Wybierz sposób podawania wartości typu w polu Jakiego rodzaju wartości z tym
wpisz „support?”:
Słowa i synonimy pozwalają zmapować wiele wartości na jeden klucz,
nazywamy wpisem. Typ może zawierać jeden lub wiele wpisów. Jeśli
wybierz tę opcję, możesz też włączyć te ustawienia NLU:
Włącz dopasowanie przybliżone – umożliwia wyświetlanie wpisów z więcej niż jednym słowem.
muszą zostać dopasowane, nawet jeśli słowa są wypowiadane w innej kolejności.
Akceptuj nieznane wartości – jeśli nie możesz określić wszystkich możliwych wartości,
Akceptuje nieznane słowa lub wyrażenia na podstawie otaczających je danych wejściowych
dane treningowe dotyczące zamiarów, takie jak produkty, które można dodać do sklepu spożywczego
z listy.
Wyrażenia regularne umożliwiają dopasowanie typu do wzorców wyrażeń regularnych.
oparte na standardzie Google RE2.
W przypadku tekstu swobodnego typ dopasowania pasuje do wypowiedzi użytkownika.
Wartości typów określ w sekcji Dodaj wpisy. Jeśli wybierzesz opcję Eksploracja swobodna
text, typ zostanie dopasowany do dowolnego tekstu, więc nie musisz niczego wpisywać.
Tworzenie logiki działań i reakcji
NLU Asystenta dopasowuje żądania użytkowników do intencji, tak aby akcja mogła
jak je zrozumieć. Sceny to potężne narzędzia logiczne, które pozwalają
przetwarzania zdarzeń podczas rozmowy.
Rysunek 3. Przykład sceny niestandardowej.
Tworzenie sceny
W sekcjach poniżej opisujemy, jak tworzyć sceny i definiować funkcje
dla każdego etapu cyklu życia sceny.
Aby utworzyć scenę:
Na karcie Programowanie kliknij Sceny > ⊕ (Nowa scena),
wpisz nazwę i naciśnij Enter, aby utworzyć scenę.
Kliknij nowo utworzoną scenę w menu po lewej stronie. edytora Scene,
Zdefiniuj konfigurację jednorazową
Gdy scena po raz pierwszy stanie się aktywna, możesz wykonać jednorazowe zadania
Po wejściu. Etap „Wejście” jest wykonywany tylko raz i jest jedyną
który nie jest uruchamiany w pętli wykonywania sceny.
W danej scenie kliknij scenę Po wejściu, aby określić jej funkcje.
Na tym etapie możesz określić te funkcje:
Wywołaj webhooka – aktywuje webhooka. Zobacz webhooki
dokumentacji z dodatkowymi informacjami o webhookach.
Wysyłaj prompty – możesz określić statyczne prompty dla użytkownika, aby wiedział, jak
kontynuować rozmowę. Patrz dokumentacja promptów
.
.
Rysunek 4. Przykład sceny wejścia na scenę.
Sprawdź warunki
Warunki umożliwiają sprawdzanie wypełnienia przedziałów, pamięci sesji, miejsca na dane użytkownika
parametry pamięci domowej do sterowania procesem wykonywania sceny.
Na scenie kliknij ikonę +, aby przejść do etapu Warunek.
Edytor warunków jest widoczny po prawej stronie. Możesz określić następujące elementy
funkcje na tym etapie:
Warunek – określ rzeczywistą instrukcję warunkową, która spowoduje wyłączenie logiki.
Składnię znajdziesz w dokumentacji warunków.
i informacjami o nich.
.
Wywołaj webhooka – aktywuje webhooka. Zobacz webhooki
dokumentacji z dodatkowymi informacjami o webhookach.
Wysyłaj prompty – określa statyczne prompty, które mają być wysyłane do użytkownika, aby
dowiedzieć się, jak kontynuować rozmowę. Zobacz komunikaty
dokumentacji, aby dowiedzieć się więcej o określaniu promptów.
Przejście – określa scenę, do której następuje przejście, gdy zdarzenie warunkowe
jest prawdziwe.
.
.
Rysunek 5. Przykład etapu warunków sceny
.
.
Zdefiniuj wypełnianie przedziałów
Przedziały umożliwiają wyodrębnianie wpisywanych parametrów z danych wejściowych użytkownika.
W edytorze sceny kliknij ikonę + odpowiadający etapowi Wypełnianie boksu.
dla boksu zostanie wyświetlony po prawej stronie. Możesz określić następujące elementy
właściwości boksu:
Nazwa boksu: określa nazwę boksu. Jeśli chcesz skorzystać
mapowania wartości przedziału, użyj tej samej nazwy
odpowiadającego mu parametru intencji.
Typ przedziału: określa typ boksu w systemie.
lub typ niestandardowy.
Ten boks jest wymagany: oznacza ten boks jako wymagany. Jeśli ta opcja jest włączona, przedział czasu
wypełnianie nie zostanie ukończone, dopóki ten boks nie zostanie wypełniony.
Przypisz wartość domyślną do tego boksu: określa domyślną wartość dla boksu.
odczytywany z określonego parametru sesji.
Dostosuj zapis zwrotny wartości przedziału: określa parametr sesji, który ma być utrwalony.
po zakończeniu wypełniania.
Weryfikacja boksu: aktywuj webhooka po wypełnieniu boksu. To ustawienie
dotyczy wszystkich przedziałów.
Wywołaj webhooka (uruchamia się, gdy wymagany jest boks): aktywuje webhooka.
Więcej informacji znajdziesz w dokumentacji webhooków
webhooki.
Wysyłaj prompty (włączone, gdy przedział jest wymagany): określa prompty statyczne.
wysłać użytkownikowi, aby wiedział, co zrobić dalej. Zobacz
dokumentów, gdzie znajdziesz więcej informacji o określaniu
prompty.
W przypadku niektórych typów przedziałów (np. związanych z transakcjami lub zaangażowaniem użytkowników):
pojawi się dodatkowa sekcja, w której możesz skonfigurować przedział. Boks
mogą zmienić tryb konwersacyjny u użytkowników w zależności od
przez użytkowników.
Aby skonfigurować przedział, podaj właściwości w obiekcie JSON albo w
fulfillment (określana jako parametr sesji) lub we wbudowanym edytorze JSON.
Właściwości poszczególnych typów boksów znajdziesz w
Dokumentacja formatu JSON usługi Actions Builder. Na przykład actions.type.DeliveryAddressValue
typ boksu odpowiada treści referencyjnej dla
DeliveryAddressValue.
gniazdo.
Rysunek 6. Przykład ustawień wypełniania przedziałów w scenie.
Mapowanie wartości przedziału
W wielu przypadkach wcześniejsze dopasowanie intencji może obejmować parametry, które częściowo lub
w całości wypełnić wartości przedziałów odpowiedniej sceny. W takich przypadkach wszystkie przedziały
wypełnione przez parametry intencji są mapowane na wypełnienie przedziału sceny, jeśli nazwa boksu
pasuje do nazwy parametru intencji.
Jeśli na przykład użytkownik pasuje do zamiaru zamówienia napoju, mówiąc „Chcę
aby zamówić dużą kawę waniliową”, czyli istniejące przedziały do wyboru rozmiaru, smaku i napoju
są uznawane za wypełnione, jeśli dana scena definiuje tę samą
przedziały czasu.
Dane wejściowe procesu
Na tym etapie możesz dopasować NLU Asystenta do intencji użytkownika.
Dopasowanie intencji możesz zawęzić do konkretnej sceny, dodając odpowiednie intencje
do sceny. Dzięki temu możesz kontrolować przebieg rozmowy, mówiąc do Asystenta
aby dopasować je do konkretnych intencji, gdy konkretne sceny są aktywne.
W danej scenie kliknij ikonę +, aby przejść do sekcji Obsługa intencji użytkownika lub
Etap obsługi intencji systemowych. Pojawi się edytor modułu obsługi intencji
po prawej. Możesz określić te funkcje intencji
moduł obsługi:
Intencja – określa intencję, która ma być dopasowana do danej sceny.
Wywołaj webhooka – aktywuje webhooka. Zobacz webhooki
dokumentacji, w której znajdziesz więcej informacji o obsłudze żądań webhooka.
Wysyłanie promptów – możesz ustawić statyczne prompty, aby użytkownik wiedział, jak
odpowiedzieć. Więcej informacji znajdziesz w dokumentacji dotyczącej próśb.
i określania promptów.
Przejście (jeśli dotyczy) – określa scenę, na którą następuje przejście, gdy
pasują do określonej intencji.
.
Rysunek 7. Przykład modułu obsługi intencji użytkownika sceny.
Rysunek 8. Przykład modułu obsługi intencji systemowej sceny.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-07-26 UTC."],[],["The core content outlines how to build conversational Actions using the Actions Builder SDK. Key actions include: defining valid user requests through **intents** and **types** to augment the Assistant's NLU; creating **scenes** to process intents and manage conversation flow; and generating **prompts** for user responses. **Intents** are defined by training phrases, while **types** define a set of values. **Scenes** execute logic, check conditions, and define slot filling. The system also manages **system intents** for common user actions.\n"]]