0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ADKからVertex AI Searchのデータストアを呼び出す

Posted at

はじめに

ADKの動作確認用に利用していた Vertex AI RAG Engine ですが、無料枠が終了してから料金がかかるようになってしまいました。

安いプランでも一日400円ほどかかるようでもったいなかったので、Vertex AI Search という別のサービスを利用してみることにしました。

Vertex AI Search を使ってみる

Vertex AI Search はRAGと同様の利用ができるようです。
Vertex AI RAG Engine と違い呼び出し回数に対する料金しかかかりません。

データストアの作成はWebUI上から可能です。

image.png

作成したデータストアは以下のように表示されます。
黒塗りしているIDはADKからの呼び出しで利用します。
image.png

ADKからVertex AI Search を呼び出す

ADKからVertex AI Search を呼び出すことも可能です。

以下サンプルコードになります。

  • LLMエージェントのツールとしてVertexAiSearchToolを定義
  • data_store_idのIDは以下の値を指定
    • データストアを作成したGCPのプロジェクトID
    • データストアを作成したGCPのロケーション
    • コレクション(※データストア作成時に指定しなかったのですが、default_collectionでいけました)
    • データストアID
import os

from google.adk.agents.llm_agent import LlmAgent
from google.adk.tools import VertexAiSearchTool

from dotenv import load_dotenv

load_dotenv()

DATASTORE_ID = "projects/yourproject/locations/us/collections/default_collection/dataStores/test_id"

instruction = """
    あなたはPHPフレームワークFlowに関する質問に答えるエージェントです。
    必要に応じてデータストアを見て、質問に答えてください。
"""


root_agent = LlmAgent(
    name="flow_rag_agent",
    model=os.environ.get("MODEL"),
    instruction=instruction,
    tools=[VertexAiSearchTool(data_store_id=DATASTORE_ID)]
)

adk webで動作確認したところ、以下のように呼び出すことができました。
image.png

(回答が3つに分かれてますね。直近のADKのアップデートでこうなったのかもですが、理由は不明です。)

おわりに

今回はVertex AI Search をADKで利用する方法をまとめました。私のようにADKをキャッチアップで利用しているだけであれば、RAGを使わずにVertex AI Search を使えるのは安上がりでありがたいです。

ここまでご覧いただきありがとうございました!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?