VertexAIに新しく追加されたGroundingを試してみた

 2023.12.24 2023.12.25

 

日本情報通信の北脇です。

本記事はNI+C TeamGCP Advent Calendar 2023 17日目の記事となります。

はじめに

VertexAIのText-Bisonに「Grounding」という新機能がプレビュー版として追加されました。
参考URL:https://cloud.google.com/vertex-ai/docs/release-notes#December_05_2023

「Grounding」は、生成AIが外部の情報を文脈として理解し、その情報を基により正確な結果を出力する手法を指します。
この機能を利用すれば、自社のマニュアルやドキュメントをAIに読み込ませて、社内のQA用ボットを作成する際にとても便利です。

Groundingについて

Groundingは、外部情報を文脈として捉え、その情報を基に正確な結果を出力する手法を指します。
このGroundingを利用すれば、生成AIで問題となっていた「ハルシネーション」を抑制できることが期待されています。

ハルシネーションとは

ハルシネーションは、生成AIが事実とは異なる内容や、文脈と無関係な内容を出力する現象を指します。
生成AIによって作り出された情報が不正確だったり、誤解を生じたりするため、するため問題となってしまいます。

例えば、AIが生成したニュース記事が実際には存在しない人物や出来事を含んでいた場合、読者はその情報を事実と誤解してしまう可能性があります。

このような問題を軽減する方法の一つとしてGroundingという手法が提案されています。

VertexAIでGroundingを行うまでの流れ

それではVertexAIでGroundingを行う方法を解説します。
手順としては下記になります。

  1. 学習させるマニュアル・ドキュメントを用意
  2. 学習対象のドキュメントをGCS(Google Cloud Storage)に保存
  3. VertexAI Searchのアプリとデータストアを作成
  4. データストアの学習先としてGoogle Cloud Storageを指定
  5. Vertex AI Studioの「言語」から「テキストプロンプト」を選択
  6. Groundingを設定し実行

以上がGroundingをするまでの準備となります。

今回はドキュメントとしてgoogle Cloud公式ブログをPDFとしてダウンロードして利用しました。
https://cloud.google.com/blog/ja/products/ai-machine-learning/bringing-gemini-to-organizations-everywhere

GCSへの配置~Vertex AI Searchのデータストアへの学習

はじめに学習元のドキュメントをGCS配置しましょう。
GCSに新しいバケットを作成し、その中にPDFファイルをアップロードします。

「検索と会話」から新しいアプリを作成します。
今回は「検索」のカテゴリーで新規作成を選びます。

「Enterprise エディションの機能」「高度なLLM機能」を有効化。
アプリ名、会社名、ロケーションを入力。続行を選択します。

データソースとしてCloud Storageを選択します。
その後学習対象のドキュメントを配置したGCSを指定します。

その後データストア名を決めて作成します。

その後処理が開始されるので完了するまで待機します。

処理が完了しました。
以上でVertexAI Searchの設定は完了です。

コンソールからの実行

Vertex AI Studioのコンソールから実行してみましょう。
今回はtext-bison@002というモデルを使用します。
まずはGroundingを使わない状態で実行してみましょう。

「Gemini Proは、Vertex AIの機能の1つで、大規模な言語モデルをトレーニングするための分散型トレーニングフレームワーク」「Gemini Proは、Vertex AIのServing機能と統合されており、大規模な言語モデルをデプロイして、予測を行うことができます」という事実とは異なる回答が生成されましたね。

それではGroundingを設定してみましょう。
「根拠づけを有効にする」をオンに設定します。

「カスタマイズ」を押下しデータストアのパスを入力します。
データストアのパスは下記になります。

projects/{project_id}/locations/global/collections/{collection_name}/dataStores/{DATA_STORE_ID}
下記パラメータは下記になります。
project_id:Google CloudのプロジェクトID
collection_name:default_collection
data_store_id:データストアのID

以上でGroundingの設定は完了です。

では実際に同じ質問をしてみましょう。

Grounding前に出ていた情報が出力されなくなり、出力結果は学習させたドキュメントをベースに出力されました。
このようにハルシネーションを抑えつつ、ドキュメントを元に結果を出力できました。

まとめ

Groundingを利用してハルシネーションを抑える方法をご紹介しました。
また、Vertex AI StudioからGroundingを設定する方法についてもご紹介させていただきました。

今回の方法を駆使すれば、例えば社内ドキュメントをAIに読み込ませ、それに基づいた社内のQA用ボットを作成することなどに活用することも可能です。
新機能のGroundingを活用し、より正確で実用的なAIを作成してみてはいかがでしょうか。



Google Cloud、Google Workspace に関するご相談はXIMIXへ!

Google Cloud、Google Workspaceに関する お問い合わせはこちら
XIMIX(サイミクス)は商標登録出願中です


VertexAIに新しく追加されたGroundingを試してみた

BACK TO LIST