En este instructivo, se muestra cómo crear una app de Google Chat que responda basadas en conversaciones en los espacios de Chat con las funciones IA con tecnología de Vertex AI y Gemini. La app de Chat usa la API de Google Workspace Events y Pub/Sub para reconocer y responder preguntas publicadas en espacios de Chat en tiempo real, aun cuando sin mencionar.
La app de Chat usa todos los mensajes enviados en el espacio como una fuente de datos y una base de conocimiento: cuando alguien hace una pregunta, La app de Chat comprueba si hay respuestas compartidas anteriormente y, luego, comparte uno. Si no se encuentra una respuesta, dice que no se puede responder. En cada respuesta, los usuarios pueden hacer clic en el botón de acción de un accesorio para @mencionar a un administrador del espacio y preguntarle para obtener una respuesta. Con Gemini, la app de Google Chat se adapta y Aumenta su base de conocimiento a medida que se entrena continuamente con las conversaciones en los espacios. a la que se agrega.
Así es como funciona la app de Chat en la integración de un empleado y asistencia:
-
Figura 2: Dana pregunta si la empresa ofrece capacitación para hablar en público. -
Figura 3: La app de Chat del asistente de conocimiento de IA le indica a Vertex AI con Gemini que responda la pregunta de Dana en función del historial de conversaciones del espacio de Chat y, luego, comparte la respuesta.
Requisitos previos
Una empresa o empresa de Google Workspace con acceso a Google Chat.
Acceso a servicios de Google Cloud para hacer lo siguiente:
- Crea un proyecto de Google Cloud.
- Vincular una cuenta de facturación de Google Cloud al proyecto de Cloud Para saber si tienes acceso, consulta Permisos necesarios para habilitar la facturación.
- Usar invocaciones no autenticadas de Google Cloud Functions, que puedes verificar determinando si tu cuenta de Google Cloud organización usa el uso compartido restringido del dominio.
Si es necesario, pídele a tu administrador de Google Cloud que te otorgue acceso o permiso.
Si usas Google Cloud CLI, una instancia de Node.js entorno de desarrollo configurado para funcionar con gcloud CLI. Consulta Configura un desarrollo de Node.js entorno.
Objetivos
- Compila una app de Chat que use IA generativa para responder preguntas según el conocimiento compartido en el espacio de Chat las conversaciones virtuales.
- Con la IA generativa:
- Detecta y responde preguntas de los empleados.
- Aprende continuamente de las conversaciones en curso en un chat espacio.
- Escucha y responde mensajes en un espacio de Chat de forma real tiempo, incluso cuando la app de Chat no está enviado.
- Conserva los mensajes escribiendo en una base de datos de Firestore y leyendo desde ella.
- Menciona un espacio para facilitar la colaboración en un espacio de Chat de seguridad cuando no se encuentra una respuesta a una pregunta.
Arquitectura
En el siguiente diagrama, se muestra la arquitectura de Google Workspace y Recursos de Google Cloud que usa el asistente de conocimiento de IA App de Chat
La app de Chat del asistente de conocimiento de IA funciona de la siguiente manera:
Un usuario agrega la app de Chat del asistente de conocimiento de IA a un espacio de Chat:
La app de Chat le solicitará usuario que la agregó al espacio de Chat para configurar autenticación y autorización.
La app de Chat recupera los mensajes del espacio Mediante una llamada al método
spaces.messages.list
en la API de Chat Luego, almacena los mensajes recuperados en una base de datos de Firestore.La aplicación de Chat llama al
subscriptions.create
en la API de Google Workspace Events para iniciar escuchar eventos como mensajes en el espacio. El extremo de notificación de la suscripción es un tema de Pub/Sub que usa Eventarc para reenviar el evento a la app de ChatLa app de Chat publica un mensaje de introducción para el espacio.
Un usuario en el espacio de Chat publica un mensaje:
La app de Chat recibe el mensaje en tiempo real del tema de Pub/Sub.
La app de Chat agrega el mensaje a Firestore en la base de datos.
Si más adelante un usuario edita o borra el mensaje, La app de Chat recibe el evento actualizado o borrado en tiempo real y, luego, actualiza o borra el mensaje en Firestore en la base de datos.
La app de Chat envía el mensaje a Vertex AI con Gemini:
La instrucción le indica a Vertex AI con Gemini que verifique si el mensaje incluye una pregunta. Si es así, Gemini responde la pregunta en el historial de mensajes del espacio de Chat que se mantiene en Firestore y la app de Google Chat envía el mensaje al Espacio de Chat Si no es así, no respondas.
Si Vertex AI con Gemini responde la pregunta, La app de Chat publica de respuesta llamando al método
spaces.messages.create
en Chat con autenticación de app.Si Vertex AI con Gemini no puede responder la pregunta, el La app de Chat publica mensaje que dice que no encuentra una respuesta a esa pregunta en el historial del espacio de Chat.
Los mensajes siempre incluyen un botón de acción de accesorio para que los usuarios puedan clic, lo que hará que la app de Chat @menciona a un administrador del espacio para pedirle que responda.
La app de Chat recibe una notificación de ciclo de vida de a la API de Google Workspace Events a la que se suscribe está a punto de caducar:
- La app de Chat envía una solicitud para renovar
mediante una llamada al método
subscriptions.patch
en el API de Google Workspace Events.
- La app de Chat envía una solicitud para renovar
mediante una llamada al método
La app de Chat se quita de una conversación espacio:
La app de Chat borra la suscripción Mediante una llamada al método
subscriptions.delete
en API de Google Workspace Events.La app de Chat borra el entorno de Chat datos del espacio desde Firestore.
Revisa los productos que usa la app de Chat del asistente de conocimiento de IA
La app de Chat del asistente de conocimiento de IA usa los siguientes productos de Google Workspace y Google Cloud:
- API de Vertex AI con Gemini: Una plataforma de IA generativa potenciada por Gemini. El asistente de conocimientos sobre IA app de Chat usa la API de Vertex AI con Gemini para reconocer, comprender y responder las preguntas de los empleados.
-
API de Chat:
Una API para desarrollar apps de Google Chat que reciben y responden a
Eventos de interacción de chat, como mensajes La IA
La app de Chat del asistente de conocimiento usa la API de Chat para lo siguiente:
- Recibe y responde eventos de interacción enviados por Chat.
- Enumera los mensajes que se enviaron en un espacio.
- Publica respuestas a las preguntas de los usuarios en un espacio.
- Configura atributos que determinen cómo aparece en Chat, como el nombre y la imagen de avatar
- API de Google Workspace Events: Esta API te permite suscribirte a eventos y administrar las notificaciones de cambios en las aplicaciones de Google Workspace. El La app de Chat del asistente de conocimiento de IA La API de Google Workspace Events para escuchar los mensajes publicados en un un espacio de Chat para que pueda detectar y responder preguntas incluso sin mencionar.
- Firestore: Una base de datos de documentos sin servidores El asistente de conocimientos sobre IA La app de Chat usa Firestore para almacenar datos sobre los mensajes enviados en un espacio de Chat.
- Pub/Sub: Pub/Sub es un servicio de mensajería escalable y asíncrono que separa servicios que producen mensajes de servicios que procesan esos mensajes. El La app de Chat del asistente de conocimiento de IA usa Pub/Sub para hacer lo siguiente: recibir eventos de suscripción de espacios de Chat.
- Eventarc: Eventarc te permite crear arquitecturas controladas por eventos sin tener que implementar, personalizar o mantener la infraestructura subyacente. La IA La app de Chat de asistencia de conocimientos usa Eventarc para enrutar eventos de Pub/Sub a un espacio de Chat la Cloud Function que recibe y procesa los eventos de suscripción.
-
Cloud Functions:
Un servicio de computación ligero y sin servidores que te permite crear
Funciones independientes de un solo propósito que pueden responder a Chat
eventos de interacción y suscripción sin tener que administrar un servidor o un entorno de ejecución
en un entorno de nube. La app de Chat del asistente de conocimiento de IA
usa dos Cloud Functions llamadas:
-
app
: Aloja el extremo HTTP que envía Chat eventos de interacción hacia y como una plataforma de procesamiento para ejecutar lógica que procesa y responde a estos eventos. -
eventsApp
: Recibe y procesa el espacio de Chat como mensajes de una suscripción a Pub/Sub.
- Cloud Build: Una plataforma completamente administrada de integración, implementación y entrega continuas que ejecuta compilaciones automatizadas.
- Cloud Run: Es un entorno completamente administrado para ejecutar apps alojadas en contenedores.
-
Prepare el entorno
En esta sección, se muestra cómo crear y configurar un proyecto de Google Cloud para la App de Chat
Crea un proyecto de Google Cloud
Consola de Google Cloud
- En la consola de Google Cloud, ve a Menú > IAM y Administrador > Crear un proyecto.
-
En el campo Nombre del proyecto, ingresa un nombre descriptivo para tu proyecto.
Opcional: Para editar el ID del proyecto, haz clic en Editar. No se puede cambiar el ID del proyecto una vez creado el proyecto, así que elige un ID que se adapte a tus necesidades durante el ciclo de vida del en un proyecto final.
- En el campo Ubicación, haz clic en Explorar para mostrar las posibles ubicaciones de tu en un proyecto final. Luego, haga clic en Seleccionar.
- Haz clic en Crear. La consola de Google Cloud navega a la página Panel y se crea tu proyecto en unos minutos.
gcloud CLI
En uno de los siguientes entornos de desarrollo, accede a la API de CLI (`gcloud`):
-
Cloud Shell: Para usar una terminal en línea con gcloud CLI
ya configurado, activa Cloud Shell.
Activar Cloud Shell -
Local Shell: Para usar un entorno de desarrollo local,
instalar y
inicializar
con gcloud CLI.
Para crear un proyecto de Cloud, usa el comando “gcloud projects create”:gcloud projects create PROJECT_ID
Habilita la facturación para el proyecto de Cloud
Consola de Google Cloud
- En la consola de Google Cloud, ve a Facturación. Haz clic en Menú > Facturación > Mis proyectos.
- En Selecciona una organización, elige la organización asociada con tu proyecto de Google Cloud.
- En la fila del proyecto, abre el menú Acciones. ( ), haz clic en Cambiar facturación y elige Cuenta de Facturación de Cloud.
- Haz clic en Establecer cuenta.
gcloud CLI
- Para enumerar las cuentas de facturación disponibles, ejecuta el siguiente comando:
gcloud billing accounts list
- Vincula una cuenta de facturación con un proyecto de Google Cloud:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Reemplaza lo siguiente:
PROJECT_ID
es el ID del proyecto de la Proyecto de Cloud para el que quieres habilitar la facturación.BILLING_ACCOUNT_ID
es el ID de la cuenta de facturación que se vinculará el proyecto de Google Cloud.
Habilitación de las API
Consola de Google Cloud
En la consola de Google Cloud, habilita la API de Google Chat, la API de Vertex AI, la API de Cloud Functions, la API de Firestore, la API de Cloud Build, la API de Pub/Sub, la API de Google Workspace Events y la API de Eventarc y la API de Cloud Run Admin.
Confirma que estás habilitando las APIs en la ubicación correcta de Google Cloud y haz clic en Siguiente.
Confirma que estás habilitando las APIs correctas y, luego, haz clic en Habilitar.
gcloud CLI
Si es necesario, configura el proyecto de Cloud actual con el proyecto que fecha de creación:
gcloud config set project PROJECT_ID
Reemplaza PROJECT_ID por el ID del proyecto de de Google Cloud que creaste.
Habilitar la API de Google Chat, la API de Vertex AI, la API de Cloud Functions, la API de Firestore, la API de Cloud Build, la API de Pub/Sub, la API de Google Workspace Events, la API de Eventarc y la API de Cloud Run 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
Configura la autenticación y la autorización
La autenticación y la autorización permiten Los recursos de acceso a las apps de Chat en Google Workspace y en Google Cloud.
En este instructivo, publicarás la app de Google Chat internamente para que sea Usa la información del marcador de posición. Antes de publicar el App de Google Chat externamente, reemplaza la información del marcador de posición por información real para la pantalla de consentimiento.
Configura la pantalla de consentimiento de OAuth, especifica los permisos y registra tu app
En la consola de Google Cloud, ve a Menú > APIs y Servicios > Pantalla de consentimiento de OAuth.
En Tipo de usuario, selecciona Interno y, luego, haz clic en Crear.
En Nombre de la app, escribe
AI knowledge assistant
.En Correo electrónico de asistencia del usuario, selecciona tu dirección de correo electrónico o una Grupo de Google
En Información de contacto del desarrollador, ingresa tu dirección de correo electrónico.
Haga clic en Guardar y continuar.
Haz clic en Add or Remove Scopes. Aparecerá un panel con una lista de alcances para cada API que hayas habilitado en tu proyecto de Cloud.
En Agregar permisos de forma manual, pega el siguiente alcance:
https://www.googleapis.com/auth/chat.messages
Haz clic en Add to Table.
Haz clic en Actualizar.
Haga clic en Guardar y continuar.
Revisa el resumen del registro de apps y, luego, haz clic en Volver al panel.
Crea credenciales de ID de cliente de OAuth
En la consola de Google Cloud, ve a Menú > APIs y Servicios > Credenciales.
Haz clic en Crear credenciales. > ID de cliente de OAuth.
Haz clic en Tipo de aplicación. > Aplicación web.
En el campo Nombre, escribe un nombre para la credencial. Este nombre solo es que se muestran en la consola de Google Cloud.
En URI de redireccionamiento autorizados, haz clic en Agregar URI.
En URIs 1, escribe lo siguiente:
https://REGION-PROJECT_ID.cloudfunctions.net/app/oauth2
Reemplaza lo siguiente:
- REGION: Es la región de la Cloud Function, como
us-central1
. Más adelante, cuando crees las dos Cloud Functions, debes establecer sus región con este valor. - PROJECT_ID: El ID del proyecto de Cloud. que creaste.
- REGION: Es la región de la Cloud Function, como
Haz clic en Crear.
En la ventana Se creó el cliente de OAuth, haz clic en Descargar JSON.
Guarda el archivo descargado como
client_secrets.json
. Más adelante, cuando crees las dos Cloud Functions, debes incluir el archivoclient_secrets.json
en cada de Google Workspace.Haz clic en Aceptar.
Cree el tema de Pub/Sub
El tema de Pub/Sub funciona con API de Google Workspace Events para suscribirse a eventos en Chat como mensajes y notificar a la app de Chat tiempo.
A continuación, te mostramos cómo crear el tema de Pub/Sub:
Consola de Google Cloud
En la consola de Google Cloud, ve a Menú > Pub/Sub.
Haz clic en Crear tema.
En ID del tema, escribe
events-api
.Anula la selección de Agregar una suscripción predeterminada.
En Encriptación, selecciona Clave de encriptación administrada por Google.
Haz clic en Crear. Aparecerá el tema de Pub/Sub.
Para que funcionen este tema de Pub/Sub y la API de Google Workspace Events otorgar al usuario de IAM de Chat permiso para publicar el tema de Pub/Sub:
En el panel events-api, en PERMISOS, haz clic en Agregar principal.
En Agregar principales, en Principales nuevas, escribe
chat-api-push@system.gserviceaccount.com
En Asignar roles, en Selecciona un rol, selecciona Pub/Sub. > Publicador de Pub/Sub.
Haz clic en Guardar.
gcloud CLI
Crea un tema de Pub/Sub con el ID del tema
events-api
:gcloud pubsub topics create events-api
Otorga permiso al usuario de IAM de Chat para publicar en el tema de Pub/Sub:
gcloud pubsub topics add-iam-policy-binding events-api \ --member='serviceAccount:chat-api-push@system.gserviceaccount.com' \ --role='roles/pubsub.publisher'
Crea la base de datos de Firestore
La base de datos de Firestore persiste y se recupera
de los espacios de Chat, como los mensajes. No defines los datos
que se establece de forma implícita en el código de muestra mediante model/message.js
y
services/firestore-service.js
archivos.
La base de datos de la app de Chat del asistente de conocimiento de IA usa un de datos NoSQL basado en Modelo de datos de Firestore.
documentos se organizan en colecciones. Para obtener más información, consultaEl siguiente diagrama es una descripción general del asistente de conocimiento de IA Modelo de datos de la app de Chat:
La raíz contiene dos colecciones:
spaces
, en el que cada documento representa un espacio de Chat que la app de Chat. Cada mensaje se representa por un documento de la subcolecciónmessages
.users
, en el que cada documento representa a un usuario que agregó el de Chat a un espacio de Chat.
Visualiza definiciones de colecciones, documentos y campos
spaces
Un espacio de Chat que incluya la app de Chat del asistente de conocimiento de IA.
Campos | |
---|---|
Document ID | String ID único de un espacio específico. Una parte del nombre del recurso del espacio en la API de Chat |
messages | Subcollection of Documents ( Mensajes enviados en el espacio de Chat Corresponde al Document ID de un message en Firebase. |
spaceName | String El nombre único del espacio en la API de Chat. Corresponde al nombre del recurso del espacio en la API de Chat. |
messages
Mensajes enviados en el espacio de Chat
Campos | |
---|---|
Document ID | String El ID único de un mensaje específico. |
name | String Es el nombre único de un mensaje en la API de Chat. Corresponde al nombre del recurso del mensaje en la API de Chat. |
text | String El cuerpo del texto del mensaje. |
time | String (Timestamp format) La hora a la que se creó el mensaje. |
users
Usuarios que agregaron la app de Chat del asistente de conocimiento de IA a un espacio de Chat.
Campos | |
---|---|
Document ID | String Es el ID único de un usuario específico. |
accessToken | String El token de acceso otorgado durante la autorización del usuario de OAuth 2.0 que se usa para llamar a las APIs de Google Workspace. |
refreshToken | String El token de actualización otorgado durante la autorización del usuario de OAuth 2.0. |
Aquí te mostramos cómo crear la base de datos de Firestore:
Consola de Google Cloud
En la consola de Google Cloud, ve a Menú > Firestore.
Haz clic en Crear base de datos.
En Selecciona tu modo de Firestore, haz clic en Modo nativo.
Haz clic en Continuar.
Configura la base de datos:
En Asigna un nombre a tu base de datos, deja el ID de base de datos como
(default)
.En Tipo de ubicación, selecciona Región.
En Región, especifica una región para la base de datos, como
us-central1
Para obtener el mejor rendimiento, selecciona el mismo lugar o cerca ubicación que las funciones de Cloud Functions de la app de Chat.
Haz clic en Crear base de datos.
gcloud CLI
Crea una base de datos de Firestore en modo nativo:
gcloud firestore databases create \ --location=LOCATION \ --type=firestore-native
Reemplaza LOCATION por el nombre de un Firestore región, como como
us-central1
. Para obtener el mejor rendimiento, selecciona el mismo lugar o cerca ubicación que las funciones de Cloud Functions de la app de Chat.
Crea e implementa la app de Chat
Ahora que creaste y configuraste tu proyecto de Google Cloud, podrás crear y, luego, implementarás la app de Chat. En esta sección, realizarás las lo siguiente:
- Crear e implementar dos Cloud Functions Alguien para responder al chat de interacción y uno para responder a los eventos de Pub/Sub.
- Crea e implementa una app de Chat en la API de Google Chat página de configuración.
Crea e implementa las funciones de Cloud Functions
En esta sección, crearás y, luego, implementarás dos Cloud Functions llamadas:
app
: Aloja y ejecuta la app de Chat. código que responde a los eventos recibidos de Chat como HTTP solicitudes.eventsApp
: Recibe y procesa el espacio de Chat. eventos, como mensajes de Pub/Sub.
En conjunto, estas funciones de Cloud Functions conforman el asistente de conocimiento de IA Lógica de la aplicación de la app de Chat
Opcionalmente, antes de crear las Cloud Functions, tómate un momento para revisar y Familiarízate con el código de muestra alojado en GitHub.
Crea e implementa app
Consola de Google Cloud
Descarga el código de GitHub como un archivo ZIP.
Extraiga el archivo ZIP que se descargó.
La carpeta extraída contiene todas las muestras de Google Workspace completas. en un repositorio de confianza.
En la carpeta extraída, navega hasta
google-chat-samples-main/node/ai-knowledge-assistant
.En el directorio
google-chat-samples/node/ai-knowledge-assistant
, agrega el archivoclient_secrets.json
que descargaste cuando creaste credenciales de ID de cliente de OAuth para la autenticación y autorización.Comprime el contenido de la carpeta
ai-knowledge-assistant
en un archivo ZIP .El directorio raíz del archivo ZIP debe contener lo siguiente: archivos y carpetas:
.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/
En la consola de Google Cloud, ve a Menú > Cloud Functions.
Asegúrate de que el proyecto de Google Cloud de tu La app de Chat está seleccionada.
Haz clic en
Crear función.En la página Crear función, configura tu función:
- En Entorno, selecciona 2nd gen.
- En Nombre de la función, escribe
app
. - En Región, selecciona una región, como
us-central1
. Esta región debe coincidir con la región que establezcas en el URI de redireccionamiento autorizado cuando tú credenciales de ID de cliente de OAuth para la autenticación y autorización. - En Tipo de activador, selecciona HTTPS.
- En Autenticación, selecciona Permite invocaciones no autenticadas.
- Haz clic en Siguiente.
En Entorno de ejecución, selecciona Node.js 20.
En Punto de entrada, borra el texto predeterminado y, luego, ingresa
app
En Código fuente, selecciona Carga ZIP.
En Bucket de destino, haz lo siguiente: crear o selecciona un bucket:
- Haz clic en Explorar.
- Elige un bucket.
- Haz clic en Seleccionar.
Google Cloud sube el archivo ZIP y extrae los archivos componentes en este bucket. Cloud Functions luego copia los archivos componentes la Cloud Function.
En Archivo ZIP, sube el archivo ZIP que descargaste de GitHub. se extraen y se vuelven a comprimir:
- Haz clic en Explorar.
- Navega hasta el archivo ZIP y selecciónalo.
- Haz clic en Abrir.
Haz clic en Implementar.
Se abrirá la página Detalle de Cloud Functions, y aparecerá tu función. con dos indicadores de progreso: uno para la compilación y otro para el servicio. Cuando ambos indicadores de progreso desaparecen y se reemplazan por una marca de verificación significa que tu función está implementada y lista.
Edita el código de muestra para establecer constantes:
- En la página de detalles de la Cloud Function, haz clic en Editar.
- Haz clic en Siguiente.
- En Código fuente, selecciona Editor intercalado.
- En el editor directo, abre y edita el archivo
env.js
:- Establece el valor de project en ID del proyecto de la nube.
- Configura el valor de location como el de la Cloud Function
región,
como
us-central1
.
Haz clic en Implementar.
gcloud CLI
Clona el código desde GitHub:
git clone https://github.com/googleworkspace/google-chat-samples.git
Cambia al directorio que contiene el código de este conocimiento sobre IA App de Chat del Asistente:
cd google-chat-samples/node/ai-knowledge-assistant
En el directorio
google-chat-samples/node/ai-knowledge-assistant
, agrega el archivoclient_secrets.json
que descargaste cuando creaste credenciales de ID de cliente de OAuth para la autenticación y autorización.Edita el archivo
env.js
para establecer variables de entorno:- Configura el valor de project para tu proyecto de Cloud ID.
- Configura el valor de location como el de la Cloud Function
region, como
us-central1
Implementa la Cloud Function en Google Cloud:
gcloud functions deploy app \ --gen2 \ --region=REGION \ --runtime=nodejs20 \ --source=. \ --entry-point=app \ --trigger-http \ --allow-unauthenticated
Reemplaza REGION por el valor de la función de Cloud Functions. región para que coincida con el establecido en el archivo
env.js
, comous-central1
.
Crea e implementa eventsApp
Consola de Google Cloud
En la consola de Google Cloud, ve a Menú > Cloud Functions.
Asegúrate de que el proyecto de Google Cloud de tu La app de Chat está seleccionada.
Haz clic en
Crear función.En la página Crear función, configura tu función:
- En Entorno, selecciona 2nd gen.
- En Nombre de la función, escribe
eventsApp
. - En Región, selecciona una región, como
us-central1
. Esta región debe coincidir con la región que establezcas en el URI de redireccionamiento autorizado cuando tú credenciales de ID de cliente de OAuth para la autenticación y autorización. - En Tipo de activador, selecciona Cloud Pub/Sub.
- En Tema de Cloud Pub/Sub, selecciona el nombre del tema de Pub/Sub que
creado, que tiene el formato
projects/PROJECT/topics/events-api
, donde PROJECT es el ID del proyecto de Cloud. - Si ves un mensaje que comienza a
Service account(s) might not have enough permissions to deploy the function with the selected trigger.
, haz clic en Otorgar todo. - Haz clic en Siguiente.
En Entorno de ejecución, selecciona Node.js 20.
En Punto de entrada, borra el texto predeterminado y, luego, ingresa
eventsApp
En Código fuente, selecciona Zip from Cloud Storage.
En la ubicación de Cloud Storage, haz clic en Explorar.
Selecciona el bucket al que subiste el archivo ZIP cuando creaste el archivo
app
de Cloud Function.Haz clic en el archivo ZIP que subiste.
Haz clic en Seleccionar.
Haz clic en Implementar.
Se abrirá la página Detalle de Cloud Functions, y aparecerá tu función. con tres indicadores de progreso: uno para la compilación, otro para el servicio y otro para el activador. Cuando desaparecen los tres indicadores de progreso y se reemplazan por una marca de verificación, significa que tu función está implementada y lista.
Edita el código de muestra para establecer constantes:
- En la página de detalles de la Cloud Function, haz clic en Editar.
- Haz clic en Siguiente.
- En Código fuente, selecciona Editor intercalado.
- En el editor directo, abre y edita el archivo
env.js
:- Establece el valor de project en ID del proyecto de la nube.
- Configura el valor de location como el de la Cloud Function
región,
como
us-central1
.
Haz clic en Implementar.
gcloud CLI
En gcloud CLI, si aún no estás allí, cambia al directorio que contiene el código de este conocimiento sobre la IA de Chat que ya usaste clonado desde GitHub:
cd google-chat-samples/node/ai-knowledge-assistant
En el directorio
google-chat-samples/node/ai-knowledge-assistant
, agrega el archivoclient_secrets.json
que descargaste cuando creaste credenciales de ID de cliente de OAuth para la autenticación y autorización.Edita el archivo
env.js
para establecer variables de entorno:- Configura el valor de project para tu proyecto de Cloud ID.
- Configura el valor de location como el de la Cloud Function
region, como
us-central1
Implementa la Cloud Function en Google Cloud:
gcloud functions deploy eventsApp \ --gen2 \ --region=REGION \ --runtime=nodejs20 \ --source=. \ --entry-point=eventsApp \ --trigger-topic=events-api
Reemplaza REGION por el valor de la función de Cloud Functions. región para que coincida con el establecido en el archivo
env.js
, comous-central1
.
Copiar la URL del activador de Cloud Functions app
Pega la URL del activador de Cloud Functions app
en la siguiente sección
cuando
Configura la app de Chat en la consola de Google Cloud.
Consola de Google Cloud
En la consola de Google Cloud, ve a Menú > Cloud Functions.
En la columna Nombre de la lista de Cloud Functions, haz clic en
app
Haz clic en Activar.
Copia la URL.
gcloud CLI
Describe la Cloud Function
app
:gcloud functions describe app
Copia la propiedad
url
.
Configura la app de Chat en la consola de Google Cloud
En esta sección, se muestra cómo configurar la API de Chat en el La consola de Google Cloud con información sobre tu app de Chat incluido el nombre de la app de Chat y la URL activadora de la API de Cloud Función a la que envía eventos de interacción de Chat.
En la consola de Google Cloud, haz clic en Menú. > Más productos > Google Workspace > Biblioteca de productos > API de Google Chat > Administrar > Configuración.
En Nombre de la app, escribe
AI knowledge assistant
.En URL del avatar, escribe
https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/live_help/default/24px.svg
.En Description, escribe
Answers questions with AI
.Haz clic en el botón de activación Enable Interactive features.
En Funcionalidad, selecciona Unirse a espacios y conversaciones grupales.
En Configuración de la conexión, selecciona URL de la aplicación.
En URL de la app, pega la URL del activador de la Cloud Function
app
. formateado comohttps://
REGION-
PROJECT_ID.cloudfunctions.net/app
donde REGION es la región de la Cloud Function, comous-central1
y PROJECT_ID es el ID del proyecto de la de Google Cloud que creaste.En Visibilidad (Visibility), selecciona Haz que esta app de Chat esté disponible para personas y grupos específicos de tus Dominio de Workspace y, luego, ingresa tu dirección de correo electrónico.
De manera opcional, en Registros, selecciona Registrar errores en Logging.
Haz clic en Guardar. Aparecerá un mensaje de configuración guardada, lo que significa que La aplicación de Chat es listo para probarlo.
Prueba la app de Chat
Probar la app de Chat del asistente de conocimiento de IA en un Un espacio de Chat con mensajes haciendo preguntas que la IA la app de Chat del asistente de conocimiento puede responder.
Estas son algunas formas de probar el asistente de conocimiento de la IA App de Chat:
- Agrega la app de Chat del asistente de conocimiento de IA a un un espacio de Chat existente y haz preguntas ese espacio.
- Crea un espacio de Chat y publica algunos mensajes para usarlos como
una fuente de datos. Los mensajes se pueden obtener de
Gemini con una instrucción como
Answer 20 common onboarding questions employees ask their teams.
O puedes pegar algunos párrafos del Guía de descripción general para desarrollar con Chat y, luego, hacer preguntas al respecto.
Para este instructivo, creemos un espacio de Chat y peguemos algunos párrafos desde el Descripción general del desarrollo con Chat.
Abre Google Chat.
Sigue estos pasos para crear un espacio de Chat:
Haz clic en > Crear un espacio.
New Chat.En Nombre del espacio, escribe
Testing AI knowledge assistant app
.En ¿Para qué sirve este espacio?, selecciona Colaboración.
En Configuración de acceso, elige quién puede acceder al espacio.
Haz clic en Crear.
Agrega mensajes para usarlos como fuente de datos:
En un navegador web, visita la Descripción general del desarrollo con Chat .
Copia y pega el contenido de la guía en el espacio de Chat. que creaste.
Agrega la app de Chat del asistente de conocimiento de IA:
En la barra para redactar mensajes, escribe
@AI knowledge assistant
y, en de sugerencias que aparece, selecciona el asistente Chat, presionaenter
.Aparecerá un mensaje en el que se te preguntará si quieres agregar el asistente de conocimiento de IA App de Chat al espacio. Haz clic en Agregar al espacio.
Si es la primera vez que agregas la app de Chat a un espacio, debes configurar la autenticación y la autorización App de Chat:
- Haz clic en Configurar.
- Se abrirá una nueva ventana o pestaña del navegador para que elijas una Cuenta de Google. Elige la cuenta con la que realizas la prueba.
- Revisar los permisos que el asistente de conocimientos de IA Solicitudes de la app de Chat. Para otorgarlos, haz clic en Permitir.
- Aparecerá un mensaje que dice
You may close this page now.
. Cierra la ventana o pestaña del navegador y regresa a Espacio de Chat
Realiza una pregunta:
En la barra para redactar mensajes, escribe una pregunta como
What are Google Chat apps?
La app de Chat del asistente de conocimiento de IA responde.
Opcionalmente, si la respuesta no es precisa o suficiente, para ayudar a la IA mejorar el historial de conversaciones, haz clic
Obtén ayuda. La app de Chat del asistente de conocimiento de IA menciona a un administrador del espacio y le pides que responda la pregunta. La próxima vez, el La app de Chat del asistente de conocimiento de IA sabrá lo que la respuesta.
Consideraciones, opciones de arquitectura alternativa y próximos pasos
En esta sección, se revisan otras formas en las que el asistente de conocimiento de IA Chat.
Firestore, Cloud Storage o la llamada a List Messages en la API de Chat
En este instructivo, se recomienda almacenar datos del espacio de Chat, como
mensajes en una base de datos de Firestore porque mejora el rendimiento en comparación
con la llamada al método list
en Message
recurso con la API de Chat cada vez que
La app de Chat responde una pregunta. Además, las llamadas
list messages
de manera repetida puede causar la
La app de Chat alcanzó los límites de cuota de la API.
Sin embargo, si el historial de conversaciones de un espacio de Chat se demasiado tiempo, usar Firestore puede resultar costoso.
Cloud Storage es una alternativa a Firestore. En cada espacio en el que el asistente La app de Chat está activa recibe su propio objeto, y cada uno es un archivo de texto que contiene todos los mensajes del espacio. La ventaja de Con este enfoque, el contenido completo del archivo de texto se puede enviar a Vertex IA con Gemini al mismo tiempo, pero el inconveniente es que se necesita más trabajo para actualizar el historial de conversaciones porque no se puede agregar a un objeto en Cloud Almacenamiento, solo debes reemplazarlo. Este enfoque no tiene sentido si usas con frecuencia el historial de mensajes, pero sería una buena opción el historial de mensajes de forma periódica, por ejemplo, una vez por semana.
Solucionar problemas
Cuando una app de Google Chat o card muestra un error, el En la interfaz de Chat, aparece un mensaje que dice “Se produjo un error”. o "No se pudo procesar la solicitud". A veces, la IU de Chat no muestra ningún mensaje de error, pero la app de Chat la tarjeta produce un resultado inesperado; Por ejemplo, es posible que un mensaje de tarjeta no para que aparezca la opción.
Aunque es posible que no aparezca un mensaje de error en la IU de Chat, Hay mensajes de error descriptivos y datos de registro disponibles para ayudarte a corregir errores. Cuando se activa el registro de errores de las apps de Chat. Para obtener ayuda sobre la visualización, la depuración y la corrección de errores, consulta Soluciona problemas y corrige errores de Google Chat.
Limpia
Para evitar que se apliquen cargos a tu cuenta de Google Cloud por el recursos usados en este instructivo, te recomendamos que borres el Cloud.
- En la consola de Google Cloud, ve a la página Administrar recursos. Haz clic en Menú > IAM y Administrador > Administrar recursos.
- En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borra .
- En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrarlo. el proyecto.
Temas relacionados
- Administra proyectos con Google Chat, Vertex AI y Firestore
- Responde a incidentes con Google Chat, Vertex AI y Apps Script