AlloyDB AI 関数 - 革命的なパフォーマンス向上と費用削減を実現
Darshana Sivakumar
Group Product Manager
Pushkar Khadilkar
Software Engineer
※この投稿は米国時間 2026 年 7 月 2 日に、Google Cloud blog に投稿されたものの抄訳です。
AlloyDB は AI ネイティブなデータベースです。単なる受動的なデータストアではなく、データをインテリジェントに理解して処理します。AlloyDB では、業界をリードするベクトル検索とハイブリッド検索、会話型エージェントを構築するためのほぼ 100% の精度を誇る自然言語から SQL への変換機能、好みのエージェント型 IDE で構築できるツール、AI 関数を通じて Gemini などの基盤モデルのインテリジェンスをデータに直接適用する機能を利用できます。
このブログ投稿では、AI 関数処理における大きなブレークスルーと、一連のまったく新しい AI 関数について説明します。
まず、AI 機能とは具体的にどのようなものでしょうか?AI 機能は Gemini の世界中の知識を AlloyDB のデータに適用します。ユーザーからの生のフィードバックを管理する課題について考えてみましょう。そのようなフィードバックは構造化されておらず、解析が困難です。このデータを検索に活用するには、前処理とエンティティ抽出が必要になる場合があります。知識抽出のために複雑なカスタム パイプラインを維持する代わりに、AlloyDB 内で Gemini の生成機能を直接使用して、未加工のテキストを構造化された検索可能な分析情報に変換できます。たとえば、ai.generate を使用して、生のフィードバックをクリーンで構造化された JSON に即座に変換する方法は次のとおりです(その他の例はこちら)。
結果の例を次に示します。
要約や感情分析を行う関数を追加
Google のコア AI 関数である ai.generate、ai.rank、ai.if、ai.forecast の一般提供が開始されました。最初の 3 つの関数のユースケースについて詳しくは、こちらのブログ投稿をご覧ください。予測機能の実際の動作を確認するには、こちらの詳細をご覧ください。
この勢いに乗り、Google は 3 つの新しい関数、ai.summarize、ai.agg_summarize、ai.analyze_sentiment を導入しました。
-
ai.analyze_sentiment: テキストの感情的なトーンを肯定的、否定的、中立的として自動的に分類します。 -
ai.summarize: 長文のテキストを、元のトーンとニュアンスを維持しながら、最も重要な情報に凝縮します。 -
ai.agg_summarize: 列内の複数の行を処理して、(GROUP BY句などを使用して)グループ全体の統合された単一の要約を生成する集約ツール。
ai.agg_summarize を使用して、小売ウェブサイトの商品レビューを統合する方法の例を以下に示します。
2 つのゲーム機製品のレビューを要約した結果の例を以下に示します。
LLM の力をデータに: 大幅な高速化とコスト削減を実現
Google は、AI 機能の処理において前例のないパフォーマンス向上と費用削減のブレークスルーを達成しました。以前は、大規模なデータベースの各行で基盤モデルの呼び出しを実行することで、費用とレイテンシの制約が生じていました。2 つの画期的な機能を導入することで、これらの障壁を打ち破りました。
AI 関数のスマートバッチ処理: この AI 関数アクセラレーション機能は、AI 関数呼び出しのインテリジェントなバッチ処理を実現し、パフォーマンスと品質を最適化します。この効率性は、プロンプトのオーバーヘッドの重複を排除することで実現されます。LLM の定型的な指示は、個々の行で繰り返されるのではなく、バッチごとに 1 回送信されます。「これをアプリケーション レイヤで実行してはいけないのか?」と疑問に思われるかもしれません。そうしない理由は、AlloyDB が最適な結果を得るための適切なバッチサイズをインテリジェントに決定するからです。バッチサイズを過小評価すると、費用とレイテンシのメリットが得られません。バッチサイズを過大評価すると、LLM へのプロンプトが膨張してハルシネーションが発生したり、モデルのトークン制限を超えたりする可能性があります。AlloyDB は、それぞれのリクエストに最適なバッチサイズを計算するだけでなく、設定なしで自動的に再試行を処理するため、パイプラインの復元力を維持できます。社内でテストを行ったところ、大きな成果が得られました。たとえば、従来の 1 行ずつの LLM 呼び出しと比較して、パフォーマンスが最大 2,400 倍向上しました(1 秒あたり 10,000 行を処理)。現在、この機能は ai.if 関数と ai.rank 関数で利用できます。今後、他の関数もサポートされる予定です。
このユースケースを解決するために、ai.if でスマートバッチ処理 / アクセラレーションを使用する例を見てみましょう。ある顧客が、水深 60 メートル以上でも使用できるカメラをガジェット販売サイトで検索しているとします。従来のハイブリッド検索では、最も近い意味的一致と全文一致が抽出されますが、数値データの厳しい制約が考慮されません。つまり、水深 20 メートルでしか使用できないカメラが表示される可能性があります。AlloyDB の ai.if ベースのインテリジェント フィルタリングを使用すると、データベースは水深のニュアンスを実際に理解し、水深 60 メートルの基準を満たすか、それを上回る商品をクエリで返します。以下の例では、バッチサイズを指定する必要がないことに注目してください。ai.if を使用すると、AlloyDB がすべての最適化を内部で処理します。
架空のガジェットサイトでの検索結果の例を以下に示します。商品の詳しい説明が、水深 60 メートルで使用できるという条件に合致していることに注目してください。


最適化された AI 関数: 効率性をさらに高めるために、まずは ai.if に、最適化モードを導入しました。埋め込みを利用し、特定の LLM 出力に基づいてトレーニングされた小さなプロキシモデルをデプロイすることで、データベース内でネイティブに意思決定を処理できます。これにより、外部 LLM を呼び出す必要性が大幅に減ります。Google の内部テストでは、驚くべき成果が見られました。たとえば、1 秒あたりに処理される行数が最大 100,000 行(23,000 倍増加)に達し、費用が 6,000 分の 1(0.1 セント)に削減されました。この手法が最も効果的な場合と効果的でない場合など、技術的な分析情報については、こちらのブログ投稿をご覧ください。最適化された ai.if を使用すると、AlloyDB は次の処理を行います。
-
プロキシモデルをトレーニングする: AlloyDB は、データのサンプルに基づいて軽量なプロキシモデルをトレーニングします。これは、最適化されたクエリのモデルをトレーニングするために、ai.if 関数で PREPARE ステートメントを使用すると、バックグラウンドで行われます。
-
クエリを実行する: EXECUTE ステートメントを使用すると、AlloyDB はトレーニング済みのプロキシモデルを使用してクエリをローカルで処理します。
-
LLM にフォールバックする: モデルの精度が低い場合や、モデルが見つからない場合、AlloyDB は自動的に LLM の使用にフォールバックします。
水深 60 メートル以上で使用できるカメラを検索する先ほどの例で、最適化された ai.if を使用する場合を見てみましょう。ここでは、PREPARE ステートメントを使用してプロキシモデルをトレーニングし、その後 EXECUTE ステートメントを実行します。
上のスクリーンショットのように、水深 60 メートルで動作するという基準に実際に合致する商品が表示されます。説明をより詳しく確認できるように、最初の 3 つの商品を表にしたものを以下に示します。
デモのご紹介
こちらのデモ動画で、これらの機能がどのように連携するかをご覧ください。

始め方は簡単
AI ワークロードに前例のないスピードと費用対効果をもたらす準備はできていますか?
-
AlloyDB を初めてご利用の場合: 30 日間の無料トライアルで AlloyDB をお試しください。
-
AI 関数のクイックスタート: いくつかの簡単な前提条件を満たして、SQL クエリ内で ai.if、ai.generate、ai.analyze_sentiment などの関数を直接呼び出しましょう。まずは、実用的な例をご覧ください。
-
パフォーマンスの向上と費用の最適化: 最大限のパフォーマンス向上と費用削減を実現するには、最適化された関数に関するガイドに従ってください。この最適化は ai.if のプレビュー版で利用可能であり、まもなく他の関数でも利用可能になる予定です。この手法が最も効果的な場合と効果的でない場合など、技術的な分析情報については、こちらのブログ投稿をご覧ください。
-
スループットのスケーリング: スマートバッチ処理を使用して AI 関数を高速化する(ai.if と ai.rank のプレビュー版で利用可能)か、配列ベースの関数(すべての LLM ベースの AI 関数で一般提供)を使用して、大量のプロンプトをスムーズに処理することができます。
- グループ プロダクト マネージャー、Darshana Sivakumar
- ソフトウェア エンジニア、Pushkar Khaldikar

