Información general sobre la IA generativa
En este documento se describen las funciones de inteligencia artificial (IA) generativa que admite BigQuery ML. Estas funciones te permiten realizar tareas de IA en BigQuery ML mediante modelos de Vertex AI preentrenados y modelos de BigQuery ML integrados.
Entre las tareas admitidas se incluyen las siguientes:
- Generar texto
- Generar datos estructurados
- Generar valores de un tipo específico por fila
- Generar inserciones
- Previsión de series temporales
Para acceder a un modelo de Vertex AI y realizar una de estas funciones, crea un modelo remoto en BigQuery ML que represente el endpoint del modelo de Vertex AI. Una vez que hayas creado un modelo remoto sobre el modelo de Vertex AI que quieras usar, podrás acceder a las funciones de ese modelo ejecutando una función de BigQuery ML en el modelo remoto.
Este enfoque te permite usar las funciones de estos modelos de Vertex AI en consultas de SQL para analizar datos de BigQuery.
Flujo de trabajo
Puedes usar modelos remotos sobre modelos de Vertex AI y modelos remotos sobre servicios de IA de Cloud junto con funciones de BigQuery ML para llevar a cabo tareas complejas de análisis de datos y de IA generativa.
En el siguiente diagrama se muestran algunos flujos de trabajo habituales en los que puede usar estas funciones conjuntamente:
Generar texto
La generación de texto es una forma de IA generativa en la que se genera texto a partir de una petición o del análisis de datos. Puedes generar texto usando datos de texto y multimodales.
Estos son algunos de los usos más habituales de la generación de texto:
- Generando contenido creativo.
- Generando código.
- Generar respuestas de chat o correo.
- Lluvia de ideas, como sugerir vías para futuros productos o servicios.
- Personalización del contenido, como sugerencias de productos.
- Clasificar datos aplicando una o varias etiquetas al contenido para ordenarlo por categorías.
- Identificar los sentimientos clave expresados en el contenido.
- Resumir las ideas o impresiones clave que transmite el contenido.
- Identificar una o varias entidades destacadas en datos de texto o visuales.
- Traducir el contenido de datos de texto o audio a otro idioma.
- Generar texto que coincida con el contenido verbal de los datos de audio.
- Generar subtítulos o responder preguntas sobre datos visuales.
El enriquecimiento de datos es un paso habitual después de la generación de texto, en el que se mejoran las estadísticas de un análisis inicial combinándolas con datos adicionales. Por ejemplo, puedes analizar imágenes de muebles para el hogar y generar texto para una columna design_type
, de forma que el SKU de los muebles tenga una descripción asociada, como mid-century modern
o farmhouse
.
Modelos admitidos
Para realizar tareas de IA generativa, puedes usar modelos remotos en BigQuery ML para hacer referencia a modelos desplegados o alojados en Vertex AI. Puedes crear los siguientes tipos de modelos remotos:
- Modelos remotos de cualquiera de los modelos de Gemini disponibles de forma general o en versión preliminar.
Modelos remotos en los siguientes modelos de partners:
Usar modelos de generación de texto
Una vez que hayas creado un modelo remoto, puedes usar la función ML.GENERATE_TEXT
para interactuar con él:
En el caso de los modelos remotos basados en modelos de Gemini, puedes hacer lo siguiente:
Usa la función
ML.GENERATE_TEXT
para generar texto a partir de una petición que especifiques en una consulta o que extraigas de una columna de una tabla estándar. Cuando especifiques la petición en una consulta, podrás hacer referencia a los siguientes tipos de columnas de tabla en la petición:STRING
columnas para proporcionar datos de texto.- Columnas
STRUCT
que usan el formatoObjectRef
para proporcionar datos sin estructurar. Debes usar la funciónOBJ.GET_ACCESS_URL
en la petición para convertir los valores deObjectRef
en valores deObjectRefRuntime
.
Usa la función
ML.GENERATE_TEXT
para analizar el texto, las imágenes, el audio, el vídeo o el contenido en PDF de una tabla de objetos con una petición que proporciones como argumento de la función.
Para todos los demás tipos de modelos remotos, puedes usar la función
ML.GENERATE_TEXT
con una petición que proporciones en una consulta o desde una columna de una tabla estándar.
Consulta los siguientes temas para probar la generación de texto en BigQuery ML:
- Generar texto con un modelo de Gemini y la función
ML.GENERATE_TEXT
. - Genera texto con un modelo Gemma y la función
ML.GENERATE_TEXT
. - Analiza imágenes con un modelo de Gemini.
- Genera texto con la función
ML.GENERATE_TEXT
y tus datos. - Ajusta un modelo con tus datos.
Atributos de seguridad y de grounding
Puedes usar la fundamentación y los atributos de seguridad cuando uses modelos de Gemini con la función ML.GENERATE_TEXT
, siempre que utilices una tabla estándar como entrada. La fundamentación permite que el modelo de Gemini use información adicional de Internet para generar respuestas más específicas y objetivas. Los atributos de seguridad permiten que el modelo de Gemini filtre las respuestas que devuelve en función de los atributos que especifiques.
Ajuste supervisado
Cuando creas un modelo remoto que hace referencia a cualquiera de los siguientes modelos, puedes configurar opcionalmente el ajuste supervisado al mismo tiempo:
gemini-2.5-pro
gemini-2.5-flash-lite
gemini-2.0-flash-001
gemini-2.0-flash-lite-001
gemini-1.5-pro-002
gemini-1.5-flash-002
Todas las inferencias se producen en Vertex AI. Los resultados se almacenan en BigQuery.
Vertex AI Provisioned Throughput
En el caso de los modelos de Gemini compatibles, puedes usar Vertex AI Provisioned Throughput con la función ML.GENERATE_TEXT
para proporcionar un alto rendimiento constante a las solicitudes. Para obtener más información, consulta Usar el rendimiento aprovisionado de Vertex AI.
Generar datos estructurados
La generación de datos estructurados es muy similar a la generación de texto, pero puedes dar formato a la respuesta del modelo especificando un esquema SQL.
Para generar datos estructurados, crea un modelo remoto con cualquiera de los modelos de Gemini disponibles de forma general o en vista previa. Después, puedes usar la función
AI.GENERATE_TABLE
para interactuar con ese modelo. Para probar a crear datos estructurados, consulta el artículo Generar datos estructurados con la función AI.GENERATE_TABLE
.
Puedes especificar atributos de seguridad cuando uses modelos de Gemini con la función AI.GENERATE_TABLE
para filtrar las respuestas del modelo.
Generar valores de un tipo específico por fila
Puedes usar funciones de IA generativa escalares con modelos de Gemini para analizar datos en tablas estándar de BigQuery. Los datos incluyen datos de texto y datos no estructurados de columnas que contienen valores ObjectRef
.
En cada fila de la tabla, estas funciones generan una salida que contiene un tipo específico.
Estas son las funciones de IA disponibles:
AI.GENERATE
, que genera un valorSTRING
AI.GENERATE_BOOL
AI.GENERATE_DOUBLE
AI.GENERATE_INT
Cuando usas la función AI.GENERATE
con modelos de Gemini compatibles,
puedes usar Vertex AI Provisioned Throughput
para proporcionar un alto rendimiento constante a las solicitudes. Para obtener más información, consulta Usar el rendimiento aprovisionado de Vertex AI.
Generar inserciones
Una incrustación es un vector numérico de alta dimensión que representa una entidad determinada, como un fragmento de texto o un archivo de audio. Generar inserciones te permite captar la semántica de tus datos de forma que sea más fácil razonar sobre ellos y compararlos.
Estos son algunos casos prácticos habituales de la generación de embeddings:
- Usar la generación aumentada por recuperación (RAG) para mejorar las respuestas del modelo a las consultas de los usuarios haciendo referencia a datos adicionales de una fuente fiable. RAG ofrece una mayor precisión factual y coherencia en las respuestas, así como acceso a datos más recientes que los datos de entrenamiento del modelo.
- Realizando una búsqueda multimodal. Por ejemplo, usar la entrada de texto para buscar imágenes.
- Realizar búsquedas semánticas para encontrar elementos similares para recomendaciones, sustituciones y deduplicación de registros.
- Crear inserciones para usarlas con un modelo k-medias para la creación de clústeres.
Modelos admitidos
Se admiten los siguientes modelos:
Para crear inserciones de texto, puedes usar los siguientes modelos de Vertex AI:
gemini-embedding-001
(Vista previa)text-embedding
text-multilingual-embedding
- Modelos abiertos admitidos (Vista previa)
Para crear incrustaciones multimodales, que pueden incrustar texto, imágenes y vídeos en el mismo espacio semántico, puedes usar el modelo
multimodalembedding
de Vertex AI.Para crear incrustaciones de datos estructurados de variables aleatorias independientes e idénticamente distribuidas (IID), puedes usar un modelo de análisis de componentes principales (PCA) o un modelo de autoencoder de BigQuery ML.
Para crear inserciones de datos de usuarios o de elementos, puedes usar un modelo de factorización de matrices de BigQuery ML.
Para obtener una inserción de texto más pequeña y ligera, prueba a usar un modelo de TensorFlow preentrenado, como NNLM, SWIVEL o BERT.
Usar modelos de generación de inserciones
Una vez que hayas creado el modelo, podrás usar la función ML.GENERATE_EMBEDDING
para interactuar con él. En todos los tipos de modelos admitidos, ML.GENERATE_EMBEDDING
funciona con datos estructurados en
tablas estándar. En el caso de los modelos de inserciones multimodales, ML.GENERATE_EMBEDDING
también funciona con contenido visual de columnas de tabla estándar que contienen valores ObjectRef
o de tablas de objetos.
En el caso de los modelos remotos, toda la inferencia se produce en Vertex AI. En el caso de otros tipos de modelos, todas las inferencias se producen en BigQuery. Los resultados se almacenan en BigQuery.
Consulta los siguientes temas para probar la generación de texto en BigQuery ML:
- Generar incrustaciones de texto con la función
ML.GENERATE_EMBEDDING
- Generar inserciones de imágenes con la función
ML.GENERATE_EMBEDDING
- Generar inserciones de vídeo con la función
ML.GENERATE_EMBEDDING
- Generar y buscar incrustaciones multimodales
- Realizar búsquedas semánticas y generación aumentada por recuperación
Previsión
La previsión es una técnica que te permite analizar el historial de datos de series temporales para hacer predicciones fundamentadas sobre tendencias futuras. Puedes usar el modelo de serie temporal TimesFM
(vista previa) integrado de BigQuery ML para hacer previsiones sin tener que crear tu propio modelo. El modelo TimesFM integrado funciona con la función AI.FORECAST
para generar previsiones basadas en tus datos.
Ubicaciones
Las ubicaciones admitidas para los modelos de generación de texto y de inserciones varían en función del tipo y la versión del modelo que utilices. Para obtener más información, consulta Ubicaciones. A diferencia de otros modelos de IA generativa, la compatibilidad con la ubicación no se aplica al modelo de serie temporal TimesFM integrado. El modelo TimesFM está disponible en todas las regiones admitidas de BigQuery.
Precios
Se te cobra por los recursos de computación que usas para ejecutar consultas en modelos. Los modelos remotos hacen llamadas a modelos de Vertex AI, por lo que las consultas a modelos remotos también generan cargos de Vertex AI.
Para obtener más información, consulta los precios de BigQuery ML.
Siguientes pasos
- Para obtener una introducción a la IA y el AA en BigQuery, consulta el artículo Introducción a la IA y el AA en BigQuery.
- Para obtener más información sobre cómo realizar inferencias en modelos de aprendizaje automático, consulta la descripción general de la inferencia de modelos.
- Para obtener más información sobre las instrucciones y funciones de SQL admitidas en los modelos de IA generativa, consulta Recorridos de usuario completos de los modelos de IA generativa.