Na tej stronie dowiesz się, jak utworzyć aplikację w Google Chat, która potrafi rozumieć język naturalny i odpowiadać w tym języku za pomocą Dialogflow. W tym przewodniku używamy Dialogflow CX, które jest bezpośrednio zintegrowane z Google Chat. Możesz też użyć Dialogflow ES, aby utworzyć aplikację Dialogflow ES Google Chat, korzystając z przewodnika Dialogflow ES Google Chat.
Rozważmy na przykład aplikację do czatu, która pomaga użytkownikom wypożyczać samochody. Użytkownik może napisać na przykład „Chcę wynająć samochód”. Aplikacja do czatu może odpowiedzieć pytaniem typu „Gdzie chcesz odebrać pojazd?”, co rozpocznie rozmowę z użytkownikiem, w której aplikacja do czatu będzie rozumieć i odpowiadać w sposób przypominający ludzką mowę podczas rezerwacji wynajmu samochodu.
To tylko jeden przykład. Aplikacje do obsługi czatu Dialogflow przydają się w różnych interakcjach. Jeśli wymaga naturalnej mowy, potrzebna jest aplikacja Dialogflow Chat. Gotowe agenty pomogą Ci szybko rozpocząć pracę i zaprezentują możliwości Dialogflow, takie jak:
- Rezerwowanie lotów
- Planowanie wizyt lekarskich
- Zamawianie jedzenia z dostawą
- odpowiadać na pytania dotyczące katalogu produktów w sklepie, np. czy produkty są dostępne w innych kolorach;
-
Rysunek 1. Wybieranie gotowego agenta w przypadku aplikacji do obsługi czatu w Dialogflow. -
Rysunek 2. Testowanie agenta w Dialogflow CX, aby upewnić się, że logika i konfiguracja agenta działają zgodnie z oczekiwaniami. Diagram przedstawia sekwencję stron tematycznych dotyczących konkretnych etapów rozmowy, np. ustawiania miejsca odbioru i lokalizacji zwrotu samochodu, oraz konfiguruje logikę, która je łączy. Rozmowa jest testowana w symulatorze. -
Rysunek 3. Skonfiguruj aplikację do obsługi czatu, aby przetwarzała odpowiedzi za pomocą agenta Dialogflow CX na stronie konfiguracji interfejsu Chat API w konsoli Google Cloud. -
Rysunek 4. Rozmowa o rezerwacji samochodu z wypożyczalni w aplikacji Dialogflow Chat w Google Chat.
Cele
- skonfigurować środowisko,
- Utwórz i wdróż agenta Dialogflow CX.
- Tworzenie i wdrażanie aplikacji do obsługi czatu opartej na agencie Dialogflow CX.
- Przetestuj aplikację Google Chat.
Wymagania wstępne
- Konto Google Workspace w wersji Business lub Enterprise z dostępem do Google Chat.
- Projekt Google Cloud z włączonymi płatnościami. Aby sprawdzić, czy w istniejącym projekcie włączone są płatności, przeczytaj artykuł Sprawdzanie stanu rozliczeń projektów. Aby utworzyć projekt i skonfigurować rozliczenia, przeczytaj artykuł Tworzenie projektu Google Cloud.
Architektura
Poniższy diagram przedstawia architekturę aplikacji do czatu utworzonej za pomocą Dialogflow:
Na powyższym diagramie użytkownik wchodzący w interakcję z aplikacją Dialogflow Chat ma następujący przepływ informacji:
- Użytkownik wysyła wiadomość w Google Chat do aplikacji w Google Chat – na czacie lub w pokoju czatu.
- Wirtualny agent Dialogflow, który znajduje się w Google Cloud, odbiera i przetwarza wiadomość, aby wygenerować odpowiedź.
- Opcjonalnie za pomocą elementu webhook Dialogflow agent Dialogflow może wchodzić w interakcje z zewnętrznymi usługami innych firm, takimi jak system zarządzania projektami lub narzędzie do obsługi zgłoszeń.
- Agent Dialogflow wysyła odpowiedź z powrotem do usługi aplikacji Google Chat.
- Odpowiedź zostanie dostarczona do pokoju czatu.
Konfigurowanie środowiska
Zanim zaczniesz korzystać z interfejsów API Google, musisz je włączyć w projekcie Google Cloud. W jednym projekcie Google Cloud możesz włączyć co najmniej 1 interfejs API.W konsoli Google Cloud włącz interfejsy Google Chat API i Dialogflow API.
Sprawdź, czy włączasz interfejsy API w odpowiednim projekcie w chmurze, a potem kliknij Dalej.
Sprawdź, czy włączasz odpowiednie interfejsy API, a potem kliknij Włącz.
Tworzenie agenta Dialogflow CX
Agent Dialogflow CX to agent wirtualny, który obsługuje równoczesne rozmowy z użytkownikami. Jest to moduł rozumienia języka naturalnego, który rozumie niuanse ludzkiego języka. Dialogflow tłumaczy tekst użytkownika podczas rozmowy na dane strukturalne, które mogą zrozumieć Twoje aplikacje i usługi. Projektujesz i tworzysz agenta Dialogflow, który będzie obsługiwać rodzaje rozmów wymagane w Twoim systemie.
Agent Dialogflow jest podobny do pracownika obsługi klienta w centrum telefonicznym. Trenujesz je w zakresie obsługi oczekiwanych scenariuszy rozmowy, a trenowanie nie musi być zbyt szczegółowe.
Aby utworzyć agenta Dialogflow CX:
W konsoli Dialogflow CX otwórz konsolę Dialogflow CX. Kliknij Menu > Dialogflow CX.
Wybierz projekt w chmurze Google Cloud. Aby znaleźć projekt, kliknij Wszystkie i wyszukaj go.
Możesz teraz wybrać gotowego agenta lub utworzyć własnego. Jeśli wolisz szczegółowo zapoznać się z dostosowywaniem agentów w późniejszym czasie, wybierz jednego z gotowych agentów, którzy pomogą Ci też dowiedzieć się, co potrafią agenci.
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życzalnia samochodów.
Agenty są oceniane jako początkujące, średnio zaawansowane lub zaawansowane w zależności od liczby używanych przez nie funkcji i stopnia złożoności logiki rozmowy. Wybór agenta na poziomie średniozaawansowanym lub zaawansowanym może wymagać dostosowań i ustawień specyficznych dla agenta, w tym włączenia funkcji i interfejsów API w konsoli Google Cloud.
Kliknij Importuj jako agent.
Aby utworzyć własnego agenta, wykonaj te czynności:
- Kliknij Utwórz agenta.
- Kliknij Wygeneruj automatycznie, aby utworzyć agenta magazynu danych, lub Utwórz własnego, aby utworzyć inne rodzaje agentów.
Szczegółowe instrukcje 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żna zmienić jego języka domyślnego.
Kliknij Utwórz. Dialogflow CX rozpocznie tworzenie agenta, a następnie wyświetli domyślny przepływ początkowy agenta.
Opcjonalnie możesz dostosować agenta. Szczegółowe instrukcje dotyczące dostosowywania agenta znajdziesz w artykule Tworzenie agenta Dialogflow CX.
Zalecamy przetestowanie agenta:
- Kliknij Przetestuj agenta.
- Kliknij Testuj agenta w środowisku.
- W sekcji Środowisko kliknij Wersja robocza.
- W Flow wybierz Default Start Flow (Domyślny przepływ początkowy).
- Na stronie wybierz Strona startowa.
- Na pasku tworzenia wiadomości Porozmawiaj z agentem wpisz
Helloi naciśnij Enter. Agent odpowiada, przedstawiając się. - Przeprowadź przykładową rozmowę testową, aby ukończyć test.
Zostanie utworzony agent Dialogflow CX. Wróć do konsoli Dialogflow CX. Kliknij Menu > Dialogflow CX.
W sekcji Agenci kliknij > Kopiuj nazwę. Zapisz tę nazwę, ponieważ będzie ona potrzebna podczas konfigurowania aplikacji do obsługi czatu.
Tworzenie aplikacji do obsługi czatu i łączenie jej z agentem Dialogflow
Po utworzeniu agenta Dialogflow CX wykonaj te czynności, aby przekształcić go w aplikację do czatu:
W konsoli Google Cloud otwórz interfejs Google Chat API. Wyszukaj „Google Chat API” i kliknij Google Chat API, a następnie Zarządzaj.
Kliknij Konfiguracja i skonfiguruj aplikację Chat:
- W polu Nazwa aplikacji wpisz
Dialogflow App. - W polu URL awatara wpisz
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png. - W polu Opis wpisz
Responds to real human conversation. - W sekcji Funkcje wybierz Dołączanie do pokoi i rozmów grupowych.
- W sekcji Ustawienia połączenia wybierz Dialogflow.
- W sekcji Ustawienia Dialogflow wybierz Dialogflow CX.
- W sekcji Agent or Environment resource name (Nazwa zasobu agenta lub środowiska) wklej nazwę agenta Dialogflow CX skopiowaną na końcu sekcji Tworzenie agenta Dialogflow CX.
- Udostępnij tę aplikację do obsługi czatu konkretnym osobom i grupom w domenie i wpisz swój adres e-mail.
- W sekcji Logi wybierz Loguj błędy w usłudze Logging.
- W polu Nazwa aplikacji wpisz
Kliknij Zapisz.
Aplikacja Chat jest gotowa do odbierania wiadomości i odpowiadania na nie.
Testowanie aplikacji Google Chat
Przetestuj aplikację do czatu Dialogflow CX, wysyłając do niej wiadomość w Google Chat.
Otwórz Google Chat, korzystając z konta Google Workspace, które zostało podane podczas dodawania siebie jako zaufanego testera.
- Kliknij Nowy czat.
- W polu Dodaj co najmniej 1 osobę wpisz nazwę aplikacji Chat.
Wybierz aplikację Chat z wyników. Otworzy się czat.
Na nowym czacie z aplikacją wpisz
Helloi naciśnijenter.Aplikacja do obsługi czatu Dialogflow odpowiada, przedstawiając się.
- Przeprowadź przykładową rozmowę testową, aby ukończyć test.
Przykładowa rozmowa testowa
Aby przetestować aplikację do czatu Dialogflow CX w konsoli Dialogflow CX lub w Google Chat, przeprowadź poniższą rozmowę. Wyjaśnienie pomaga zrozumieć, jak agent Dialogflow CX interpretuje język naturalny użytkownika i generuje własną odpowiedź w języku naturalnym na każdym etapie rozmowy. Ta przykładowa rozmowa jest oparta na gotowym agencie o nazwie Travel: car rental.
| Dialog | Wyjaśnienie |
|---|---|
|
Użytkownik: Cześć Agent: Cześć! Jestem wirtualnym agentem wypożyczalni samochodów. Mogę Ci pomóc w rozpoczęciu nowej rezerwacji wypożyczenia samochodu. W czym mogę Ci dziś pomóc? |
|
|
Użytkownik: Chcę wynająć samochód. Agent: Gdzie chcesz odebrać pojazd? |
|
|
Użytkownik: Las Vegas Agent: OK, odbiór nastąpi w Las Vegas. Agent: Czy miejsce wysiadki różni się od miejsca odbioru? |
|
|
Użytkownik: tak. Zostawię samochód w Los Angeles. Agent: Ok, Twój punkt odbioru będzie w Los Angeles. Pracownik obsługi klienta: Na jaką datę i godzinę chcesz zaplanować odbiór pojazdu? |
|
|
Użytkownik: Chcę odebrać samochód 5 marca w południe. Agent: Na kiedy chcesz zaplanować zwrot pojazdu? |
|
|
Użytkownik: 15 marca w południe. Agent: Potwierdzam: Odbierzesz pojazd w Las Vegas 5 marca 2024 r. o godzinie 12:00, a zwrócisz go w Los Angeles 15 marca 2024 r. o godzinie 12:00. Czy to się zgadza? |
|
|
Użytkownik: tak, dziękuję. Agent: Świetnie. Teraz wybierzmy pojazd. Pracownik obsługi klienta: Czy chcesz wynająć pojazd ekonomiczny czy luksusowy? |
|
|
Użytkownik: poproszę o przesyłkę ekonomiczną. Agent: Chcesz zamówić Cymbal Car czy Cymbal Truck? |
|
|
Użytkownik: Cymbal Truck. Agent: Wózek na talerze kosztuje 50,33 USD dziennie. Może pomieścić 4 osoby i jest wyposażony w radio AM/FM. Czy chcesz przejść do płatności? Użytkownik: tak. |
|
|
Agent: Jakiego rodzaju karty będziesz używać? Użytkownik: Altostrat Pracownik obsługi klienta: Wpisz numer karty. Użytkownik: 1234 1234 1234 1234 Agent: Jakie imię i nazwisko widnieją na karcie? Użytkownik: Charlie Pracownik obsługi klienta: Jaki jest adres rozliczeniowy? Użytkownik: 1800 Amphibious Blvd, Mountain View, CA Agent: Jaki jest kod pocztowy do rozliczeń? Użytkownik: 94045 Agent: Odbierzesz samochód Cymbal Car w Las Vegas 5 marca 2024 r. o godzinie 12:00, a oddasz go 15 marca 2024 r. o godzinie 12:00. Łączny koszt tego przejazdu wyniesie 175,38 PLN. Agent: dziękujemy za wypożyczenie samochodu. Życzymy miłego dnia. |
|
Wysyłanie wiadomości z kartami z Dialogflow
Dialogflow może odpowiadać za pomocą tekstu lub kart. Aby odpowiedzieć kartą, określ ją jako niestandardowy ładunek w realizacji.
Poniższy kod JSON pokazuje, jak wysłać wiadomość z kartą jako niestandardowy ładunek w ramach realizacji:
json
{ "hostAppDataAction": { "chatDataAction": { "createMessageAction": {
"message": { "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 kwestie do rozważenia
- Podczas korzystania z dodatków do Google Workspace w Dialogflow obiekty zdarzeń czatu mają następujące ograniczenia i kwestie do rozważenia:
- Zdarzenia w aplikacji Home: obsługa zdarzeń
APP_HOMEnie jest jeszcze dostępna. - Dane wejściowe zapytania Dialogflow: tekst wysyłany jako dane wejściowe zapytania do agenta Dialogflow zależy od typu zdarzenia:
MESSAGE: wartość polaargumentTextz wiadomości na czacie.APP_COMMAND: Ciąg znaków"APP_COMMAND_PAYLOAD".ADDED_TO_SPACE: Ciąg znaków"ADDED_TO_SPACE_PAYLOAD".REMOVED_FROM_SPACE: Ciąg znaków"REMOVED_FROM_SPACE_PAYLOAD".CARD_CLICKED: Ciąg znaków"BUTTON_CLICKED_PAYLOAD".WIDGET_UPDATED: ciąg znaków"WIDGET_UPDATED_PAYLOAD"(używany do autouzupełniania).
- Pełny ładunek zdarzenia: pełny ładunek JSON zdarzenia interakcji na czacie jest wysyłany do Dialogflow w polu
WebhookRequest.payload. Dostęp do niego uzyskasz w webhooku Dialogflow. Więcej informacji znajdziesz w dokumentacji żądania webhooka Dialogflow CX.
- Zdarzenia w aplikacji Home: obsługa zdarzeń
- Wskazówki dotyczące odpowiadania na polecenia i odbierania danych z kart lub okien:
- Jeśli agent Dialogflow musi przetworzyć ładunek JSON zdarzenia interakcji na czacie, może to zrobić za pomocą elementu webhook Dialogflow, aby sprawdzić niestandardowy ładunek w parametrze zapytania.
- Aby wyświetlić okno z agenta Dialogflow, odpowiedz pojedynczym niestandardowym ładunkiem JSON, który zawiera obiekt
RenderActionsz nawigacjąpushCard. - Aby przetwarzać dane wprowadzane z kart, możesz użyć webhooka Dialogflow i odpowiedzieć pojedynczym niestandardowym ładunkiem JSON zawierającym odpowiednią akcję.
- Podglądy linków nie są obsługiwane.
- Jeśli agent Dialogflow odpowie tylko jedną wiadomością, zostanie ona wysłana do Google Chat synchronicznie. Jeśli agent Dialogflow odpowie kilkoma wiadomościami, wszystkie zostaną wysłane do Google Chat asynchronicznie przez wywołanie metody
createw zasobiespaces.messagesw Chat API – po jednym wywołaniu dla każdej wiadomości. - Jeśli używasz integracji Dialogflow CX z Google Chat, agent Dialogflow i aplikacja Google Chat muszą być skonfigurowane w tym samym projekcie w chmurze Google. Jeśli musisz skonfigurować Dialogflow i Chat w różnych projektach Google Cloud, możesz skonfigurować serwer pośredniczący, który ułatwi połączenie. Aby dowiedzieć się, jak to zrobić, zapoznaj się z tym przykładem integracji Google Chat z Dialogflow CX w GitHubie.
Rozwiązywanie problemów
Aby debugować aplikację do obsługi czatu, zacznij od przejrzenia logów błędów. Ta aplikacja korzysta z Dialogflow, więc masz do dyspozycji kilka zasobów do logowania i rozwiązywania problemów:
Dzienniki dodatków do Google Workspace: możesz wysyłać zapytania do dzienników, aby uzyskać szczegółowe informacje o działaniu dodatku, w tym o jego interakcjach z Chatem. Zobacz Dzienniki zapytań w Google Workspace Add-ons.
Błędy aplikacji Google Chat: ogólne komunikaty o błędach aplikacji Chat i sposoby ich rozwiązywania znajdziesz w artykule Rozwiązywanie problemów z błędami aplikacji Chat.
Cloud Logging w Dialogflow CX: sprawdź, czy w ustawieniach agenta Dialogflow jest włączona usługa Cloud Logging, aby rejestrować szczegółowe logi wykonania, w tym błędy agenta i interakcje z webhookiem. Dowiedz się, jak włączyć i skonfigurować tę funkcję w dokumentacji ustawień agenta Dialogflow CX. Te logi możesz wyświetlić w Eksploratorze logów w konsoli Google Cloud.
Historia rozmów w Dialogflow CX: sprawdzaj wcześniejsze interakcje, aby zrozumieć przebieg rozmowy i zidentyfikować miejsca, w których występują problemy. Zobacz Historia rozmów.
Ogólne rozwiązywanie problemów z Dialogflow: w przypadku bardziej ogólnych problemów z Dialogflow zapoznaj się z przewodnikiem po rozwiązywaniu problemów z Dialogflow CX.
Czyszczenie danych
Aby uniknąć obciążenia konta Google Cloud opłatami za zasoby zużyte w tym samouczku, zalecamy usunięcie projektu w chmurze.
- W konsoli Google Cloud otwórz stronę Zarządzanie zasobami. Kliknij Menu > IAM i administrator > Zarządzaj zasobami.
- Z listy projektów wybierz projekt do usunięcia, a potem kliknij Usuń .
- W oknie wpisz identyfikator projektu i kliknij Wyłącz, aby usunąć projekt.
Powiązane artykuły
- Dialogflow CX wykorzystuje w projektowaniu agentów Dialogflow podejście oparte na automacie stanowym, które zapewnia jasną i wyraźną kontrolę nad rozmową, lepsze wrażenia użytkownika i lepszy proces tworzenia. Podczas tworzenia aplikacji Dialogflow Chat zalecamy korzystanie z Dialogflow CX.
- Więcej informacji o tworzeniu i konfigurowaniu agentów znajdziesz w artykule Agenci Dialogflow CX.
- Szczegółowe instrukcje tworzenia i konfigurowania agentów znajdziesz w artykule Tworzenie agenta Dialogflow CX.
- Dialogflow ES to kolejny sposób korzystania z Dialogflow w aplikacji do obsługi czatu.