テキスト エンベディング モデルを選択する

このドキュメントでは、BigQuery ML で使用可能なテキスト エンベディング モデルのパフォーマンスとコストのベンチマークを示します。この情報を使用して、ユースケースに最適なモデルを決定してください。

モデル

このベンチマークでは、次のタイプのモデルが対象となります。

ベンチマークでは、ML.GENERATE_EMBEDDING クエリを処理するために、ML.GENERATE_EMBEDDING 関数を使用してテキストを埋め込むで説明されている構文を使用します。

ベンチマークでは、ML.PREDICT クエリを処理するために、テキスト エンベディングの生成で説明されている構文を使用します。

コスト計算

ベンチマークでは、BigQuery オンデマンド コンピューティング料金(TiB あたり 6.25 USD)に基づいて BigQuery の費用が計算されます。この計算では、1 か月あたり最初の 1 TiB のコンピューティング処理が無料であることは考慮されていません。

BERT モデルの呼び出しに関連する Vertex AI の費用は、n1-highmem-8 予測レートを使用して計算されます。

textembedding-gecko モデルの呼び出しに関連する Vertex AI の費用は、Embeddings for Text予測レートを使用して計算されます。

BigQuery ML の料金については、BigQuery ML の料金をご覧ください。

ベンチマーク データ

ベンチマークでは、次のように準備された bigquery-public-data.hacker_news.full 一般公開データセットを使用します。

  • データをテストテーブルにコピーし、各行を 100 回複製。

    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;
    
  • hacker_news.large テーブルに基づいて、ベンチマークで使用するサイズの異なるテストテーブルを追加。次のサイズのテストテーブルを使用しました。

    • 100,000 行
    • 1,000,000 行
    • 10,000,000 行
    • 100,000,000 行
    • 1,000,000,000 行
    • 10,000,000,000 行

ベンチマーク

次の表にベンチマーク データを示します。

モデル エンベディング ディメンション 行数 実行日時 合計スロット(ミリ秒) 処理されたバイト数 使用されたサービス 料金(USD)
SWIVEL 20 100,000 5 秒 6,128 37 MB BigQuery 0.00022
100 万 1 分 1 秒 97,210 341 MB 0.00203
1,000 万 28 秒 1,203,838 3.21 GB 0.01959
1 億 32 秒 11,755,909 31.9 GB 0.19470
10 億 2 分 3 秒 135,754,696 312.35 GB 1.90643
100 億 19 分 55 秒 1,257,462,851 3.12 TB 19.5
NNLM 50 100,000 18 秒 66,112 227 MB BigQuery 0.00135
100 万 1 分 1 秒 666,875 531 MB 0.00316
1,000 万 19 秒 4,140,396 3.39 GB 0.02069
1 億 27 秒 14,971,248 32.08 GB 0.19580
10 億 8 分 16 秒 288,221,149 312.54 GB 1.90759
100 億 19 分 28 秒 1,655,252,687 3.12 TB 19.5
BERT1 768 100,000 29 分 37 秒 2,731,868 38 MB BigQuery 0.00022
Vertex AI 8.11
100 万 5 時間 10 秒 28,905,706 339 MB BigQuery 0.00196
Vertex AI 9.98
Vertex AI textembedding-gecko@001 LLM2 768 100,000 14 分 14 秒 1,495,297 38 MB BigQuery 0.00022
Vertex AI 0.73
100 万 2 時間 24 分 17,342,114 339 MB BigQuery 0.00196
Vertex AI 2.97

1 BigQuery クエリジョブは 6 時間に制限されているため、このモデルは最大 100 万行のベンチマークのみを対象としています。6 時間の制限内でジョブがより多くの行を処理できるように、Vertex AI Model Garden からより多くの計算リソースを使用できます。たとえば、アクセラレータの数を増やすことができます。

2 BigQuery クエリジョブは 6 時間に制限されているため、このモデルは最大 100 万行のベンチマークのみを対象としています。6 時間の制限内でジョブが処理する行数を増やすには、割り当ての増加をリクエストしてください。この SQL スクリプトまたは Dataform パッケージを使用して、6 時間の制限を超えて推論呼び出しを反復することもできます。