はじめに
近年、BigQueryではネイティブに統合されたAI関数の拡充が急速に進んでいます。
公式のドキュメント1にも基本的な説明や整理は載っていますが、プレビュー段階の関数が含まれていなかったりするため、現時点でどのようなAI関数が利用できるのかを整理・把握するために本稿を執筆しました。
本稿の内容は2026/06/10時点の情報です。
※あくまで筆者の認識した範囲で記載しています。
この記事の作成は、Google Antigravityの支援を受けて行いました。
3行サマリー
-
事前学習・接続設定が不要: 従来の
CREATE MODELや Gemini Enterprise Agent Platform との接続設定が不要となり、ビルトイン関数として Gemini や TimesFM の機能を SQL から直接利用できる。 - 実務に即した5カテゴリ分類: 「予測」「生成」「ベクトル」「セマンティック判定」「便利系」の5つに整理した。
- 最新のリリース・GA日の反映: 2026年6月時点の公式リリースノートに基づき、各関数の一般提供(GA)日や Preview 公開日を網羅している。
BigQuery AI. 関数の一覧(機能別5カテゴリ・マッピング)
2026年現在、BigQueryでネイティブにサポートされている AI. プレフィックスから始まるAI関数の一覧である。
1. そのまま分析に使える関数(時系列分析・予測系)
モデルの訓練や管理を必要とせず、時系列データから直接異常検知や将来の予測を行う関数群である。
| AI関数名 | ローンチステージ (日付) | 返り値のデータ型 | 主な役割・効果 | 一般データでの適用例 |
|---|---|---|---|---|
AI.DETECT_ANOMALIES |
GA (2026年5月15日) | TABLE |
時系列基礎モデル TimesFM を用い、モデル訓練なしで時系列データの異常検知(Anomaly Detection)を行う。 | サーバーのCPU使用率やトランザクション量の瞬間的な異常(スパイク)の検知。 |
AI.FORECAST |
Preview (2026年6月1日) | TABLE |
時系列基礎モデル TimesFM を用い、モデル訓練なしで未来の時系列データの予測(Forecasting)を行う。 | 未来24時間のWebトラフィックや注文需要の予測。 |
AI.EVALUATE |
Preview (2026年6月1日) | TABLE |
時系列基礎モデル TimesFM に基づく予測結果を実際の正解データと比較し、精度評価(MAE/MASE等)を行う。 | 時系列売上予測結果の予測精度評価。 |
2. 生成系
Gemini等のLLMと連携し、テキストや表形式の構造化データ、集計結果を生成する関数群である。
| AI関数名 | ローンチステージ (日付) | 返り値のデータ型 | 主な役割・効果 | 一般データでの適用例 |
|---|---|---|---|---|
AI.GENERATE 系列・ AI.GENERATE・ AI.GENERATE_BOOL・ AI.GENERATE_INT・ AI.GENERATE_DOUBLE
|
GA (2026年1月) Preview (2025年4月) Preview (2025年4月) Preview (2025年4月) |
STRUCTBOOLINT64FLOAT64
|
Geminiモデルと対話し、テキストの生成、非構造化データの抽出、または型安全な値(Boolean/整数/小数)の出力をスカラーで行う。 | 顧客のレビューテキストから「製品の属性(色やサイズ)」をJSON構造化抽出。 アクセスログから「スパムの兆候があるか」の自動判定。 配送予定日数や感情満足度スコア(0.0〜1.0)の直接抽出。 |
AI.GENERATE_TEXT |
GA (2026年1月) |
TABLE (TVF) |
Remote Model を経由し、テーブルの行データに対して Gemini や Anthropic Claude などのLLMを用いたテキスト生成や要約を一括で適用する。 | 膨大なユーザーのフィードバックや製品レビューの一括要約と感情分析。 |
AI.GENERATE_TABLE |
GA (2026年1月) | ARRAY<STRUCT> |
定義したスキーマに沿って、生成結果をテーブル(複数行・列)として出力する。 | 自由記述テキストから「主要課題と対応アクション」の対比表を生成。 |
AI.AGG |
Preview (2026年6月3日) | STRING |
グループ化されたデータに対し、自然言語の指示に沿って一括要約・集計を行う。 | 地域ごと・店舗ごとの「顧客クレーム発生傾向」の自然言語による自動集計。 |
3. ベクトル系(セマンティック検索系)
データの意味を数値ベクトル化し、高度な類似検索やセマンティック検索を実現する関数群である。
| AI関数名 | ローンチステージ (日付) | 返り値のデータ型 | 主な役割・効果 | 一般データでの適用例 |
|---|---|---|---|---|
AI.EMBED |
Preview (2026年6月3日) | STRUCT |
テキストまたは画像からセマンティック検索用の数値ベクトルを生成する。 | 商品画像やドキュメントファイルのベクトル化。 |
AI.GENERATE_EMBEDDING |
GA (2026年1月) | TABLE |
入力テーブル全体に対して、セマンティック検索用の埋め込みベクトル列を一括で自動追加する。 | FAQテーブルやドキュメントデータベース全体へのベクトル列の動的アタッチ。 |
AI.SEARCH |
Preview (2026年1月) | TABLE |
Autonomous Embedding(自動埋め込み生成)が有効なテーブルに対して、ベクトル化を意識せず直接自然言語のテキストを用いてセマンティック類似検索を実行する。 | FAQマニュアルから、自然言語の問い合わせ(「領収書の発行方法」など)に合致する類似事例を高速セマンティック検索。 |
AI.SIMILARITY |
Preview (2026年6月3日) | FLOAT64 |
2つのインプット(テキストや画像)から自動で埋め込みを生成し、その間のコサイン類似度(0〜1)を直接算出する。 | ユーザーの検索クエリと商品タイトルの意味的類似度算出。 |
4. セマンティック判定・評価系
自然言語の基準に沿って、データの自動分類、真偽判定、採点などの評価を行う関数群である。
| AI関数名 | ローンチステージ (日付) | 返り値のデータ型 | 主な役割・効果 | 一般データでの適用例 |
|---|---|---|---|---|
AI.CLASSIFY |
Preview (2026年6月3日) |
STRING または ARRAY<STRING>
|
指定したカテゴリ(ラベル)の配列にデータを自動で分類する。 | 問い合わせテキストを「請求関連」「配送トラブル」「製品仕様」「その他」に自動仕分け。 |
AI.IF |
Preview (2026年6月3日) | BOOL |
自然言語で記述した条件で判定を行う(WHEREやONで直接使える)。 |
「配送遅延に関する重大な不満が含まれているか」の自然言語条件でフィルタリング。 |
AI.SCORE |
Preview (2026年6月3日) | FLOAT64 |
指定したセマンティック基準で採点を行う(ORDER BYで直接使える)。 |
問い合わせ内容から「顧客の怒り度(緊急度)」を0〜1でスコア化し、高い順に並べ替える。 |
5. その他便利系(ユーティリティ)
AI関数の呼び出し前に、トークンサイズやコストを事前にチェック・見積もりするための補助関数である。
| AI関数名 | ローンチステージ (日付) | 返り値のデータ型 | 主な役割・効果 | 一般データでの適用例 |
|---|---|---|---|---|
AI.COUNT_TOKENS |
Preview (2026年5月12日) | STRUCT |
入力テキストのトークン数を事前に計算し、APIコストの見積もりに使う。 | 膨大なテキストデータを一括でAI処理する前の、想定発生料金の計算。 |
AI関数利用時の注意点と対策例の紹介
AI関数はモデルの登録が不要で呼び出せる反面、実運用環境の構築時には以下の課題に配慮した設計が推奨される。
※以下の対策例は、筆者の実検証に基づくものではなく、公式ドキュメント情報を元にした紹介である。実運用の際はリンク先のドキュメントを参照されたい。
1. 認証方式と End User Credentials (EUC) の制限
- 課題: アドホック実行時は個人の IAM 権限(EUC)を使えて便利だが、サービスアカウント等を使った非対話型の自動実行バッチやバックエンド処理では EUC 認証が使えない。
-
対策例: 明示的に
connection_idを指定し、接続リソース(Cloud Resource Connection)経由で実行するように構成する。
2. 並列処理制限(Rate Limit / 429 エラー)への対抗
-
課題: 大量データに対してクエリを一括実行すると、BigQuery の超並列処理によって背後の Gemini Enterprise Agent Platform API の上限(TPM/QPS)を超過し、
ResourceExhaustedエラーでクエリがクラッシュする。 -
対策例:
- Dataform 等を利用してインクレメンタル(増分)処理を組み、未処理レコードのみを小分けにスケジュール実行する。
- Gemini Enterprise Agent Platform の割当上限(クォータ)の緩和を申請する。
- 参考:Google Cloud 公式: Gemini Enterprise Agent Platform の割当と制限 / Google Cloud 公式: BigQuery リモートモデルのレート制限
3. コスト爆発の防止
- 課題: クエリ実行(スキャン量)に対する課金とは別枠で Gemini Enterprise Agent Platform API の従量課金が発生するため、クエリの書き方によってはコストが急増しやすい。
-
対策例:
- 実行前に
AI.COUNT_TOKENSを使い、全体の入力トークン数から想定コストを見積もる。 - テスト時は必ず
LIMITやパーティションフィルターで対象データを絞り込み、不要なスキャンを防ぐ。 - 参考:Google Cloud 公式: AI.COUNT_TOKENS のリファレンス
- 実行前に
4. スロットの分離 (Fluid Scaling の活用)
- 課題: (Editions 契約時) AI関数を含む負荷の高いバッチ処理によって BigQuery のスロットが占有され、BIダッシュボード等の参照パフォーマンスが低下する(Noisy Neighbor 問題)。※オンデマンド課金モデルを利用している場合はスロット管理の必要がないため考慮不要。
-
対策例:
-
Fluid Scaling(自動スケーリングスロット)を活用しつつ、バッチ用と参照用で予約スロット(Reservation)を物理的に分離する。 - 参考:Google Cloud 公式: BigQuery Reservations の概要 / Google Cloud 公式: 自動スケーリングスロットの管理
-
5. プレビュー版機能のSLA制限
- 課題: Preview 段階の関数は SLA が適用されず、将来的に仕様変更(シグネチャ変更等)や廃止が発生する可能性がある。
-
対策例:
- 本番運用など堅牢性が求められる場合は、GA 済みの
ML.GENERATE_TEXTやAI.GENERATE_TEXTを代替として採用する。 - 仕様変更時の修正箇所を最小限にするため、SQL やデータパイプラインを薄くラッパー化して抽象度を上げておく。
- 本番運用など堅牢性が求められる場合は、GA 済みの
おわりに
本稿では、BigQueryにネイティブ統合された AI関数の機能分類と、利用時の注意点について整理しました。
これらの機能や制限が今後のアップデートでさらに改善され、より扱いやすくなることを楽しみにしたいと思います。皆さまのBigQuery AI活用の一助となれば幸いです。