Informacje o tym ćwiczeniu (w Codelabs)
1. Zanim zaczniesz
Encje to mechanizm w Dialogflow, który służy do identyfikowania i wyodrębniania przydatnych danych z wejściowych danych w języku naturalnym. Intencje pozwalają agentowi zrozumieć motywację kryjącą się za konkretnym działaniem użytkownika, a jednostki służą do wyodrębniania konkretnych informacji, o których wspominają użytkownicy – od adresów po nazwy produktów i kwoty z jednostkami. Wszystkie ważne dane, które chcesz uzyskać z żądania użytkownika, będą miały odpowiedni element.
Poniżej znajdziesz opis 3 rodzajów elementów:
- Podmioty systemowe, które są dostępne w Dialogflow, umożliwiają agentom wyodrębnianie informacji o szerokim zakresie pojęć bez dodatkowej konfiguracji. Na przykład jednostki systemowe umożliwiają wyodrębnianie dat, godzin i lokalizacji z danych wejściowych w języku naturalnym.
- Elementy dewelopera, które definiujesz, wyodrębniają informacje o koncepcjach wykraczających poza te, które obejmują elementy systemowe. Na przykład marka może utworzyć podmiot dewelopera, aby rozpoznawać unikalny zestaw nazw produktów.
- Zdefiniowane przez Ciebie encje sesji mają zastosowanie tylko do konkretnej rozmowy. Możesz na przykład utworzyć encję sesji, aby reprezentować opcje ograniczone czasowo, które są dostępne dla konkretnego użytkownika podczas dokonywania rezerwacji.
Wymagania wstępne
Zanim przejdziesz dalej, musisz ukończyć te ćwiczenia:
- Tworzenie harmonogramu spotkań za pomocą Dialogflow
- Integrowanie czatbota Dialogflow z Actions on Google
Musisz też poznać podstawowe pojęcia i konstrukcje Dialogflow. Możesz to zrobić, oglądając te filmy z ścieżki Tworzenie chatbota za pomocą Dialogflow:
Czego się nauczysz
- Jak tworzyć i używać w Dialogflow encji systemowych
- Tworzenie i używanie w Dialogflow encji dewelopera
- Jak przetestować agenta
Co utworzysz
- ulepszona wersja utworzonego już agenta Dialogflow,
- Encje dewelopera w Dialogflow
- Encje systemowe w Dialogflow
Czego potrzebujesz
- przeglądarka internetowa i adres e-mail do logowania się w konsoli Dialogflow;
2. Jak włączyć i używać w Dialogflow encji systemowych
- Otwórz konsolę Dialogflow.
- Wybierz utworzonego wcześniej agenta AppointmentScheduler.
- Kliknij Intencje.
- Kliknij Schedule Appointments (Planowanie spotkań), aby otworzyć ustawienia intencji.
Zauważysz wyrażenia na potrzeby trenowania, takie jak „Umów spotkanie na jutro na godzinę 16:00”, w których Data i Godzina są automatycznie wyodrębniane jako @sys.date i @sys.time. Możesz dodać więcej przykładowych wypowiedzi, aby zobaczyć, jak Dialogflow automatycznie wyodrębnia encje systemowe.
Jak widzisz, encje systemowe umożliwiają agentom wyodrębnianie informacji o szerokim zakresie pojęć bez dodatkowej konfiguracji. Dane takie jak adres, adresy e-mail, waluta i numery telefonów to przykłady typowych jednostek systemowych. Więcej informacji znajdziesz w sekcji Jednostki systemowe.
3. Jak włączyć i używać encji dewelopera w Dialogflow
Tworzenie podmiotów dewelopera
Do tej pory zwracałeś się do narzędzia do planowania spotkań w sposób ogólny. Załóżmy, że Twój harmonogram dotyczy urzędu komunikacji w danym stanie, który oferuje głównie usługi związane z prawem jazdy i rejestracją pojazdów. Utwórz te jednostki.
- Kliknij Jednostki.
- Kliknij Utwórz element.
- Wpisz „AppointmentType” jako nazwę jednostki, a następnie dodaj „Vehicle registration” (Rejestracja pojazdu) i „Driver license” (Prawo jazdy) jako 2 wartości odniesienia z kilkoma synonimami, jak widać na poniższym obrazie. Kliknij Save (Zapisz).
Możesz dodać więcej wierszy z dodatkowymi usługami jako typami jednostek.
- Kliknij Zapisz.
Edytuj intencję, aby uwzględnić nowo utworzoną encję dewelopera
- Kliknij Intencja.
- Wpisz „Umów spotkanie w sprawie prawa jazdy na jutro na 15:00” w intencji umówienia spotkania.
Zobaczysz automatyczne rozpoznawanie prawa jazdy, o godzinie 15:00 i jutro jako podmiotów dewelopera i systemu.
- Wpisz te wyrażenia na potrzeby trenowania:
- Umówione spotkanie w sprawie odnowienia licencji w poniedziałek
- Ustaw spotkanie na poniedziałek o 14:00 w sprawie licencji
- Umówione spotkanie w sprawie rejestracji pojazdu w poniedziałek
- Musisz ustawić pole AppointmentType jako wymagane, podobnie jak w przypadku daty i godziny. Aby to zrobić, otwórz Działania i parametry, a następnie zaznacz pole wyboru w wierszu AppointmentType.
- Dodaj prompt, np. „Jakich usług szukasz? DMV oferuje usługi związane z prawem jazdy i rejestracją pojazdów”. Jeśli użytkownik nie poda typu spotkania, zostanie użyty prompt.
- Kliknij Zapisz.
4. Testowanie czatbota
Możesz przetestować chatbota w symulatorze działań lub użyć integracji z internetem lub Google Home, o których była mowa wcześniej.
Element testowania 1
W tym przypadku użytkownik prosi tylko o ustawienie spotkania, nie podając 3 informacji, więc Dialogflow prosi o datę, godzinę i rodzaj spotkania, używając ustawionych przez Ciebie promptów wypełniania slotów.
- Użytkownik: „Ustaw spotkanie”.
- Czatbot: „Którego dnia?”
- Użytkownik: „23 maja”.
- Chatbot: „O której godzinie chcesz przyjść?”
- Użytkownik: „10:00”
- Chatbot: „Jakich usług szukasz? DMV oferuje usługi związane z prawem jazdy i rejestracją pojazdów”.
- Użytkownik: „Licencja”.
- Chatbot: „Twoje spotkanie w sprawie rejestracji pojazdu jest zaplanowane na 23 maja 2019 r. o godzinie 10:00:00. Do zobaczenia!
Element testowania 2
W tym przypadku użytkownik prosi o ustalenie terminu spotkania, podając tylko część informacji. Dialogflow prosi więc o datę, godzinę i rodzaj spotkania, korzystając z ustawionych przez Ciebie promptów wypełniania slotów.
- Użytkownik: „Potrzebuję wizyty na jutro na 16:00”.
- Chatbot: „Jakich usług szukasz? DMV oferuje usługi związane z prawem jazdy i rejestracją pojazdów”.
- Użytkownik: „Licencja”.
- Chatbot: „Wszystko gotowe. Twoje spotkanie w sprawie prawa jazdy odbędzie się 24 kwietnia 2019 r. o godzinie 16:00:00. Do zobaczenia!
Element testowania 3
W tym przypadku użytkownik podaje wszystkie informacje. Dialogflow przetwarza informacje i udziela odpowiedzi z potwierdzeniem spotkania.
- Użytkownik: „Umów mnie na jutro na godzinę 14:00 na rejestrację pojazdu”.
- Chatbot: „Wszystko gotowe. Twoje spotkanie w sprawie rejestracji pojazdu odbędzie się 24 kwietnia 2019 r. o godzinie 14:00:00. Do zobaczenia!
5. Czyszczenie danych
Jeśli planujesz ukończyć inne samouczki Dialogflow, pomiń tę sekcję i wróć do niej później.
Usuwanie agenta Dialogflow
- Kliknij
obok istniejącego agenta.
- Na karcie Ogólne przewiń do dołu i kliknij Usuń tego agenta.
- W oknie dialogowym wpisz Usuń i kliknij Usuń.
6. Gratulacje
Masz czatbota, który obsługuje niestandardowe dane wejściowe za pomocą encji dewelopera. Jesteś teraz deweloperem chatbotów.
Więcej informacji
Więcej informacji znajdziesz w tych materiałach:
- Realizacja: jak zintegrować Dialogflow z Kalendarzem
- Przykłady kodu na stronie Dialogflow Github.