Puedes conectar tu instancia de AlloyDB a Gemini Enterprise para acceder a tus datos en tiempo real.
En comparación con la importación desde AlloyDB, la conexión tiene las siguientes ventajas:
- Evita la necesidad de importar, indexar y duplicar datos.
- Actualización de datos máxima.
- No hay costes adicionales de indexación ni de almacenamiento.
- No es necesario acoplar los datos estructurados en registros uniformes.
Tenga en cuenta las siguientes desventajas de la conexión en comparación con la importación:
- Este enfoque solo admite consultas estructuradas, no consultas semánticas ni semisemánticas.
- La configuración es un poco más compleja que la importación de datos.
Limitaciones
La conexión a AlloyDB tiene las siguientes limitaciones:
- Gemini Enterprise admite el control de acceso a nivel de objetos de base de datos, como tablas y columnas, pero no a nivel de usuario. Todos los usuarios que tengan acceso a tu aplicación de Gemini Enterprise podrán ver los mismos datos.
- Puedes crear un almacén de datos de AlloyDB con la API, pero no con la Google Cloud consola.
Antes de empezar
La conexión a AlloyDB está en versión preliminar con una lista de permitidos. Para usar esta función, regístrate con el siguiente formulario: Habilitar o inhabilitar el uso de Gemini Enterprise y la conexión a datos de AlloyDB
Después de registrarte, espera a recibir la confirmación de habilitación antes de seguir las instrucciones de esta página.
Configurar el lenguaje natural de AlloyDB AI
Este conector se basa en el lenguaje natural de AlloyDB AI en AlloyDB, que traduce las consultas en lenguaje natural a consultas SQL.
Antes de conectarte, configura el lenguaje natural de AlloyDB AI en tu base de datos siguiendo los pasos que se indican en el artículo Generar consultas de SQL que respondan a preguntas en lenguaje natural de la documentación de AlloyDB.
Ten en cuenta que añadir plantillas en el lenguaje natural de AlloyDB AI (un conjunto seleccionado de preguntas en lenguaje natural con las consultas de SQL correspondientes) es especialmente útil para mejorar la calidad. Cuando añada plantillas, Google recomienda lo siguiente:
Usa
ORDER BY
para evitar el no determinismo. Por ejemplo:SELECT customers.id FROM customers ORDER BY customers.id;
.
Configurar la autenticación entre Gemini Enterprise y AlloyDB
Gemini Enterprise accede a AlloyDB mediante una cuenta de servicio dedicada y un usuario de la base de datos en tu instancia de AlloyDB. Con este enfoque, todos los usuarios de Gemini Enterprise pueden ver los mismos datos, sin controles de acceso específicos para cada usuario.
Una cuenta de servicio se usa para conectarse e interactuar con tu instancia de AlloyDB. Para habilitar esta opción, debes configurar los ajustes de Gestión de Identidades y Accesos (IAM) en el Google Cloud proyecto en el que se encuentra tu instancia de base de datos.
Para configurar la autenticación, haz lo siguiente:
- Ve a la página de configuración de gestión de identidades y accesos del proyecto que aloja tu instancia de AlloyDB.
Asigna el rol Usuario de base de datos de AlloyDB en Cloud al siguiente principal:
service-PROJECT_NUMBER@gcp-sa-discoveryengine.
Sustituye
PROJECT_NUMBER
por el número de proyecto Google Cloud en el que usas Gemini Enterprise.En tu instancia de AlloyDB, crea un usuario de base de datos que Gemini Enterprise pueda usar para ejecutar consultas SQL.
Es muy importante que concedas a este usuario acceso de solo lectura y solo a las tablas, vistas y columnas a las que se debe poder acceder desde Gemini Enterprise. De esta forma:
Las consultas de Gemini Enterprise no pueden cambiar ni eliminar tus datos. Gemini Enterprise se ha diseñado para leer datos de tu base de datos y no cambiar nada, pero Google no puede excluir por completo la posibilidad de que la IA genere consultas de escritura no deseadas.
Los usuarios de Gemini Enterprise solo pueden ver los datos que les corresponden.
Por ejemplo:
CREATE ROLE USER_NAME WITH LOGIN PASSWORD 'PASSWORD'; GRANT SELECT ON TABLE "public"."TABLE_NAME_1" TO USER_NAME; GRANT SELECT ON TABLE "public"."TABLE_NAME_2" TO USER_NAME;
Cuando vincules Gemini Enterprise con AlloyDB, proporciona el nombre de usuario y la contraseña en los campos Usuario y Contraseña de
alloydbConnectionConfig
.
Vincular Gemini Enterprise con AlloyDB
Para conectar tu instancia de AlloyDB, sigue estos pasos:
Crea un almacén de datos en Gemini Enterprise con los detalles de tu conexión de AlloyDB mediante la API, incluido
federatedSearchConfig.alloyDbConfig
.En el siguiente ejemplo:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" -d '{ "displayName": "DATA_STORE_NAME", "federatedSearchConfig": { "alloyDbConfig": { "alloydbConnectionConfig": { "instance": "INSTANCE_PATH", "database": "DATABASE_NAME", "user": "DATABASE_USER_NAME", "password": "DATABASE_USER_PASSWORD", "authMode": "AUTH_MODE_SERVICE_ACCOUNT" }, "alloydb_ai_nl_config": { "nlConfigId": "NL_CONFIG_ID" } } }, "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_SEARCH"] }'
Haz los cambios siguientes:
PROJECT_ID
: el ID del proyecto en el que usas Gemini Enterprise.LOCATION
: la ubicación de tu almacén de datos. Debería ser la misma ubicación que tu instancia de Gemini Enterprise.DATA_STORE_ID
: el ID del almacén de datos que quieres crear. Este ID solo puede contener letras minúsculas, dígitos, guiones bajos y guiones.DATA_STORE_NAME
: el nombre visible del almacén de datos que quieres crear.INSTANCE_PATH
: la ruta de tu instancia de AlloyDB, con el formatoprojects/.../locations/.../clusters/.../instances/...
.DATABASE_NAME
: el ID de la base de datos de AlloyDB.DATABASE_USER_NAME
: el ID del usuario de la base de datos de AlloyDB.DATABASE_USER_PASSWORD
: la contraseña del usuario de la base de datos de AlloyDB.NL_CONFIG_ID
: el ID de la configuración de lenguaje natural de AlloyDB AI.
Adjunta tu almacén de datos a una aplicación de Gemini Enterprise que ya tengas o crea una aplicación y selecciona tu conector. Para ello, sigue los pasos que se indican en Crear una aplicación.
Para ver cómo aparecen los resultados de búsqueda después de configurar tu aplicación, consulta Vista previa de los resultados de búsqueda.