1. 主要ページへ移動
  2. メニューへ移動
  3. ページ下へ移動

QES ブログ

記事公開日

【Agent Development Kit】 ADKセットアップガイド

  • このエントリーをはてなブックマークに追加

この記事のポイント

GoogleのAIエージェント開発フレームワーク「ADK (Agent Development Kit)」を使い、Pythonで「独自ツールを持つ自律型AIエージェント」を最速で構築・実行するまでの手順を解説します。

  • ADKとは:
    Function Calling・マルチエージェント連携・グラフワークフローをシンプルに実装できる、Googleの「エージェントファースト」な開発キットです。
  • 最速セットアップ:
    仮想環境の作成 → adk create → エージェント実装 → adk run / adk web の数ステップで動かせます。
  • つまずきポイント:
    最新世代のGeminiモデル(gemini-3.5-flash 等)を使う場合は、ロケーションに global を指定する必要があります(地域リージョンだと 404 エラー)。

はじめに

DXソリューション営業本部の三浦です。
GoogleのAIエージェント開発フレームワークである ADK (Agent Development Kit) を使ってみたので、さっそくセットアップ手順と動かし方を解説します。

ADKは、Googleが提供する「エージェントファースト」な開発フレームワークで、ツール利用やマルチエージェント連携を前提としたエージェント開発エコシステムの中心となる存在です。

今回は、Pythonを使って「独自のツール(関数)を持った自律型AIエージェント」を構築し、CLIおよびWeb UIで対話するまでのステップを紹介します。

ADK (Agent Development Kit) とは?

ADKは、Googleの先進的なAIモデル(Geminiシリーズなど)を活用し、「ツール利用(Function Calling)」「マルチエージェント連携」「動的なグラフワークフロー」などを高度に、かつシンプルに実装できるエージェントファーストな開発キットです。

単にテキストで答えるだけのチャットボットではなく、必要に応じてプログラム(関数)を実行して自律的にタスクを完了する「AIエージェント」を簡単に作成できます。

開発環境・前提条件

本ガイドでは、以下の環境を前提としています。

  • Python 3.10 以上(今回は Python 3.12.3 を使用)
  • pip(Pythonパッケージ管理ツール)
  • Google Cloud プロジェクト ID と有効な Vertex AI API
    • 事前に Google Cloud Console でプロジェクトを作成し、Vertex AI API を有効化しておきます。
    • ローカル開発環境に Google Cloud CLI (gcloud) がインストールされている必要があります。

ステップ1:仮想環境の作成とADKのインストール

まずはプロジェクト用のディレクトリを作成し、Pythonの仮想環境(venv)を構築した上で、google-adk パッケージをインストールします。

# 仮想環境(.venv)の作成
python3 -m venv .venv

# 仮想環境の有効化(Linux / macOS)
source .venv/bin/activate

# 仮想環境の有効化(Windows Command Prompt)
# .venv\Scripts\activate.bat

# 仮想環境の有効化(Windows PowerShell)
# .venv\Scripts\Activate.ps1

# google-adk のインストール
pip install google-adk

仮想環境を利用することで、他のプロジェクトと依存パッケージが衝突するのを防ぎ、環境をクリーンに保てます。

ステップ2:エージェントプロジェクトの新規作成

ADKには便利なCLIツールが付属しています。adk create コマンドを使用するだけで、エージェントのベーステンプレートとなるプロジェクトをインタラクティブに作成できます。

adk create my_agent

実行すると、ターミナル上で以下のような選択肢が表示されます。

1. モデルの選択 (Model Selection)

Choose a model for the root agent:
1. gemini-3.5-flash
2. Other models (fill later)

ここでは最新世代の軽量高速モデルである 1(gemini-3.5-flash)を選択します。

2. バックエンドの選択 (Backend Selection)

1. Google AI
2. Vertex AI
3. Login with Google
Choose a backend (1, 2, 3):

Google Cloud環境での利用を想定しているため、2(Vertex AI)を選択します。

3. 認証情報の入力 (Project ID & Location)

Vertex AI を選択した場合、Google Cloud プロジェクト ID とロケーション(リージョン)の入力が求められます。

  • GCP Project ID:ご利用の Google Cloud プロジェクト ID
  • GCP Locationglobal を指定します(gemini-3.5-flash などの最新世代モデルは global エンドポイントで提供されるため)

ハマりポイント:最新モデルは global を指定する
最新世代のGeminiモデルは地域エンドポイント(us-central1 等)では提供されず、global エンドポイントのみというケースが多くあります。地域リージョンのまま指定すると、実行時に次のエラーになります。

404 NOT_FOUND ... your project does not have access to it

ロケーションを global にすれば解決します(筆者環境では gemini-3.5-flash + global で動作確認済み)。

なお、ここで入力した内容は my_agent/.env に自動で書き込まれます(GOOGLE_GENAI_USE_VERTEXAI=TRUE / GOOGLE_CLOUD_PROJECT / GOOGLE_CLOUD_LOCATION)。後からモデルやリージョンを変更したい場合は、この .env を直接編集します。

完了すると、以下のように my_agent/ ディレクトリ配下に最小限必要なファイル群が自動生成されます。

my_agent/
├── .env          # APIキーやプロジェクトIDなどの環境変数を格納
├── .gitignore    # Git追跡除外設定
├── __init__.py   # パッケージ初期化用
└── agent.py      # エージェントの挙動やツール定義を記述するメインファイル

ステップ3:エージェントとカスタムツールの実装

自動生成された my_agent/agent.py を開き、エージェントに「特定の都市の現在時刻を返すツール」を持たせてみましょう。

今回はガイドに沿って、モック(模擬データ)を返す関数をツールとして登録します。

from google.adk.agents.llm_agent import Agent

# Mock tool implementation
def get_current_time(city: str) -> dict:
    """Returns the current time in a specified city."""
    return {"status": "success", "city": city, "time": "10:30 AM"}

root_agent = Agent(
    model='gemini-3.5-flash',
    name='root_agent',
    description="Tells the current time in a specified city.",
    instruction="You are a helpful assistant that tells the current time in cities. Use the 'get_current_time' tool for this purpose.",
    tools=[get_current_time],
)

ADKエージェント定義のポイント

  • model:使用するGeminiモデルを指定します。
  • instruction:エージェントのペルソナや、どのようなルールに従ってツールを呼び出すかを指示します(システムプロンプトに相当します)。
  • tools:エージェントが実行できるPython関数のリストを渡します。関数のドキュメントストリング(docstring)や型ヒント(Type Hints)を元に、ADKが自動でモデルへツール仕様を伝達してくれます。

ステップ4:エージェントを動かす

ADKでは、作成したエージェントを CLI(ターミナル)Web UI の2つの方法で簡単に実行・テストできます。

1. ターミナル(CLI)で対話する

以下のコマンドを実行すると、ターミナル上にインタラクティブなチャットインターフェースが起動します。

adk run my_agent
User: 東京の時間を教えて。
Agent: (自動的に get_current_time(city='東京') を呼び出し...)
Agent: 東京の現在時刻は午前10:30です。

作成したAIエージェントが動作していることが確認できました。
※今回の get_current_time は固定値(10:30 AM)を返すモック実装のため、応答時刻は常に同じになります。

2. リッチな Web UI でテストする

ADKは、デバッグや検証に最適なWebチャットUIサーバーを標準搭載しています。

adk web --port 8000

起動後、ブラウザで http://localhost:8000 にアクセスします。
左上のセレクトボックスから root_agent を選択すれば、チャット形式でツールの呼び出し結果や履歴を視覚的にデバッグ・検証できます!

ADK Web UI でエージェントが get_current_time ツールを呼び出して応答している動作確認画面

Web UI上でもエージェントが正しく動作していることが確認できました。

まとめ & 次のステップ

Googleの新しいADKを使用することで、わずか数ステップで「ツールを使いこなすAIエージェント」が作成できました。

ADKではマルチエージェント連携やグラフワークフローを使って、より複雑な処理も実現できます。業務効率化を進めるために、引き続き試していきたいと思います。

参考リンク:

QESではGemini Enterpriseの導入コンサルティング、エージェント設計、Google Workspace連携、運用支援まで一貫してサポートしています。Gemini Enterpriseの支援内容については下記のサービスページをご覧いただくか、お問い合わせフォームよりお気軽にご相談ください。

※このブログで参照されている、Google、Gemini、Gemini Enterprise は、米国およびその他の国における Google の商標または登録商標です。

  • このエントリーをはてなブックマークに追加

お問い合わせ

Contact

ご質問やご相談、サービスに関する詳細など、何でもお気軽にご連絡ください。下記のお問い合わせフォームよりお気軽に送信ください。

お問い合わせ

資料ダウンロード

Download

当社のサービスに関する詳細情報を掲載した資料を、下記のページよりダウンロードいただけます。より深く理解していただける内容となっております。ぜひご活用ください。

資料ダウンロード