Dialogflow jak działa

Dialogflow – jak to działa? [2]

W poprzednim wpisie stworzyliśmy nowego agenta, który będzie pełnił rolę chatbota pomagającego w nauce słówek angielskich. Ale czym właściwie jest agent w Dialogflow? Na to pytanie spróbuję odpowiedzieć dzisiaj, a przy okazji opiszę jak działa i z jakich elementów jest zbudowany Dialogflow.

Agent

Agent to wyuczony model, który pozwala przekształcić wiadomość od użytkownika, w odpowiednią strukturę danych, a ta z kolei pozwala wygenerować odpowiedź do użytkownika. Każdy agent składa się z jednego lub wielu „Intent” (tak jak napisałem we wcześniejszym artykule – nie będę tłumaczył tego typu nazw używanych w systemie), a każdy z nich mapuje wiadomość wejściową na wyjściową. Można więc powiedzieć, że każdy Intent to forma reguły jaką definiujemy w modelu. Procesowanie wiadomości od użytkownika polega na znalezieniu reguły, która najlepiej pasuje do wprowadzonej wiadomości, a następnie wygenerowanie wiadomości zwrotnej zgodnie z zawartą w regule logiką.

Intent

Wspomniany przeze mnie wcześniej „Intent” to w wolnym tłumaczeniu – zamiar, czyli definicja intencji użytkownika. Składa się ona z 3 podstawowych elementów:

  • Training phrases (frazy treningowe)
  • Action and Parameters (akcje i parametry)
  • Responses (odpowiedzi)

Training phrases, to zbiór fraz których użytkownik może użyć, jeśli ma on na myśli definiowany „zamiar”. Dialogflow rozszerza podane przez nas frazy i tworzy podobne automatycznie, budując na ich podstawie model, który będzie później dopasowywany. Wraz z rozwojem modelu rośnie ilość fraz wpisywanych i tworzonych automatycznie, co przekłada się na dokładność dopasowania. Przykładami takich fraz, których celem jest pytanie o pogodę, mogą być:

  • Jaka będzie dziś pogoda?
  • Jaka będzie pogoda za tydzień
  • itp.

Action and Parameters pozwalają na wyciąganie z wpisywanych fraz tzw. entities (encji), czyli parametrów wypowiedzi. Mogą być one używane następnie, aby wygenerować dokładną odpowiedź na zadane pytanie. Przykładami takich entities z powyższego przykładu mogą być:

  • dziś
  • za tydzień

Responses definiują odpowiedzi jakie otrzyma użytkownik, jeśli system dopasuje zdefiniowany intent. Mogą być one w postaci tekstu, głosu, obrazu lub jako specyficzne elementy, zależne od integrowanej platformy (np. galerie w Messengerze)

Dialogflow jak działa

 

Jak to działa?

Dialogflow jak działa

Zdjęcie pobrane z https://dialogflow.com/docs/intro/agents

Skoro wiemy już co to jest Agent i Intent, czas opisać w skrócie jak wygląda procesowanie wiadomości w Dialogflow:

  1. Po otrzymaniu wiadomości od użytkownika Agent przeszukuje zbiór zdefiniowanych Intent w poszukiwaniu najbardziej pasującego. Aby dopasować odpowiedni Intent korzysta z wyuczonego na podstawie podanych fraz treningowych modelu.
  2. Po znalezieniu najbardziej pasującego elementu, Agent znajduje w wiadomości użytkownika zdefiniowane Parameters (kolor, rozmiar, data itp.)
  3. Na końcu, na podstawie wszystkich wyciągniętych informacji, DIalogflow generuje odpowiedź/odpowiedzi (generowanie może polegać na odpytaniu zewnętrznego API)

Artykuł był budowany na bazie oficjalnej dokumentacji Dialogflow, którą znajdziecie TUTAJ. (zachęcam zresztą do zapoznania się z nią)

Poprzednie wpisy z tej serii:

Udostępnij: