Elige un modelo de incorporación de texto

En este documento, se proporciona una comparativa del rendimiento y el costo de los modelos de incorporación de texto disponibles en BigQuery ML. Puedes usar esta información para decidir qué modelo es mejor para tu caso de uso.

ajustables

En esta comparativa, se abordan los siguientes tipos de modelos:

La comparativa usa la sintaxis descrita en Incorpora texto con la función ML.GENERATE_EMBEDDING para procesar la consulta ML.GENERATE_EMBEDDING.

La comparativa usa la sintaxis descrita en Genera incorporaciones de texto para procesar las consultas ML.PREDICT.

Cálculo de costos

La comparativa calcula los costos de BigQuery según los precios de procesamiento según demanda de BigQuery ($6.25 por TiB). El cálculo no tiene en cuenta el hecho de que el primer TiB de procesamiento de procesamiento que se usa por mes es gratuito.

Los costos de Vertex AI asociados con la llamada al modelo BERT se calculan mediante la tasa de predicción n1-highmem-8.

Los costos de Vertex AI asociados con la llamada al modelo textembedding-gecko se calculan mediante la tasa de predicción Embeddings for Text.

Si deseas obtener información sobre los precios de BigQuery ML, consulta los precios de BigQuery ML.

Datos de comparativas

La comparativa usa el conjunto de datos públicos bigquery-public-data.hacker_news.full, preparado de la siguiente manera:

  • Copió los datos en una tabla de prueba y duplicó cada fila 100 veces:

    CREATE OR REPLACE TABLE `mydataset.hacker_news.large` AS
      SELECT base.*
      FROM `bigquery-public-data.hacker_news.full` AS base,
      UNNEST(GENERATE_ARRAY(1, 100)) AS repeat_number;
  • Creaste tablas de prueba adicionales de diferentes tamaños para usar en la comparativa, en función de la tabla hacker_news.large. Se usaron tablas de prueba de los siguientes tamaños:

    • 100,000 filas
    • 1,000,000 filas
    • 10,000,000 filas
    • 100,000,000 filas
    • 1,000,000,000 filas
    • 10,000,000,000 filas

Comparativa

En la siguiente tabla, se muestran los datos de comparativas:

Modelo Dimensiones de incorporación Cantidad de filas Hora y fecha de la ejecución Total de milisegundos de ranura Bytes procesados Servicio utilizado Costo en USD
SWIVEL 20 100,000 5 segundos 6,128 37 MB BigQuery 0.00022
1 millón 1 minuto, 1 segundo 97,210 341 MB 0.00203
10 millones 28 segundos 1,203,838 3.21 GB 0.01959
100 millones 32 segundos 11,755,909 31.9 GB 0.19470
1,000 millones 2 minutos, 3 segundos 135,754,696 312.35 GB 1.90643
10,000 millones 19 minutos, 55 segundos 1,257,462,851 3.12 TB 19.5
NNLM 50 100,000 18 segundos 66,112 227 MB BigQuery 0.00135
1 millón 1 minuto, 1 segundo 666,875 531 MB 0.00316
10 millones 19 segundos 4,140,396 3.39 GB 0.02069
100 millones 27 segundos 14,971,248 32.08 GB 0.19580
1,000 millones 8 minutos, 16 segundos 288,221,149 312.54 GB 1.90759
10,000 millones 19 minutos, 28 segundos 1,655,252,687 3.12 TB 19.5
BERT1 768 100,000 29 minutos, 37 segundos 2,731,868 38 MB BigQuery 0.00022
Vertex AI 8.11
1 millón 5 horas, 10 segundos 28,905,706 339 MB BigQuery 0.00196
Vertex AI 9.98
LLM de Vertex AI textembedding-gecko@0012 768 100,000 14 minutos, 14 segundos 1,495,297 38 MB BigQuery 0.00022
Vertex AI 0.73
1 millón 2 horas y 24 minutos 17,342,114 339 MB BigQuery 0.00196
Vertex AI 2.97

1 Los trabajos de consulta de BigQuery tienen un límite de 6 horas, por lo que este modelo solo se compara en hasta 1 millón de filas. Puedes usar más recursos de procesamiento de Vertex AI Model Garden para permitir que el trabajo procese más filas dentro del límite de 6 horas. Por ejemplo, puedes aumentar la cantidad de aceleradores.

2 Los trabajos de consulta de BigQuery tienen un límite de 6 horas, por lo que este modelo solo se compara en hasta 1 millón de filas. Puedes solicitar una cuota más alta para permitir que el trabajo procese más filas dentro del límite de 6 horas. También puedes usar este conjunto de secuencias de comandos de SQL o este paquete de Dataform para iterar a través de llamadas de inferencia más allá del límite de 6 horas.