Z tego samouczka dowiesz się, jak stworzyć aplikację Google Chat, która odpowie na pytania pytań na podstawie rozmów w pokojach czatu z wykorzystaniem generatywnej AI oparta na Vertex AI z Gemini. Aplikacja Google Chat używa: interfejs Google Workspace Events API oraz Pub/Sub do rozpoznawania i odpowiadania na pytania publikowane w pokojach czatu w czasie rzeczywistym, nawet nie jest wymieniany.
Aplikacja Google Chat używa wszystkich wiadomości wysyłanych w pokoju jako źródła danych i bazy wiedzy: gdy ktoś zada pytanie, Aplikacja do obsługi czatu sprawdzi wcześniej udostępnione odpowiedzi, a następnie udostępnia jedną. Jeśli nie można znaleźć odpowiedzi, informuje, że nie może udzielić odpowiedzi. Przy każdej odpowiedzi użytkownicy mogą kliknąć przycisk polecenia akcesorium, aby dodać @wzmiankę o menedżerze pokoju i zapytać . Dzięki wykorzystaniu Gemini AI aplikacja Google Chat dostosowuje i wykorzystuje Rozbudowuje swoją bazę wiedzy dzięki nieustannym trenowaniu rozmów w pokojach i filmów, do których zostały dodane.
Oto jak aplikacja Google Chat działa we wdrażaniu pracowników i rozwiązywać problemy techniczne:
-
Rysunek 1. Karol dodaje aplikację Google Chat Asystenta wiedzy AI do pokoju czatu. -
Rysunek 2. Daria pyta, czy firma oferuje szkolenia z wymowy. -
Rysunek 3. Aplikacja Google Chat – asystent wiedzy AI na podstawie historii rozmów w pokoju czatu prosi Vertex AI o udzielenie odpowiedzi na pytanie, a następnie udostępnia odpowiedź.
Wymagania wstępne
Firmy lub przedsiębiorstwa Konto Google Workspace z dostępem do Google Chat.
Dostęp do usług Google Cloud pozwalający:
- Utwórz projekt Google Cloud.
- Połącz konto rozliczeniowe Google Cloud z projektem Cloud. Do sprawdź, czy masz dostęp, Uprawnienia wymagane do włączenia płatności
- Używaj nieuwierzytelnionych wywołań funkcji w Google Cloud Functions, Możesz to sprawdzić, ustalając, czy Twoja firma Google Cloud organizacja korzysta z ograniczonego udostępniania według domeny.
W razie potrzeby poproś administratora Google Cloud o dostęp lub uprawnienia.
jeśli używasz Google Cloud CLI, środowisko Node.js środowisko programistyczne skonfigurowane do pracy z gcloud CLI. Zobacz Konfigurowanie programowania w środowisku Node.js .
Cele
- Tworzenie aplikacji do obsługi czatu, która wykorzystuje generatywną AI do: odpowiadać na pytania na podstawie wiedzy udostępnionej w pokoju czatu. rozmów.
- Dzięki generatywnej AI:
- Wykrywaj pytania pracowników i odpowiadaj na nie.
- Ciągłe uczenie się na podstawie trwających rozmów na czacie kosmosu.
- Słuchaj wiadomości i odpowiadaj na nie w pokoju czatu w czasie rzeczywistym nawet wtedy, gdy aplikacja nie wysłano wiadomość.
- Utrwalanie wiadomości przez zapisywanie i odczytywanie danych w bazie danych Firestore.
- Ułatwianie współpracy w pokoju czatu przez wspomnienie o pokoju menedżerom.
Architektura
Poniższy diagram przedstawia architekturę Google Workspace Zasoby Google Cloud używane przez asystenta wiedzy o AI aplikacja Google Chat.
Aplikacja Google Chat Asystent wiedzy o AI działa tak:
Użytkownik dodaje aplikację Google Chat Asystent wiedzy o AI do pokoju czatu:
Aplikacja Google Chat wyświetli prośbę o użytkownik, który dodał go do pokoju czatu, aby skonfigurować uwierzytelnianie i autoryzacja.
Aplikacja Google Chat pobiera wiadomości w pokoju według wywołanie metody
spaces.messages.list
w interfejsie Chat API oraz a następnie zapisuje pobrane wiadomości w bazie danych Firestore.Aplikacja Google Chat wywołuje metodę Uruchomienie metody
subscriptions.create
w interfejsie Google Workspace Events API nasłuchuj zdarzeń takich jak wiadomości w pokoju. punkt końcowy powiadomień subskrypcji to temat Pub/Sub, który używa Eventarc, aby przekazać zdarzenie do aplikacji Google Chat.Aplikacja Google Chat publikuje wiadomość powitalną w: w pomieszczeniu.
Użytkownik w pokoju czatu opublikuje wiadomość:
Aplikacja Google Chat odbiera wiadomość w czasie rzeczywistym z tematu Pub/Sub.
Aplikacja Google Chat doda wiadomość do Firestore w bazie danych.
Jeśli użytkownik później edytuje lub usunie wiadomość, Aplikacja do obsługi czatu odbiera zaktualizowane lub usunięte zdarzenie w czasie rzeczywistym, a następnie aktualizuje lub usuwa wiadomość w Firestore w bazie danych.
Aplikacja Google Chat wysyła wiadomość do Vertex AI w Gemini:
Ten prompt instruuje Vertex AI w Gemini, aby sprawdził, czy wiadomość zawiera pytanie. Jeśli tak, Gemini odpowiada na pytanie, w historii wiadomości pokoju czatu przechowywanej w Firestore a aplikacja Google Chat wysyła wiadomość do Pokój czatu. Jeśli nie, nie odpowiadaj.
Jeśli Vertex AI z Gemini odpowie na pytanie, Aplikacja Google Chat publikuje aby odebrać, wywołując metodę
spaces.messages.create
w Interfejs Chat API korzystający z uwierzytelniania aplikacji.Jeśli Vertex AI z Gemini nie odpowie na pytanie, Aplikacja do obsługi czatu publikuje że nie może znaleźć odpowiedzi na to pytanie w historii pokoju czatu.
Wiadomości zawsze zawierają przycisk polecenia akcesorium, który użytkownicy mogą przez kliknięcie, które powoduje dodać @wzmiankę o menedżerze pokoju, prosząc go o udzielenie odpowiedzi;
Aplikacja Google Chat otrzymuje powiadomienie dotyczące cyklu życia od interfejs Google Workspace Events API i subskrypcja pokoju czatu wkrótce wygaśnie:
- Aplikacja Google Chat wyśle prośbę o odnowienie subskrypcji
subskrypcji, wywołując metodę
subscriptions.patch
w Interfejs Google Workspace Events API.
- Aplikacja Google Chat wyśle prośbę o odnowienie subskrypcji
subskrypcji, wywołując metodę
aplikacja Google Chat zostanie usunięta z Google Chat, spacja:
Aplikacja Google Chat usuwa subskrypcję przez wywołanie metody
subscriptions.delete
w funkcji Interfejs Google Workspace Events API.aplikacja Google Chat usunie Google Chat, danych z pokoju z Firestore.
Przeglądanie usług używanych przez aplikację Google Chat Asystent wiedzy o AI
Aplikacja Google Chat Asystent wiedzy o AI korzysta z tych usługach Google Workspace i Google Cloud:
- Interfejs Vertex AI API z Gemini: Platforma generatywnej AI oparta na technologii Gemini. Asystent wiedzy o AI Aplikacja do obsługi czatu używa interfejsu Vertex AI API z Gemini do: rozpoznawania i rozumienia pytań pracowników oraz odpowiadania na nie.
-
Interfejs Chat API:
Interfejs API do tworzenia aplikacji w Google Chat, które odbierają i reagują
Zdarzenia interakcji z Google Chat, np. wiadomości. AI
Aplikacja Google Chat Asystent wiedzy używa interfejsu Chat API do:
- Otrzymywać zdarzenia interakcji wysyłane przez Google Chat i odpowiadać na nie.
- Wyświetlanie listy wiadomości wysłanych w pokoju.
- Publikowanie odpowiedzi na pytania użytkowników w pokoju.
- Skonfiguruj atrybuty określające sposób jego wyświetlania w Czatuj, dodając imię i nazwisko oraz awatara.
- Interfejs Google Workspace Events API: Ten interfejs API umożliwia subskrybowanie wydarzeń i zarządzanie zmieniać powiadomienia w aplikacjach Google Workspace. Aplikacja Google Chat Asystent wiedzy o AI korzysta z interfejsu Google Workspace Events API do nasłuchiwania wiadomości publikowanych w pokój czatu, aby mógł wykrywać pytania i odpowiadać na nie, nie jest wymieniany.
- Firestore: Bezserwerowa baza danych dokumentów. Asystent wiedzy o AI Aplikacja do obsługi czatu używa Firestore do przechowywania danych o wiadomościach wysłane w pokoju czatu.
- Pub/Sub: Pub/Sub to asynchroniczna i skalowalna usługa do przesyłania wiadomości, która oddziela które generują wiadomości z usług przetwarzających te wiadomości. Asystent wiedzy AI aplikacja Google Chat korzysta z Pub/Sub do: otrzymywać zdarzenia subskrypcji z pokoi czatu.
- Eventarc: Eventarc pozwala tworzyć architektury oparte na zdarzeniach wdrażania, dostosowywania i utrzymywania bazowej infrastruktury. AI aplikacji Google Chat Asystent wiedzy korzysta z Eventarc, Kieruj zdarzenia z Pub/Sub do pokoju czatu oraz funkcję w Cloud Functions, która odbiera i przetwarza zdarzenia subskrypcji.
-
Cloud Functions:
Lekka bezserwerowa usługa obliczeniowa, która umożliwia tworzenie
jednozadaniowe, niezależne funkcje,
które mogą reagować na Google Chat.
zdarzeń interakcji i subskrypcji bez konieczności zarządzania serwerem lub środowiskiem wykonawczym
dla środowiska. Aplikacja Google Chat Asystent wiedzy o AI
używa 2 funkcji w Cloud Functions o nazwach:
-
app
: hostowanie punktu końcowego HTTP wysyłanego przez Google Chat zdarzenia interakcji do platformy obliczeniowej i jako platformy obliczeniowej do uruchamiania logiki, przetwarza je i reaguje na nie. -
eventsApp
: odbiera i przetwarza pokój czatu takich jak wiadomości z subskrypcji Pub/Sub.
- Cloud Build: W pełni zarządzana platforma do ciągłej integracji, dostarczania i wdrażania który uruchamia automatyczne kompilacje.
- Cloud Run: W pełni zarządzane środowisko do uruchamiania aplikacji skonteneryzowanych.
-
Przygotowywanie środowiska
W tej sekcji dowiesz się, jak utworzyć i skonfigurować projekt Google Cloud dla platformy aplikacja Google Chat.
Utwórz projekt Google Cloud
Google Cloud Console
- W konsoli Google Cloud otwórz menu > Administracja Administracja > Utwórz projekt. .
-
W polu Project Name (Nazwa projektu) wpisz opisową nazwę projektu.
Opcjonalnie: aby edytować identyfikator projektu, kliknij Edytuj. Identyfikatora projektu nie można zmienić po jego utworzeniu, wybierz więc identyfikator, który odpowiada potrzebom od początku w projektach AI.
- W polu Lokalizacja kliknij Przeglądaj, aby wyświetlić potencjalne lokalizacje dla w projektach AI. Następnie kliknij Wybierz.
- Kliknij Utwórz. Konsola Google Cloud otworzy stronę Panel, a projekt zostanie utworzony. w ciągu kilku minut.
interfejs wiersza poleceń gcloud
W jednym z tych środowisk programistycznych uzyskaj dostęp do Google Cloud Interfejs wiersza poleceń (`gcloud`):
-
Cloud Shell: korzystanie z terminala online za pomocą interfejsu wiersza poleceń gcloud.
już skonfigurowane, aktywuj Cloud Shell.
Aktywuj Cloud Shell -
Local Shell (Powłoka lokalna): aby użyć lokalnego środowiska programistycznego,
instalacja oraz
zainicjuj
w gcloud CLI.
Aby utworzyć projekt Google Cloud, użyj polecenia `gcloud projects create`: Zastąp PROJECT_ID, ustawiając identyfikator projektu, który chcesz utworzyć.gcloud projects create PROJECT_ID
Włącz płatności za projekt Cloud
Google Cloud Console
- W konsoli Google Cloud otwórz Rozliczenia. Kliknij Menu > Płatności > Moje projekty.
- W sekcji Wybierz organizację wybierz organizację powiązaną z: Twojemu projektowi Google Cloud.
- W wierszu projektu otwórz menu Działania. ( ), kliknij Zmień ustawienia płatności i wybierz konto rozliczeniowe Cloud.
- Kliknij Ustaw konto.
interfejs wiersza poleceń gcloud
- Aby wyświetlić listę dostępnych kont rozliczeniowych, uruchom polecenie:
gcloud billing accounts list
- Połącz konto rozliczeniowe z projektem Google Cloud:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Zastąp następujące elementy:
PROJECT_ID
to identyfikator projektu dla Projekt Cloud, dla którego chcesz włączyć płatności.BILLING_ACCOUNT_ID
to identyfikator konta rozliczeniowego, z którym chcesz połączyć konto projekt Google Cloud.
Włączanie interfejsów API
Google Cloud Console
W konsoli Google Cloud włącz interfejsy Google Chat API, Vertex AI API Cloud Functions API, Firestore API, Cloud Build API interfejsy Pub/Sub API, Google Workspace Events API i Eventarc API oraz Cloud Run Admin API.
Sprawdź, czy interfejsy API są włączone we właściwym Projekt Cloud, a następnie kliknij Dalej.
Sprawdź, czy włączasz odpowiednie interfejsy API, a następnie kliknij Włącz.
interfejs wiersza poleceń gcloud
W razie potrzeby ustaw bieżący projekt Cloud na ten, utworzono:
gcloud config set project PROJECT_ID
Zastąp PROJECT_ID identyfikatorem projektu utworzony przez Ciebie projekt Cloud.
włączyć interfejsy Google Chat API, Vertex AI API i Cloud Functions API; interfejsy Firestore API, Cloud Build API i Pub/Sub API interfejs Google Workspace Events API, Eventarc API i Cloud Run Admin Interfejs API:
gcloud services enable chat.googleapis.com \ aiplatform.googleapis.com \ cloudfunctions.googleapis.com \ firestore.googleapis.com \ cloudbuild.googleapis.com \ pubsub.googleapis.com \ workspaceevents.googleapis.com \ eventarc.googleapis.com \ run.googleapis.com
Konfigurowanie uwierzytelniania i autoryzacji
Uwierzytelnianie i autoryzacja umożliwia Dostęp do zasobów aplikacji do obsługi czatu w Google Workspace oraz Google Cloud.
W tym samouczku opublikujesz wewnętrznie aplikację Google Chat, tak aby była Możesz użyć symbolu zastępczego. Przed opublikowaniem Aplikacja Google Chat zewnętrzna – zastąp informacje w obiekcie zastępczym do wyświetlania prawdziwych informacji na ekranie zgody.
Skonfiguruj ekran zgody OAuth, określ zakresy i zarejestruj aplikację
W konsoli Google Cloud wybierz Menu > Interfejsy API i Usługi > Ekran zgody OAuth.
W sekcji Typ użytkownika wybierz Wewnętrzny i kliknij Utwórz.
W polu Nazwa aplikacji wpisz
AI knowledge assistant
.W sekcji Adres e-mail pomocy technicznej dla użytkowników wybierz swój adres e-mail lub odpowiedni Grupa dyskusyjna Google.
W sekcji Dane kontaktowe dewelopera wpisz swój adres e-mail.
Kliknij Zapisz i kontynuuj.
Kliknij Dodaj lub usuń zakresy. Pojawi się panel z listą zakresów dla każdego interfejsu API włączonego w projekcie Cloud.
W sekcji Dodaj zakresy ręcznie wklej ten zakres:
https://www.googleapis.com/auth/chat.messages
Kliknij Dodaj do tabeli.
Kliknij Aktualizuj.
Kliknij Zapisz i kontynuuj.
Przejrzyj podsumowanie rejestracji aplikacji i kliknij Powrót do panelu.
Utwórz dane uwierzytelniające identyfikatora klienta OAuth
W konsoli Google Cloud wybierz Menu > Interfejsy API i Usługi > Dane logowania.
Kliknij Utwórz dane logowania. > Identyfikator klienta OAuth.
Kliknij Application type (Typ aplikacji). > Aplikacja internetowa.
W polu Nazwa wpisz nazwę danych logowania. Ta nazwa jest tylko widoczne w konsoli Google Cloud.
W sekcji Autoryzowane identyfikatory URI przekierowania kliknij Dodaj URI.
W identyfikatorach URI 1 wpisz:
https://REGION-PROJECT_ID.cloudfunctions.net/app/oauth2
Zastąp następujące elementy:
- REGION: region funkcji w Cloud Functions, np.
us-central1
. Później, podczas tworzenia 2 funkcji w Cloud Functions, musisz ustawić ich regionu na tę wartość. - PROJECT_ID: identyfikator projektu Cloud. utworzony przez Ciebie.
- REGION: region funkcji w Cloud Functions, np.
Kliknij Utwórz.
W oknie Utworzono klienta OAuth kliknij Pobierz plik JSON.
Zapisz pobrany plik jako
client_secrets.json
. Później, gdy utworzysz do obu tych funkcji, umieść w każdej z nich plikclient_secrets.json
lub wdrożenia.Kliknij OK.
Tworzenie tematu Pub/Sub
Temat Pub/Sub współpracuje z Interfejs Google Workspace Events API do subskrybowania wydarzeń w Google Chat pokoju jak wiadomości i powiadomienia aplikacji Google Chat w czasie rzeczywistym obecnie się znajdujesz.
Aby utworzyć temat Pub/Sub:
Google Cloud Console
W konsoli Google Cloud wybierz Menu > Pub/Sub.
Kliknij Utwórz temat.
W polu Identyfikator tematu wpisz
events-api
.Odznacz Dodaj subskrypcję domyślną.
W sekcji Szyfrowanie wybierz Klucz szyfrowania zarządzany przez Google.
Kliknij Utwórz. Pojawi się temat Pub/Sub.
Aby ten temat Pub/Sub i interfejs Google Workspace Events API działały przyznać użytkownikowi uprawnień Google Chat uprawnienia do publikowania w temat Pub/Sub:
W panelu events-api w sekcji UPRAWNIENIA kliknij Dodaj podmiot zabezpieczeń
W sekcji Dodaj podmioty zabezpieczeń w polu Nowe podmioty zabezpieczeń wpisz
chat-api-push@system.gserviceaccount.com
W sekcji Przypisywanie ról w sekcji Wybierz rolę kliknij Pub/Sub > Wydawca Pub/Sub.
Kliknij Zapisz.
interfejs wiersza poleceń gcloud
Utwórz temat Pub/Sub o identyfikatorze tematu
events-api
:gcloud pubsub topics create events-api
Przyznaj użytkownikowi uprawnienia do Google Chat w celu publikowania w temat Pub/Sub:
gcloud pubsub topics add-iam-policy-binding events-api \ --member='serviceAccount:chat-api-push@system.gserviceaccount.com' \ --role='roles/pubsub.publisher'
Tworzenie bazy danych Firestore
Baza danych Firestore będzie działać i będzie pobierać dane
dane z pokoi czatu, np. wiadomości. Nie definiujesz danych
który jest ustawiany niejawnie w przykładowym kodzie przez funkcje model/message.js
Pliki: services/firestore-service.js
.
Baza danych aplikacji Asystent wiedzy AI korzysta z Model danych NoSQL oparty na Firestore danych model.
dokumentów zorganizowane w kolekcje. Więcej informacji:Poniższy diagram przedstawia schemat Asystenta wiedzy o AI Model danych aplikacji Google Chat:
Poziom główny zawiera 2 kolekcje:
spaces
, gdzie każdy dokument reprezentuje pokój czatu, do których dodawana jest aplikacja Google Chat. Każda wiadomość jest reprezentowana reprezentowany przez dokument w podkolekcjimessages
.users
, gdzie każdy dokument reprezentuje użytkownika, który dodał atrybut z aplikacji Google Chat do pokoju czatu.
Wyświetlanie definicji kolekcji, dokumentów i pól
spaces
Pokój czatu zawierający aplikację Google Chat Asystent wiedzy o AI.
Pola | |
---|---|
Document ID | String Unikalny identyfikator określonej przestrzeni. Część nazwy zasobu pokoju w interfejsie Chat API. |
messages | Subcollection of Documents ( Wiadomości wysłane w pokoju czatu. Odpowiada Document ID elementu message w Firebase. |
spaceName | String Unikalna nazwa pokoju w interfejsie Chat API. Odpowiada nazwie zasobu pokoju w interfejsie Chat API. |
messages
Wiadomości wysłane w pokoju czatu.
Pola | |
---|---|
Document ID | String Unikalny identyfikator konkretnej wiadomości. |
name | String Unikalna nazwa wiadomości w interfejsie Chat API. Odpowiada nazwie zasobu wiadomości w interfejsie Chat API. |
text | String Treść wiadomości. |
time | String (Timestamp format) Czas utworzenia wiadomości. |
users
Użytkownicy, którzy dodali aplikację Google Chat Asystent wiedzy o AI do pokoju czatu.
Pola | |
---|---|
Document ID | String Unikalny identyfikator konkretnego użytkownika. |
accessToken | String Token dostępu przyznany podczas autoryzacji użytkownika OAuth 2.0 używany do wywoływania interfejsów Google Workspace API. |
refreshToken | String Token odświeżania przyznany podczas autoryzacji użytkownika OAuth 2.0. |
Aby utworzyć bazę danych Firestore:
Google Cloud Console
W konsoli Google Cloud wybierz Menu > Firestore.
Kliknij Utwórz bazę danych.
W sekcji Wybierz tryb Firestore kliknij Tryb natywny.
Kliknij Dalej.
Skonfiguruj bazę danych:
W polu Nazwij bazę danych pozostaw Identyfikator bazy danych jako
(default)
.W sekcji Typ lokalizacji wybierz Region.
W polu Region podaj region bazy danych, taki jak
us-central1
Aby uzyskać najlepszą skuteczność, wybierz takie samo lub w pobliżu jako lokalizację aplikacji Google Chat w Cloud Functions.
Kliknij Utwórz bazę danych.
interfejs wiersza poleceń gcloud
Utwórz bazę danych Firestore w trybie natywnym:
gcloud firestore databases create \ --location=LOCATION \ --type=firestore-native
Zastąp LOCATION nazwą Firestore regionu, takie jak jako
us-central1
. Aby uzyskać najlepszą skuteczność, wybierz takie samo lub w pobliżu jako lokalizację aplikacji Google Chat w Cloud Functions.
Tworzenie i wdrażanie aplikacji Google Chat
Po utworzeniu i skonfigurowaniu projektu Google Cloud możesz zacząć i wdrożyć aplikację Google Chat. W tej sekcji: :
- Utwórz i wdróż 2 funkcje w Cloud Functions. 1 odpowiedź na czat zdarzenia interakcji i drugie do reagowania na zdarzenia Pub/Sub.
- Tworzenie i wdrażanie aplikacji Google Chat przy użyciu interfejsu Google Chat API stronie konfiguracji.
Tworzenie i wdrażanie funkcji w Cloud Functions
W tej sekcji utworzysz i wdrożysz 2 funkcje w Cloud Functions o nazwie:
app
: hostuje i uruchamia kod, który odpowiada na zdarzenia otrzymywane z Google Chat jako kod HTTP żądań.eventsApp
: odbiera i przetwarza pokój czatu takich jak wiadomości z Pub/Sub.
Te funkcje w Cloud Functions składają się na asystenta wiedzy o AI Logika aplikacji Google Chat.
Opcjonalnie przed utworzeniem funkcji w Cloud Functions poświęć chwilę na zapoznanie się zapoznaj się z przykładowym kodem hostowanym na GitHubie.
Utwórz i wdróż app
Google Cloud Console
Pobierz kod z GitHuba jako plik ZIP.
Rozpakuj pobrany plik ZIP.
Wyodrębniony folder zawiera całe przykłady z Google Workspace z repozytorium.
W wyodrębnionym folderze przejdź do Katalog
google-chat-samples-main/node/ai-knowledge-assistant
.W katalogu
google-chat-samples/node/ai-knowledge-assistant
dodaj plikclient_secrets.json
pobrany podczas utworzenie danych uwierzytelniających identyfikatora klienta OAuth do uwierzytelniania i autoryzacji.Skompresuj zawartość folderu
ai-knowledge-assistant
do pliku ZIP .Katalog główny pliku ZIP musi zawierać: pliki i foldery:
.gcloudignore
.gitignore
README.md
deploy.sh
env.js
events_index.js
http_index.js
index.js
client_secrets.json
package-lock.json
package.json
controllers/
model/
services/
test/
W konsoli Google Cloud wybierz Menu > Cloud Functions.
Sprawdź, czy projekt Google Cloud powiązany z Twoim kontem Wybrano aplikację do obsługi czatu.
Kliknij
Utwórz funkcję.Na stronie Utwórz funkcję skonfiguruj funkcję:
- W sekcji Środowisko wybierz 2 generacji.
- W polu Nazwa funkcji wpisz
app
. - W polu Region wybierz region, np.
us-central1
. Ten region musi być zgodny z regionem ustawionym w autoryzowanym identyfikatorze URI przekierowania, gdy Ty utworzenie danych uwierzytelniających identyfikatora klienta OAuth do uwierzytelniania i autoryzacji. - W sekcji Typ reguły kliknij HTTPS.
- W sekcji Authentication (Uwierzytelnianie) wybierz Zezwalaj na nieuwierzytelnione wywołania.
- Kliknij Dalej.
W sekcji Środowisko wykonawcze wybierz Node.js 20.
W polu Punkt wejścia usuń tekst domyślny i wpisz
app
W sekcji Kod źródłowy wybierz Przesyłanie ZIP.
W sekcji Zasobnik docelowy: utwórz lub wybierz zasobnik:
- Kliknij Przeglądaj.
- Wybierz zasobnik.
- Kliknij Wybierz.
Google Cloud przesyła do niego plik ZIP i rozpakowuje pliki komponentu. w tym zasobniku. Cloud Functions następnie skopiuje pliki komponentu do lub funkcji w Cloud Functions.
W pliku ZIP prześlij plik ZIP pobrany z GitHuba. wyodrębnione i ponownie skompresowane:
- Kliknij Przeglądaj.
- Przejdź do pliku ZIP i wybierz go.
- Kliknij Otwórz.
Kliknij Wdróż.
Otworzy się strona Szczegóły funkcji w Cloud Functions, a pojawi się Twoja funkcja. z dwoma wskaźnikami postępu: jednym dla kompilacji i jednym dla usługi. Gdy oba wskaźniki postępu znikają i zastępowane są znacznikiem postępu , oznacza to, że funkcja jest wdrożona i gotowa.
Zmień przykładowy kod, by ustawić stałe:
- Na stronie Szczegóły funkcji w Cloud Functions kliknij Edytuj.
- Kliknij Dalej.
- W sekcji Kod źródłowy wybierz Wbudowany edytor.
- W edytorze wbudowanym otwórz i zmodyfikuj plik
env.js
:- Ustaw wartość project na Identyfikator projektu Cloud.
- Ustaw wartość location na funkcję w Cloud Functions
region,
na przykład
us-central1
.
Kliknij Wdróż.
interfejs wiersza poleceń gcloud
Sklonuj kod z GitHuba:
git clone https://github.com/googleworkspace/google-chat-samples.git
Przejdź do katalogu, w którym znajduje się kod tej wiedzy o AI aplikacja Asystent Google Chat:
cd google-chat-samples/node/ai-knowledge-assistant
W katalogu
google-chat-samples/node/ai-knowledge-assistant
dodaj plikclient_secrets.json
pobrany podczas utworzenie danych uwierzytelniających identyfikatora klienta OAuth do uwierzytelniania i autoryzacji.Edytuj plik
env.js
, aby ustawić zmienne środowiskowe:- Ustaw wartość project na swój projekt Cloud ID.
- Ustaw wartość location na funkcję w Cloud Functions
region, na przykład
us-central1
Wdróż funkcję w Cloud Functions w Google Cloud:
gcloud functions deploy app \ --gen2 \ --region=REGION \ --runtime=nodejs20 \ --source=. \ --entry-point=app \ --trigger-http \ --allow-unauthenticated
Zastąp REGION wartością funkcji w Cloud Functions region zgodnie z ustawieniami w pliku
env.js
, na przykładus-central1
.
Utwórz i wdróż eventsApp
Google Cloud Console
W konsoli Google Cloud wybierz Menu > Cloud Functions.
Sprawdź, czy projekt Google Cloud powiązany z Twoim kontem Wybrano aplikację do obsługi czatu.
Kliknij
Utwórz funkcję.Na stronie Utwórz funkcję skonfiguruj funkcję:
- W sekcji Środowisko wybierz 2 generacji.
- W polu Nazwa funkcji wpisz
eventsApp
. - W polu Region wybierz region, np.
us-central1
. Ten region musi być zgodny z regionem ustawionym w autoryzowanym identyfikatorze URI przekierowania, gdy Ty utworzenie danych uwierzytelniających identyfikatora klienta OAuth do uwierzytelniania i autoryzacji. - W polu Typ aktywatora wybierz Cloud Pub/Sub.
- W sekcji Temat Cloud Pub/Sub wybierz nazwę tematu Pub/Sub
który ma format
projects/PROJECT/topics/events-api
, gdzie PROJECT to identyfikator Twojego projektu Cloud. - Jeśli pojawi się komunikat rozpoczynający się do
Service account(s) might not have enough permissions to deploy the function with the selected trigger.
, kliknij Przyznaj wszystkie. - Kliknij Dalej.
W sekcji Środowisko wykonawcze wybierz Node.js 20.
W polu Punkt wejścia usuń tekst domyślny i wpisz
eventsApp
W sekcji Source code (Kod źródłowy) wybierz Zip from Cloud Storage.
W sekcji Lokalizacja w Cloud Storage kliknij Przeglądaj.
Wybierz zasobnik, do którego został przesłany plik ZIP podczas tworzenia
app
w Cloud Functions.Kliknij przesłany plik ZIP.
Kliknij Wybierz.
Kliknij Wdróż.
Otworzy się strona Szczegóły funkcji w Cloud Functions, a pojawi się Twoja funkcja. z 3 wskaźnikami postępu: jednym dla kompilacji, drugim dla usługi i drugą dla wyzwalacza. gdy wszystkie 3 wskaźniki postępu znikają; i zostaną zastąpione znacznikiem wyboru, funkcja jest wdrożona i gotowa.
Zmień przykładowy kod, by ustawić stałe:
- Na stronie Szczegóły funkcji w Cloud Functions kliknij Edytuj.
- Kliknij Dalej.
- W sekcji Kod źródłowy wybierz Wbudowany edytor.
- W edytorze wbudowanym otwórz i zmodyfikuj plik
env.js
:- Ustaw wartość project na Identyfikator projektu Cloud.
- Ustaw wartość location na funkcję w Cloud Functions
region,
na przykład
us-central1
.
Kliknij Wdróż.
interfejs wiersza poleceń gcloud
Jeśli nie korzystasz jeszcze z interfejsu wiersza poleceń gcloud, przełącz się na katalog z kodem wiedzy o AI aplikacji Asystent Google Chat, sklonowano z GitHuba:
cd google-chat-samples/node/ai-knowledge-assistant
W katalogu
google-chat-samples/node/ai-knowledge-assistant
dodaj plikclient_secrets.json
pobrany podczas utworzenie danych uwierzytelniających identyfikatora klienta OAuth do uwierzytelniania i autoryzacji.Edytuj plik
env.js
, aby ustawić zmienne środowiskowe:- Ustaw wartość project na swój projekt Cloud ID.
- Ustaw wartość location na funkcję w Cloud Functions
region, na przykład
us-central1
Wdróż funkcję w Cloud Functions w Google Cloud:
gcloud functions deploy eventsApp \ --gen2 \ --region=REGION \ --runtime=nodejs20 \ --source=. \ --entry-point=eventsApp \ --trigger-topic=events-api
Zastąp REGION wartością funkcji w Cloud Functions region zgodnie z ustawieniami w pliku
env.js
, na przykładus-central1
.
Skopiuj URL aktywatora funkcji app
w Cloud Functions
W następnej sekcji wklejasz URL aktywatora funkcji app
w Cloud Functions
gdy
Skonfiguruj aplikację Google Chat w konsoli Google Cloud.
Google Cloud Console
W konsoli Google Cloud wybierz Menu > Cloud Functions.
W kolumnie Nazwa na liście funkcji w Cloud Functions kliknij
app
Kliknij Reguła.
Skopiuj URL.
interfejs wiersza poleceń gcloud
Opisz funkcję
app
w Cloud Functions:gcloud functions describe app
Skopiuj właściwość
url
.
Konfigurowanie aplikacji Google Chat w konsoli Google Cloud
W tej sekcji dowiesz się, jak skonfigurować interfejs Chat API w w konsoli Google Cloud z informacjami o Twojej aplikacji Google Chat, w tym nazwę aplikacji Google Chat oraz adres URL aktywatora aplikacji Google Chat Funkcja, do której wysyła zdarzenia interakcji z Google Chat.
W konsoli Google Cloud kliknij Menu. > Więcej produktów > Google Workspace > Biblioteka usług > Interfejs Google Chat API > Zarządzaj > Konfiguracja.
W polu Nazwa aplikacji wpisz
AI knowledge assistant
.W polu URL awatara wpisz
https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/live_help/default/24px.svg
.W polu Opis wpisz
Answers questions with AI
.Kliknij przełącznik Włącz funkcje interaktywne, aby ustawić go w pozycji włączenia.
W sekcji Funkcjonalność wybierz Dołączanie do pokoi i rozmów grupowych.
W sekcji Ustawienia połączenia wybierz URL aplikacji.
W polu URL aplikacji wklej adres URL aktywatora z funkcji
app
w Cloud Functions. sformatowana jakohttps://
REGION-
PROJECT_ID.cloudfunctions.net/app
gdzie REGION to region funkcji w Cloud Functions, np.us-central1
a PROJECT_ID to identyfikator projektu utworzony przez Ciebie projekt Cloud.W sekcji Widoczność wybierz Udostępnij tę aplikację do obsługi czatu określonym osobom i grupom w domenę Workspace i wpisz swój adres e-mail.
Opcjonalnie w sekcji Logi wybierz Rejestruj błędy w usłudze Logging.
Kliknij Zapisz. Pojawi się komunikat o zapisanej konfiguracji, który oznacza Aplikacja do obsługi czatu to gotowe do testowania.
Testowanie aplikacji Google Chat
Przetestuj aplikację Google Chat Asystent wiedzy o AI Pokój czatu z wiadomościami, zadając pytania AI Asystent wiedzy może odpowiedzieć aplikacja Google Chat.
Oto kilka sposobów na przetestowanie Asystenta wiedzy o AI Aplikacja do obsługi czatu:
- Dodaj aplikację Google Chat Asystent wiedzy o AI do do istniejącego pokoju czatu i zadawaj pytania dotyczące w tej przestrzeni.
- Utwórz pokój czatu i opublikuj kilka wiadomości, które będą używane jako
źródła danych. Wiadomości mogą pochodzić z:
Gemini z promptem takim jak
Answer 20 common onboarding questions employees ask their teams.
Lub: możesz wkleić kilka akapitów z Przewodnik programowanie z Google Chat a potem zadawać pytania na ten temat.
W tym samouczku utwórzmy pokój czatu i wklejmy kilka akapity z Omówienie programowania z Google Chat.
Otwórz Google Chat.
Tworzenie pokoju czatu:
Kliknij > Utwórz pokój.
Nowy czatW polu Nazwa pokoju wpisz
Testing AI knowledge assistant app
.W sekcji Do czego służy ten pokój? wybierz Współpraca.
W sekcji Ustawienia dostępu wybierz, kto może uzyskiwać dostęp do pokoju.
Kliknij Utwórz.
Dodaj wiadomości, które będą używane jako źródło danych:
W przeglądarce otwórz stronę programowanie z omówieniem Google Chat, Google.
Skopiuj treść przewodnika i wklej ją do pokoju czatu utworzony przez Ciebie.
Dodaj aplikację Google Chat Asystent wiedzy o AI:
Na pasku tworzenia wiadomości wpisz
@AI knowledge assistant
, a następnie które się pojawi, wybierz asystenta wiedzy o AI. aplikację Google Chat i naciśnijenter
.Pojawi się komunikat z pytaniem, czy chcesz dodać asystenta wiedzy o AI aplikację Google Chat do pokoju. Kliknij Dodaj do pokoju.
Jeśli dodajesz aplikację Google Chat po raz pierwszy do pokoju, musisz skonfigurować uwierzytelnianie i autoryzację dla Aplikacja do obsługi czatu:
- Kliknij Konfiguruj.
- Otworzy się nowe okno lub nowa karta przeglądarki z prośbą o wybranie Konto Google. Wybierz konto, na którym przeprowadzasz test.
- Sprawdź uprawnienia przyznane asystentowi wiedzy o AI Prośby z aplikacji do obsługi czatu. Aby je przyznać, kliknij Zezwól.
- Pojawi się komunikat
You may close this page now.
. Zamknij okno lub kartę przeglądarki i wróć do Pokój czatu.
Zadaj pytanie:
W pasku tworzenia wiadomości wpisz pytanie, takie jak:
What are Google Chat apps?
Asystent wiedzy o AI odpowiada aplikacji Google Chat.
Opcjonalnie, jeśli odpowiedź jest niedokładna lub niewystarczająca, aby pomóc poprawić historię rozmowy, kliknij
Uzyskaj pomoc. Wzmianki w aplikacji Google Chat Asystenta wiedzy o AI menedżer pokoju i prosi go o udzielenie odpowiedzi na pytanie. Następnym razem Aplikacja Google Chat Asystent wiedzy o AI będzie wiedzieć odpowiedź!
Uwagi, alternatywna architektura i kolejne kroki
W tej sekcji omawiamy inne sposoby, w jakie asystent wiedzy o AI Można tworzyć aplikacje do obsługi czatu.
Firestore, Cloud Storage lub możliwość wywoływania wiadomości z listy w interfejsie Chat API
W tym samouczku zalecamy przechowywanie danych pokoju czatu, takich jak
wiadomości w bazie danych Firestore, ponieważ zwiększa to wydajność w porównaniu z
z wywołaniem metody list
w Message
za każdym razem, gdy
Aplikacja do obsługi czatu odpowiada na pytanie. Następnie dzwonię
Powtarzające się funkcje list messages
mogą powodować, że
aplikacja do obsługi czatu, aby osiągnąć limit interfejsu API;
Jeśli jednak historia rozmów w pokoju czatu stanie się zbyt długie, korzystanie z Firestore może być kosztowne.
Przechowywanie danych w chmurze . to alternatywa dla Firestore. W każdej przestrzeni Asystent wiedzy o AI Aplikacja do obsługi czatu jest aktywna w i otrzymuje własny obiekt, a każdy z nich to plik tekstowy zawierający wszystkie wiadomości w pokoju. Zaletą Ta metoda polega na tym, że pełną zawartość pliku tekstowego można przesłać do Vertex AI z Gemini, ale wadą jest to, że potrzeba więcej pracy zaktualizuj historię rozmowy, ponieważ nie możesz dołączyć do obiektu w Cloud pamięć masową – tylko ją wymieniaj; To podejście nie ma sensu, jeśli regularnie aktualizacji historii wiadomości, ale dobrym rozwiązaniem jest przesyłanie zbiorcze okresową historię wiadomości, np. raz w tygodniu.
Rozwiązywanie problemów
Gdy aplikacja Google Chat lub card zwraca błąd, Interfejs czatu wyświetla komunikat „Coś poszło nie tak”. lub „Nie można przetworzyć żądania”. Czasami interfejs Google Chat nie wyświetla się żaden komunikat o błędzie, ale aplikacja Google Chat lub zwraca nieoczekiwany wynik; na przykład wiadomość w formie karty .
Komunikat o błędzie może nie wyświetlać się w interfejsie Google Chat, opisowe komunikaty o błędach i dane dziennika, które pomogą Ci w naprawianiu błędów gdy logowanie błędów aplikacji Google Chat jest włączone. Aby uzyskać pomoc w wyświetlaniu, debugowania i naprawiania błędów, zapoznaj się z artykułem Rozwiązywanie problemów z błędami w Google Chat
Czyszczenie danych
Aby uniknąć obciążenia konta Google Cloud opłatami za używanych w tym samouczku, zalecamy usunięcie Projekt w chmurze.
- W konsoli Google Cloud otwórz stronę Zarządzanie zasobami. Kliknij Menu > Uprawnienia Administracja > Zarządzaj zasobami.
- Na liście projektów wybierz projekt do usunięcia, a następnie kliknij Usuń .
- W oknie wpisz identyfikator projektu i kliknij Wyłącz, aby go usunąć. nad projektem.
Powiązane artykuły
- Zarządzanie projektami za pomocą Google Chat, Vertex AI i Firestore
- Odpowiadanie na incydenty przy użyciu Google Chat, Vertex AI i Apps Script