Typy

Typy umożliwiają skonfigurowanie Asystenta NLU (rozumienia języka naturalnego) do wyodrębniania uporządkowanych danych z danych wejściowych użytkownika. Ty typów danych można używać w następujących sytuacjach:

  • W intentach możesz opisywać wyrażenia na potrzeby trenowania za pomocą typów, aby: tworzyć przedziały. Gdy użytkownik powie coś, co pasuje do boksu, mechanizm NLU wyodrębnia go jako typowy parametr, dzięki czemu można go przetworzyć w scene.

  • Na etapie wypełniania boksu w scenie możesz określić wiele przedziałów, które użytkownik ma udostępnić, zanim będzie mógł przejście lub wyjście poza scenę.

  • Na etapie warunków sceny możesz podstaw logika określająca, czy parametr ma konkretną wartość zdefiniowaną w typie.

Typy niestandardowe

Typy niestandardowe pozwalają utworzyć własną specyfikację typu do powiadomienia NLU przypisać zbiór wartości do jednego klucza; Możesz określić różne typy sposoby:

  • 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 – ta funkcja umożliwia wpisy z więcej niż jednym dopasowane słowo, 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, komponent procesor języka może akceptować nieznane słowa lub wyrażenia na podstawie otoczenia dane wejściowe i trenowanie zamiarów, takie jak produkty, które można dodać do sklepu spożywczego z listy.
  • Wyrażenia regularne pozwalają typowi dopasować wartości za pomocą funkcji regularnych. wzorów wyrażenia na podstawie standard Google RE2.
  • Tekst swobodny umożliwia dopasowanie typu. ze wszystkim, co mówi użytkownik. Dodaje adnotacje intencja tego typu pozwala przetwarzać wszystkie dane wejściowe jako parametr, możesz przesyłać fajki do własnej NLU.

Typy systemów

Typy systemów umożliwiają dodawanie adnotacji do dobrze znanych danych i wyodrębnianie ich z danych wejściowych użytkownika na podstawie dostarczonych przez system danych i wartości treningowych. Następujące typy systemów są obsługiwane:

Typ Opis
actions.type.DateTime Zawiera datę, godzinę i strefę czasową na podstawie ustawień urządzenia użytkownika. Dostępne w przypadku wypełniania przedziałów i adnotacji do wyrażenia treningowego.
actions.type.Date Zawiera tylko datę. Funkcja dostępna tylko do wypełniania przedziałów.
actions.type.Time Zawiera tylko czas. Funkcja dostępna tylko do wypełniania przedziałów.
actions.type.Number Typ Number pasuje do liczb porządkowych i kardynalnych liczby.

Użycie usług DateTime, Date i Time

Te typy działają różnie w zależności od miejsca, w którym użyjesz typu i tagu danych wejściowych użytkownika pasujących do typu.

Używanie z intencjami

Dodawanie adnotacji do wyrażeń treningowych w intencjach obsługuje tylko typ DateTime. Użytkownik dane wejściowe nie muszą odpowiadać całej wartości DateTime. Jeśli na przykład użytkownik podaje tylko rok, parametr sesji może wyglądać tak:

"date_time": {
  "year": 2019
}

Użycie z wypełnianiem przedziałów

Wypełnianie przedziałów obsługuje DateTime, Date i Time.

  • Jeśli typ przedziału to DateTime, Asystent będzie prosić użytkownika o to, aż zostanie pełna jest podana.
  • Jeśli typ przedziału to Date, Asystent poprosi użytkownika o podanie daty jest podana. Po zebraniu otrzymasz parametr z pełnym DateTime z godziną ustawioną na 00:00.
  • Jeśli typ przedziału to Time, Asystent prosi użytkownika do jest podana. Po zebraniu parametr odbierany sygnał będzie miał pełną DateTime obiekt z datą ustawioną na bieżącą.

Załóżmy na przykład, że użytkownik w Los Angeles powiedział: „OK Google, utwórz przypomnienie 15 stycznia 2024 r. o 20:00”. Gdy pole DateTime jest wyodrębniane jako część przedziału pełny parametr może wyglądać tak:

"date_time": {
  "day": 15,
  "hours": 20,
  "minutes": 0,
  "month": 1,
  "nanos": 0,
  "seconds": 0,
  "time_zone": {
    "id": "America/Los_Angeles"
  },
  "year": 2024
}

Używanie z warunkami

Warunki umożliwiają korzystanie tylko z cyfr i ciągów znaków, więc użycie najwyższego poziomu Parametr DateTime daje dla warunku wynik False. Przykład:

  • $session.params.my_dateTime.day > 5 jest prawidłowym warunkiem, ponieważ Wartość day jest liczbą i jest obsługiwana.
  • $session.params.my_dateTime > "01-01-2010" jest nieprawidłowym warunkiem, ponieważ „DateTime” najwyższego poziomu Obiekt nie jest liczbą ani ciągiem znaków.

Zastąpienia typu środowiska wykonawczego

Zastąpienia typów środowiska wykonawczego pozwalają dynamicznie tworzyć lub modyfikować typy w i realizacji. Ta funkcja umożliwia dodanie lub zastąpienie specyfikacji typu w w środowisku wykonawczym. Możesz na przykład sprawdzić źródło danych backendu, aby wczytać codzienne menu produkty do określonego typu w realizacji.

Więcej informacji znajdziesz w przewodniku po webhookach. na temat tworzenia zastąpień typów.