Información general sobre la IA generativa

En este documento se describen las funciones de inteligencia artificial (IA) generativa que admite BigQuery. Estas funciones aceptan entradas en lenguaje natural y usan modelos de Vertex AI preentrenados y modelos de BigQuery integrados.

Información general

BigQuery ofrece varias funciones de IA para ayudarte con tareas como las siguientes:

  • Generar contenido creativo.
  • Analiza texto o datos no estructurados, como imágenes, detecta sentimientos y responde preguntas sobre ellos.
  • Resume las ideas o impresiones clave que transmite el contenido.
  • Extrae datos estructurados de texto.
  • Clasifica texto o datos no estructurados en categorías definidas por el usuario.
  • Genera incrustaciones para buscar texto, imágenes y vídeos similares.
  • Valora las aportaciones para ordenarlas por calidad, similitud u otros criterios.

Hay dos categorías principales de funciones de IA que te ayudarán a llevar a cabo estas tareas:

  • Funciones de IA de uso general: estas funciones te ofrecen control total y transparencia sobre la elección del modelo, la petición y los parámetros que se van a usar.

    • Hacer inferencias, como responder a preguntas sobre tus datos

      • AI.GENERATE es la función de inferencia más flexible, que te permite analizar cualquier combinación de texto y datos no estructurados, así como generar datos estructurados que coincidan con tu esquema personalizado.
      • Si necesitas un resultado de un tipo específico, selecciona una de las siguientes funciones de inferencia más especializadas:

        • AI.GENERATE_BOOL
        • AI.GENERATE_DOUBLE
        • AI.GENERATE_INT
    • Generar resultados estructurados, como extraer nombres y direcciones de textos no estructurados

      • AI.GENERATE, cuando especifiques un output_schema
      • AI.GENERATE_TABLE
    • Generar texto con una versión de función con valores de tabla de AI.GENERATE

      • AI.GENERATE_TEXT
    • Generar inserciones para la búsqueda semántica y la agrupación en clústeres

      • AI.EMBED
      • AI.GENERATE_EMBEDDING
      • AI.SIMILARITY
  • Funciones de IA gestionadas: estas funciones tienen una sintaxis optimizada y están optimizadas para reducir costes y mejorar la calidad. BigQuery elige un modelo por ti.

    • Filtrar datos con condiciones de lenguaje natural

      • AI.IF
    • Valorar las aportaciones, por ejemplo, según la calidad o el sentimiento

      • AI.SCORE
    • Clasificar entradas en categorías definidas por el usuario

      • AI.CLASSIFY

Funciones de IA de uso general

Las funciones de IA de uso general te ofrecen control y transparencia totales sobre el modelo, la petición y los parámetros que quieras usar. Su salida incluye información detallada sobre la llamada al modelo, como el estado y la respuesta completa del modelo, que puede incluir información sobre la clasificación de seguridad o las citas.

Generar datos estructurados

La generación de datos estructurados es muy similar a la generación de texto, con la diferencia de que puedes dar formato a la respuesta del modelo especificando un esquema SQL. Por ejemplo, puedes generar una tabla que contenga el nombre, el número de teléfono, la dirección, la solicitud y el presupuesto de un cliente a partir de la transcripción de una llamada telefónica.

Hay dos formas de generar datos estructurados:

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. Por ejemplo, puedes analizar imágenes de muebles para 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.

Estas son las funciones de IA disponibles:

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 texto con un TVF

Puedes realizar tareas de IA generativa con la función con valores de tabla GENERATE_TEXT, que usa modelos remotos en BigQuery ML para hacer referencia a modelos desplegados o alojados en Vertex AI. Puedes crear los siguientes tipos de modelos remotos:

Después de crear un modelo remoto, puedes usar la función AI.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 AI.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 formato ObjectRef para proporcionar datos sin estructurar. Debes usar la función OBJ.GET_ACCESS_URL en la petición para convertir los valores ObjectRef en valores ObjectRefRuntime.
    • Usa la función AI.GENERATE_TEXT para analizar el contenido de texto, imagen, audio, vídeo o 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 AI.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:

Puedes usar la fundamentación y los atributos de seguridad cuando uses modelos de Gemini con la función AI.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.

En algunos modelos, puedes configurar opcionalmente el ajuste supervisado, que te permite entrenar el modelo con tus propios datos para que se adapte mejor a tu caso práctico. Toda la inferencia se produce en Vertex AI. Los resultados se almacenan en BigQuery.

En el caso de los 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 de los hechos y coherencia de 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.

Para obtener más información sobre cómo generar incrustaciones y usarlas para llevar a cabo estas tareas, consulta la introducción a las incrustaciones y la búsqueda vectorial.

Funciones de IA gestionadas

Las funciones de IA gestionadas se han diseñado específicamente para automatizar tareas rutinarias, como la clasificación, la ordenación o el filtrado. Estas funciones usan Gemini y no requieren personalización. BigQuery usa la ingeniería de peticiones y selecciona el modelo y los parámetros adecuados para la tarea específica con el fin de optimizar la calidad y la coherencia de los resultados. Cada función devuelve un valor escalar, como BOOL, FLOAT64 o STRING, y no incluye información de estado adicional del modelo. Están disponibles las siguientes funciones de IA gestionadas:

  • AI.IF: filtra texto o datos multimodales, como en una cláusula WHERE o JOIN, en función de una petición. Por ejemplo, puede filtrar las descripciones de productos por aquellos que describan un artículo que sería un buen regalo.
  • AI.SCORE: Valora las entradas según una petición para clasificar las filas por calidad, similitud u otros criterios. Puedes usar esta función en una cláusula ORDER BY para extraer los K elementos principales según la puntuación. Por ejemplo, puedes encontrar las 10 reseñas de usuarios más positivas o negativas de un producto.
  • AI.CLASSIFY: clasifica el texto en categorías definidas por el usuario. Puedes usar esta función en una cláusula GROUP BY para agrupar las entradas según las categorías que definas. Por ejemplo, puedes clasificar las incidencias de asistencia según si están relacionadas con la facturación, el envío, la calidad del producto u otro tema.

Para ver un tutorial con ejemplos de cómo usar estas funciones, consulta Realizar análisis semántico con funciones de IA gestionadas.

Para ver un tutorial en un cuaderno que muestra cómo usar funciones de IA gestionadas y de uso general, consulta Análisis semántico con funciones de IA.

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.

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.

Monitorizar costes

Las funciones de IA generativa de BigQuery funcionan enviando solicitudes a Vertex AI, lo que puede generar costes. Para hacer un seguimiento de los costes de Vertex AI en los que incurre un trabajo que ejecutas en BigQuery, sigue estos pasos:

  1. Consulta tus informes de facturación en Facturación de Cloud.
  2. Usa filtros para acotar los resultados.

    En Servicios, selecciona Vertex AI.

  3. Para ver los cargos de un trabajo específico, filtra por etiqueta.

    Define la clave como bigquery_job_id_prefix y el valor como el ID de empleo de tu empleo. Si el ID de trabajo tiene más de 63 caracteres, utiliza solo los 63 primeros. Si el ID de trabajo contiene caracteres en mayúsculas, cámbialos a minúsculas. También puedes asociar los trabajos a una etiqueta personalizada para encontrarlos más tarde.

Algunos cargos pueden tardar hasta 24 horas en aparecer en la facturación de Cloud.

Siguientes pasos