Z tego artykułu dowiesz się, jak za pomocą Dialogflow utworzyć aplikację Google Chat, która rozumie język naturalny i odpowiada na nie. W tym przewodniku używana jest usługa Dialogflow CX, która zapewnia bezpośrednią integrację z Google Chat. Możesz też użyć Dialogflow ES do utworzenia aplikacji Google Chat w języku Dialogflow ES, postępując zgodnie z instrukcjami Dialogflow ES Google Chat.
Weźmy na przykład aplikację Google Chat ułatwiającą wypożyczanie samochodów. Użytkownik może napisać: „Chcę wynająć samochód”. Aplikacja Google Chat może odpowiedzieć na pytanie „Gdzie chcesz odebrać pojazd?”, co rozpoczyna rozmowę z użytkownikiem przypominającą ludzką rozmowę. Podczas rezerwowania samochodu aplikacja Google Chat rozumie ludzką wypowiedź i reaguje w ten sposób.
To tylko jeden przykład. Aplikacje do obsługi czatu Dialogflow są przydatne we wszystkich rodzajach interakcji. Jeśli wymaga ono naturalnej mowy ludzkiej, powstała aplikacja dialogowa Dialogflow. Gotowe agenty pomagają w szybkim rozpoczęciu pracy i pokazują możliwości Dialogflow, takie jak:
- Rezerwuj loty
- Umawianie się na wizyty lekarskie
- Zamów jedzenie z dostawą
- Odpowiedz na pytania dotyczące katalogu produktów, np. czy produkty są dostępne w innych kolorach
-
Rysunek 2. przetestować agenta w Dialogflow CX, aby sprawdzić, czy jego logika i konfiguracja działają zgodnie z oczekiwaniami; Przedstawia on sekwencyjny zestaw stron tematycznych, które dotyczą określonych etapów rozmowy, takich jak ustawienie miejsca odbioru i zwrotu wypożyczonego samochodu, oraz logikę, która je łączy. Rozmowa jest testowana w symulatorze. -
Rysunek 3. skonfigurowanie aplikacji do obsługi czatu w celu przetwarzania odpowiedzi przy użyciu agenta Dialogflow CX na stronie konfiguracji interfejsu Chat API w konsoli Google Cloud; -
Rysunek 4. rozmów na temat rezerwacji samochodu do wypożyczenia przy użyciu aplikacji Dialogflow Chat w Google Chat;
Cele
- skonfigurować środowisko,
- utworzyć i wdrożyć agenta Dialogflow CX;
- utworzyć i wdrożyć aplikację do obsługi czatu obsługiwaną przez agenta Dialogflow CX;
- Przetestuj aplikację Google Chat.
Wymagania wstępne
- konto Google Workspace z dostępem do Google Chat.
- Projekt Google Cloud.
- Sprawdź, czy masz włączone płatności w projekcie Cloud. Dowiedz się, jak sprawdzić stan rozliczeń projektów.
Architektura
Poniższy diagram przedstawia architekturę aplikacji do obsługi czatu utworzonej przy użyciu Dialogflow:
Na poprzednim diagramie użytkownik korzystający z aplikacji Dialogflow udostępnia następujący przepływ informacji:
- Użytkownik wysyła wiadomość w Google Chat do aplikacji Google Chat na czacie lub w pokoju czatu.
- Agent wirtualny Dialogflow, który działa w Google Cloud, odbiera i przetwarza wiadomość w celu wygenerowania odpowiedzi.
- Opcjonalnie za pomocą webflow Dialogflow agent Dialogflow może wchodzić w interakcje z zewnętrznymi usługami, takimi jak system zarządzania projektami czy narzędzie do zgłaszania zgłoszeń.
- Agent Dialogflow wysyła odpowiedź do usługi aplikacji Google Chat w Google Chat.
- Odpowiedź zostanie dostarczona do pokoju czatu.
Konfigurowanie środowiska
Zanim zaczniesz korzystać z interfejsów API Google, musisz włączyć je w projekcie Google Cloud. W jednym projekcie Google Cloud możesz włączyć 1 lub więcej interfejsów API.W konsoli Google Cloud włącz Google Chat API i Dialogflow API.
Sprawdź, czy interfejsy API włączasz w odpowiednim projekcie Cloud, a następnie kliknij Dalej.
Sprawdź, czy włączasz właściwe interfejsy API, a następnie kliknij Włącz.
Tworzenie agenta Dialogflow CX
Agent Dialogflow CX to agent wirtualny, który obsługuje jednoczesne rozmowy z użytkownikami. To moduł rozumienia języka naturalnego, który rozumie niuanse ludzkiego języka. Dialogflow przekształca tekst podczas rozmowy przez użytkownika na uporządkowane dane, które są w stanie zrozumieć aplikacje i usługi. Zaprojektujesz i utworzysz agenta Dialogflow do obsługi typów rozmów wymaganych w Twoim systemie.
Agent Dialogflow jest jak ludzki agent centrum obsługi telefonicznej. Trenujesz je tak, aby obsługiwały oczekiwane scenariusze rozmowy, a trenowanie nie musi być zbyt jednoznaczne.
Aby utworzyć agenta Dialogflow CX:
W konsoli Dialogflow CX otwórz konsolę Dialogflow CX. Kliknij Menu > Dialogflow CX.
Wybierz projekt Google Cloud. Aby znaleźć projekt, być może trzeba będzie kliknąć Wszystkie i wyszukać go.
Teraz możesz wybrać gotowego agenta lub utworzyć własnego. Jeśli wolisz później szczegółowo przyjrzeć się dostosowywaniu agentów, wybierz jeden z gotowych agentów, który pomoże Ci też poznać możliwości agentów.
Aby wybrać gotowego agenta, wykonaj te czynności:
- Kliknij Użyj gotowych agentów.
Wybierz gotowego agenta. Na potrzeby tego przewodnika wybierz Podróże: wypożyczenie samochodu.
Agenty są oceniane jako początkujące, średniozaawansowane i zaawansowane w zależności od liczby funkcji, z których korzysta, oraz od poziomu zaawansowania logiki rozmowy. Wybór pośredniego lub zaawansowanego agenta może wymagać dostosowań i ustawień danego agenta, w tym włączenia funkcji i interfejsów API w konsoli Google Cloud.
Kliknij Import as agent (Importuj jako agent).
Aby utworzyć własnego agenta, wykonaj te czynności:
- Kliknij Utwórz agenta.
- Wybierz Wygeneruj automatycznie, aby utworzyć agenta magazynu danych, lub wybierz Utwórz własny, aby utworzyć inne rodzaje agentów.
Szczegółowy przewodnik dotyczący procesu tworzenia agenta znajdziesz w artykule Tworzenie agenta Dialogflow CX.
Skonfiguruj podstawowe ustawienia agenta:
- W polu Wyświetlana nazwa wpisz wyświetlaną nazwę.
- Wybierz preferowaną lokalizację. Jeśli chcesz zmienić zaawansowane ustawienia lokalizacji, kliknij Edytuj.
- Wybierz preferowaną strefę czasową.
- Wybierz domyślny język agenta. Po utworzeniu agenta nie możesz zmienić jego domyślnego języka.
Kliknij Utwórz. Dialogflow CX rozpoczyna tworzenie agenta, a następnie wyświetla domyślny przepływ uruchamiania agenta.
Opcjonalnie dostosuj agenta. Szczegółowy opis procesu dostosowywania agenta znajdziesz w artykule o tworzeniu agenta Dialogflow CX.
Przetestuj agenta:
- Kliknij Testuj agenta.
- Kliknij Testuj agenta w środowisku.
- W środowisku wybierz Wersja robocza.
- W sekcji Flow (Przepływ) wybierz Default Start Flow (Domyślny przepływ rozpoczęcia).
- Na stronie wybierz Strona startowa.
- Na pasku tworzenia wiadomości Porozmawiaj z pracownikiem obsługi klienta wpisz
Hello
i naciśnij Enter. Pracownik obsługi klienta odpowiada, przedstawiając się. - Dokończ test, przeprowadzając przykładową rozmowę testową.
Zostanie utworzony agent Dialogflow CX. Wróć do konsoli Dialogflow CX. Kliknij Menu > Dialogflow CX.
W sekcji Agenty kliknij > Kopiuj nazwę. Zapisz ją tak, jak będzie używana podczas konfigurowania aplikacji Google Chat.
Utwórz aplikację do obsługi czatu i połącz ją z agentem Dialogflow
Po utworzeniu agenta Dialogflow CX wykonaj te czynności, aby przekształcić go w aplikację do obsługi czatu:
W konsoli Google Cloud otwórz Google Chat API. Wyszukaj „Google Chat API” i kliknij Google Chat API, a następnie Zarządzaj.
Kliknij Konfiguracja i skonfiguruj aplikację Google Chat:
- W polu Nazwa aplikacji wpisz
Dialogflow App
. - W polu Avatar URL wpisz
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png
. - W polu Opis wpisz
Responds to real human conversation
. - W sekcji Funkcjonalność wybierz Odbieranie wiadomości 1:1 i Dołączanie do pokoi i rozmów grupowych.
- W sekcji Ustawienia połączenia wybierz Dialogflow.
- W sekcji Ustawienia Dialogflow wybierz Dialogflow CX.
- W polu Nazwa zasobu klienta lub środowiska wklej nazwę agenta Dialogflow CX skopiowaną na końcu artykułu Tworzenie agenta Dialogflow CX.
- Udostępnij tę aplikację do obsługi czatu określonym osobom i grupom w Twojej domenie i wpisz swój adres e-mail.
- W sekcji Logi wybierz Rejestruj błędy w usłudze Logging.
- W polu Nazwa aplikacji wpisz
Kliknij Zapisz.
Aplikacja Google Chat jest gotowa do odbierania wiadomości i odpowiadania na nie.
Testowanie aplikacji Google Chat
przetestować aplikację Dialogflow CX Chat, wysyłając do niej wiadomość w Google Chat.
Otwórz Google Chat na koncie Google Workspace podanym podczas dodawania siebie jako zaufanego testera.
- Kliknij Nowy czat.
- W polu Dodaj co najmniej 1 osobę wpisz nazwę aplikacji do obsługi czatu.
W wynikach wybierz swoją aplikację do obsługi czatu. Otworzy się czat.
W nowym czacie z aplikacją wpisz
Hello
i naciśnijenter
.Aplikacja Dialogflow Chat odpowiada, przedstawiająca się.
- Dokończ test, przeprowadzając przykładową rozmowę testową.
Przykładowa rozmowa testowa
Aby przetestować aplikację Dialogflow CX Chat w konsoli Dialogflow CX lub w Google Chat, przeprowadź tę rozmowę. Dzięki wyjaśnieniom łatwiej zrozumiesz, jak agent Dialogflow CX interpretuje język naturalny użytkownika i tworzy własne odpowiedzi w tym języku na każdym etapie rozmowy. Ta przykładowa rozmowa opiera się na gotowym agenta o nazwie Podróże: wypożyczalnia samochodów.
Dialog | Wyjaśnienie |
---|---|
Użytkownik: Cześć Pracownik obsługi klienta: Cześć! Jestem agentem wynajmu wirtualnych samochodów. Mogę pomóc Ci w rezerwacji nowego samochodu. W czym mogę Ci dziś pomóc? |
|
Użytkownik: chcę wynająć samochód. Pracownik obsługi klienta: gdzie chcesz odebrać pojazd? |
|
Użytkownik: Las Vegas Przedstawiciel: Ok, odbiór będzie w Las Vegas. Pracownik obsługi klienta: Czy miejsce zwrotu jest inne niż miejsce odbioru? |
|
Użytkownik: tak. Oddam samochód w Los Angeles. Przedstawiciel: Rozumiem. Wysyłkę będziesz w Los Angeles. Pracownik obsługi klienta: kiedy i o której chcesz odebrać pojazd? |
|
Użytkownik: chcę odebrać samochód 5 marca w południe. Pracownik obsługi klienta: kiedy i o której godzinie chcesz zostawić pojazd? |
|
Użytkownik: 15 marca w południe. Przedstawiciel: Aby potwierdzić: odbierzesz pojazd w Las Vegas 2024-03-05 12:00:00 i przekażesz go w Los Angeles 2024-03-15 12:00:00 Czy to się zgadza? |
|
Użytkownik: tak, dziękuję. Agent: Świetnie! Teraz wybierzmy pojazd. Przedstawiciel: Wybierz samochód ekonomiczny czy luksusowy? |
|
Użytkownik: Ekonomiczna. Przedstawiciel: Wybierz samochód Cymbal czy ciężarówka Cymbal? |
|
Użytkownik: Cymbal truck. Agent: cena za Cymbal truck wynosi 50,33 USD dziennie. Może pomieścić do 4 osób i jest wyposażony w radio AM/FM. Czy chcesz przejść do płatności? Użytkownik: tak, poproszę. |
|
Przedstawiciel: Jakiego typu karty będziesz używać? Użytkownik: Altostrat Przedstawiciel: wpisz numer karty. Użytkownik: 1234 1234 1234 1234 Pracownik obsługi klienta: jak nazywa się karta? Użytkownik: Karol Przedstawiciel: Podaj adres rozliczeniowy. Użytkownik: 1800 Amphibious Blvd. Mountain View, CA Agent: Jaki jest kod pocztowy adresu rozliczeniowego? Użytkownik końcowy: 94045 Pracownik obsługi klienta: zabierasz samochód Cymbal w Las Vegas, 5 marca 2024 r. o 12:00:00 i zabierasz go o 15.03.2024 r. o 12:00:00. Łączna opłata za tę podróż wyniesie 175,38 zł. Pracownik obsługi klienta: Dziękujemy za wynajem i życzymy miłego dnia. |
|
Wysyłaj wiadomości z kart z Dialogflow
Dialogflow może odpowiadać, wysyłając tekst lub wiadomości na karta. Aby odpowiedzieć za pomocą wiadomości z kartą, określ ją jako ładunek niestandardowy w ramach realizacji.
Poniższy kod JSON pokazuje, jak wysłać wiadomość karty jako niestandardowy ładunek w ramach realizacji:
json
{
'cardsV2': [{
'cardId': 'createCardMessage',
'card': {
'header': {
'title': 'A card message!',
'subtitle': 'Sent from Dialogflow',
'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
'imageType': 'CIRCLE'
},
'sections': [
{
'widgets': [
{
'buttonList': {
'buttons': [
{
'text': 'Read the docs!',
'onClick': {
'openLink': {
'url': 'https://developers.google.com/workspace/chat'
}
}
}
]
}
}
]
}
]
}
}]
}
Ograniczenia i uwagi
- Zdarzenia interakcji z Google Chat są obsługiwane w ograniczonym zakresie i należy wziąć pod uwagę kilka kwestii:
- Obsługiwane są te typy zdarzeń interakcji:
MESSAGE
ADDED_TO_SPACE
- Dane wejściowe zapytania wysłane do agenta Dialogflow odpowiadają wartości pola
argumentText
w wiadomości Google Chat. Jeśli wiadomość zawiera polecenie po ukośniku, zamiast tego używana jest wartość z polatext
. - Pełny ładunek JSON każdego zdarzenia interakcji w Google Chat jest wysyłany do Dialogflow jako ładunek niestandardowy w parametrze zapytania. Można go otworzyć za pomocą webflow dialogu, wysyłając zapytanie o wartość w polu
WebhookRequest.payload
.
- Obsługiwane są te typy zdarzeń interakcji:
- Polecenia po ukośniku mają ograniczoną obsługę:
- Polecenia po ukośniku otwierające okna dialogowe nie są obsługiwane przez aplikacje Dialogflow Chat.
- Gdy aplikacje do obsługi czatu Dialogflow otrzymają wiadomość po ukośniku, dane wejściowe zapytania będą zawierać tylko wartość pola
text
. Poletext
zaczyna się od nazwy polecenia po ukośniku (np./command
), za pomocą którego możesz skonfigurować intencję agenta Dialogflow do wykrywania polecenia po ukośniku. - Jeśli agent Dialogflow musi przetworzyć ładunek JSON zdarzenia interakcji z poleceniem ukośnika, może to zrobić przy użyciu webhooka Dialogflow do sprawdzenia ładunku niestandardowego w parametrze zapytania.
- Podgląd linków nie jest obsługiwany.
- Jeśli agent Dialogflow odpowie tylko 1 wiadomością, zostanie ona wysłana synchronicznie do Google Chat. Jeśli agent Dialogflow odpowiada, wszystkie wiadomości są wysyłane do Google Chat asynchronicznie przez wywołanie metody
create
w zasobiespaces.messages
w interfejsie Chat API dla każdej wiadomości. - Podczas korzystania z integracji Dialogflow CX z Google Chat agent Dialogflow i aplikacja Google Chat muszą być skonfigurowane w tym samym projekcie Google Cloud. Jeśli musisz skonfigurować Dialogflow i Google Chat w różnych projektach Cloud, możesz skonfigurować serwer pośredni do obsługi połączenia. Aby dowiedzieć się, jak to zrobić, przeczytaj ten artykuł o przykładzie integracji czatu z Dialogflow CX na GitHubie.
Rozwiązywanie problemów
Gdy aplikacja lub karta Google Chat zwróci błąd, w interfejsie Google Chat pojawi się komunikat „Coś poszło nie tak”. lub „Nie można przetworzyć żądania”. Czasami w interfejsie Google Chat nie pojawia się żaden komunikat o błędzie, ale aplikacja lub karta Google Chat zwraca nieoczekiwany wynik, na przykład komunikat na karcie może się nie pojawić.
Mimo że komunikat o błędzie może nie wyświetlać się w interfejsie Google Chat, dostępne są opisowe komunikaty o błędach i dane dziennika, które pomogą Ci naprawić błędy występujące po włączeniu logowania błędów w aplikacjach Google Chat. Informacje o wyświetlaniu, debugowaniu i naprawianiu błędów znajdziesz w artykule Rozwiązywanie problemów z Google Chat i ich naprawianie.
Czyszczenie danych
Aby uniknąć obciążenia konta Google Cloud opłatami za zasoby zużyte w tym samouczku, zalecamy usunięcie projektu Cloud.
- W konsoli Google Cloud otwórz stronę Zarządzanie zasobami. Kliknij Menu > Administracja > Zarządzaj zasobami.
- Na liście projektów wybierz projekt, który chcesz usunąć, a następnie kliknij Usuń .
- W oknie wpisz identyfikator projektu i kliknij Wyłącz, aby usunąć projekt.
Powiązane artykuły
- Dialogflow CX wykorzystuje
maszynę stanu
do projektowania agentów Dialogflow,
co zapewnia wyraźną i wyraźną kontrolę nad rozmową, zapewnia użytkownikom lepsze wrażenia i usprawnia
proces programowania. Podczas tworzenia aplikacji do obsługi czatu Dialogflow zalecamy użycie Dialogflow CX.
- Więcej informacji o tworzeniu i konfigurowaniu agentów znajdziesz w sekcji Agenty Dialogflow CX.
- Szczegółowy przewodnik z instrukcjami tworzenia i konfigurowania agentów znajdziesz w artykule Tworzenie agenta Dialogflow CX.
- Dialogflow ES to kolejny sposób korzystania z Dialogflow z użyciem aplikacji do obsługi czatu.