ADK Visual Builder と Gemini Enterprise で実現する「全社員が使える」エージェント開発

はじめに: "作って終わり" から "使われる" エージェントへ
生成 AI エージェントの開発は、今や過渡期にあります。「LLM を使って面白いデモができた」というフェーズから、「実際の業務フローに組み込み、ビジネスインパクトを出す」フェーズへと移行しつつあります。
Google が提供する Agent Development Kit (ADK) は、Python/Java/Go コードで柔軟かつ強力なエージェントを定義できるオープンソースフレームワークです。しかし、すべてをコードで記述するアプローチには、「非同期処理やクラス設計の学習コスト」「複雑なワークフローの可視化」といったハードルがありました。
そこで登場したのが ADK Visual Agent Builder です。 ドラッグ&ドロップの直感的な GUI でエージェントを設計でき、Gemini 搭載の AI アシスタントが構築をサポートしてくれます。これにより、エンジニアだけでなくビジネスサイドのメンバーも開発に参加できる「エージェント開発の民主化」が進みました。

しかし、ローカルで動くだけでは意味がない
Agent を作ったけど、別の Web アプリとしてデプロイして、認証を通して...とやっているうちに『これ、みんなに使ってもらうのハードル高いな』と感じたことはありませんか?
「全社員が普段使っているチャットツールで、そのエージェントを使えるようにする」
ここまで到達して初めて、エージェントは真の価値を発揮します。
本記事のゴールは、ブラウザで作ったエージェントを、全社員が使う「Gemini Enterprise」のチャット UI 画面に登場させるまで の一気通貫フローを解説することです。
Step 1: ADK Visual Agent Builder で爆速プロトタイピング
環境準備
ADK をインストールし、開発環境を整えます。
前提条件 (Prerequisites)
デプロイを行う前に、以下のリソースとツールが設定されていることを確認してください。
- Google Cloud アカウント: 管理者権限を持つアカウント。
- Google Cloud プロジェクト: 課金が有効になっているプロジェクト。
- Python 環境: Python 3.10 〜 3.13。
-
Google Cloud CLI (
gcloud): Google Cloud リソースの操作に使用します。
1. 仮想環境の作成と有効化
Python の仮想環境 (venv) を使用することを推奨します。
python -m venv .venv
OS に合わせて仮想環境を有効化します。
# Mac / Linux
source .venv/bin/activate
# Windows CMD:
.venv\Scripts\activate.bat
# Windows PowerShell:
.venv\Scripts\Activate.ps1
環境変数の設定
.env ファイルを作成し、実行環境を Vertex AI に設定します。
これにより、Google Cloud プロジェクト上の Vertex AI API が使用され、AI Assistantが動き始めます。
GOOGLE_GENAI_USE_VERTEXAI=1
GOOGLE_CLOUD_PROJECT=<YOUR_PROJECT_ID>
GOOGLE_CLOUD_LOCATION=us-central1
GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY=true
Gemini API Key を使用する場合
GOOGLE_API_KEY=YOUR_API_KEY
GOOGLE_CLOUD_LOCATION=us-central1
GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY=true
2. ASP のインストール
Agent Starter Pack (ASP) は、ADK での開発を加速させるための公式ツールセットです。
これを使うことで、プロジェクトの雛形作成からデプロイまでを標準化できます。
★ 詳しいセットアップ手順は Shingo さんの記事でわかりやすく解説されています!
pip install agent-starter-pack
3. Agent プロジェクトを作成
# my-adk-agent のところに作成するエージェントの名前に入れ替える
agent-starter-pack create my-adk-agent -a adk_base -d agent_engine
4. 必要なライブラリのインストールと ADK Web UI の起動
cd my-adk-agent && make install && make playground
作成された新しいプロジェクトディレクトリ(my-adk-agent)には、以下のファイルが含まれています:
-
app/: エージェントのバックエンドコード(設定によりディレクトリ名は異なる場合があります)。 -
deployment/: Terraform によるインフラ構成コード。 -
tests/: エージェントの単体テストおよび結合テスト。 -
notebooks/: 評価(Evaluation)を始めるための Jupyter Notebook。 -
frontend/: (該当する場合)エージェントと対話するための Web UI。 -
README.md: ローカル実行やデプロイに関するプロジェクト固有の手順書。
➡️ ローカルで実行するには、作成されたプロジェクト内の README.md の手順に従ってください。
Visual Builder の使い方
ターミナルで以下のコマンドで ADK Web UI を起動します。
make playground
ターミナルに表示されたリンクをクリックすると、ブラウザが自動的に立ち上がり (通常は http://localhost:8000)、キャンバスが表示されます。
ADK Web UI が起動したら、左メニューの上部にある「+」ボタンをクリックします。

Agent 名を入力して作成します。

Visual Agent Builder UI
Visual Builder の UI は、効率的な AgentOps (エージェント運用・開発) を実現するために、以下の 3 つの主要なパネルで構成されています。
A. Configuration Editor (左パネル:設定エディタ)
ここでは、選択したエージェントノードの詳細なプロパティを設定します。
- Agent Name & Type: エージェントの名前と種類。
-
Model Selection: 使用する LLM モデル(例:
gemini-2.5-pro,gemini-2.5-flash)を選択します。 - Instructions: システムプロンプト(System Instruction)を記述します。エージェントの役割(ペルソナ)、制約事項、行動指針を自然言語で定義する場所です。
- Descriptions: ルートエージェントやほかのエージェントに見せるエージェントの役割説明(名刺のようなもの)。
- Tools Configuration: エージェントが使用するツールの有効化/無効化や、引数の設定を行います。
B. Agent Canvas (中央パネル:ビジュアルキャンバス)
エージェントの構造をグラフとして可視化・編集するメインエリアです。
- 階層構造の可視化: Root Agent (ワークフローの起点) を頂点とし、そこから呼び出される Sub-Agents や Tools がノードとして接続されます。
- インタラクティブな操作: ドラッグ&ドロップでノードの配置を変更したり、接続線を繋ぎ変えたりすることで、エージェント間の呼び出し関係 (委譲フロー) を直感的に設計できます。
C. AI Assistant (右パネル:生成 AI アシスタント)
開発者を支援するための、Gemini 搭載チャットボットです。
- Architecture Generation: 「ユーザーの曖昧な要望を聞き出し、要件が固まったら検索を実行するエージェントを作って」といった自然言語の指示を受け取り、キャンバス上に適切なエージェント構造(ノードとリンク)を自動生成します。
- Code & Configuration Assistant: ツール定義の Python コードのひな形を作成したり、YAML 設定の最適化提案を行ったりします。
- Q&A: ADK の仕様や機能に関する質問に答え、ドキュメント検索の手間を省きます。

Agent Pattern の紹介: 複雑なタスクをこなすための「型」
Visual Builder は、単一の LLM エージェントだけでなく、複数のエージェントを組み合わせる Workflow Component をサポートしています。

デモ: 競合調査エージェント (Competitor Analysis Agent)
このデモでは、Main Workflow という一つの Sequential Agent の中に、以下の3つのパターン(サブエージェント)を組み込んで、指定した企業の詳細レポートを作成するエージェントを作ります。

-
Parallel Agent (並列処理)
- ユースケース: 複数の情報源から同時にデータを集めたいとき。
- デモ構成: 「ニュース検索」「製品分析」「財務データ取得」の3つのエージェントを並列に走らせ、待ち時間を短縮します。
-
Visual Builder:
Parallelノードを追加し、その下に3つのLLM Agentをぶら下げるだけで並列化が完了します。
-
Sequential Agent (順次処理)
- ユースケース: 前のステップの結果を使って次の処理を行いたいとき。
- デモ構成: 集まったデータを「統合 (Synthesize)」し、その後に「レポート執筆 (Drafting)」を行います。
-
Visual Builder:
Sequentialノードの中に、順番にエージェントを配置します。データの受け渡しはSession Stateを通じて行われます。
-
Loop Agent (反復処理)
- ユースケース: 品質が基準に達するまで推敲を繰り返したいとき。
- デモ構成: 作成されたレポートを「レビュワー (Reviewer)」が採点し、合格点が出るまで「修正 (Refiner)」エージェントとループします。
-
Visual Builder:
Loopノードを設定し、終了条件(例:score > 8)を記述します。
これらを GUI 上でパズルを組み立てるように配置するだけで、複雑なロジックを持つエージェントが完成します。
エージェントの構造 (Agent Structure)
このデモは、Visual Builder がサポートする主要なエージェントパターンをすべて網羅しています:
-
Root Agent:
CompetitorAnalyst(全体のオーケストレーター) -
Parallel Agent:
InformationGathering- データ収集を高速化するために、複数のサブエージェントを並列実行します。
-
Sub-Agent ニュース検索:
NewsSearcher -
Sub-Agent 製品分析:
ProductAnalyst -
Sub-Agent 財務分析:
FinancialAnalyst
-
Sequential Agent:
ReportGeneration- 収集したデータを順序立てて処理します。
-
Sub-Agent 情報統合:
Synthesizer -
Sub-Agent ドラフト作成:
DraftWriter
-
Loop Agent:
QualityAssurance- レポートを反復的に改善します。
-
Sub-Agent レビュー:
Reviewer -
Sub-Agent 反復的改善:
Refiner -
終了条件:
Reviewerがexit_loopを呼び出す(スコア > 8)か、最大 3 回繰り返すまで。
-
Final Report Agent:
FinalReportAgent- ユーザー向けに最終出力を整形します。
処理ワークフローのイメージ

こちらの用件をまとめて、右側の Gemini Assistant に投げます。
Create a multi-agent system for "Competitor Analysis" with the following structure:
1. **Root Agent**: Named "CompetitorAnalyst". It takes a company name as input.
2. **Main Workflow**: Executes the following three processes **sequentially**:
* **Step 1: Parallel Agent**: Named "InformationGathering". It runs three agents concurrently to gather data:
* "NewsSearcher": Searches for recent news, strategic moves, and partnerships from the last 6 months.
* "ProductAnalyst": Identifies core products, value propositions, and target markets.
* "FinancialAnalyst": Retrieves financial health, revenue trends, and stock performance.
* **Step 2: Sequential Agent**: Named "ReportGeneration". It processes the gathered data:
* "Synthesizer": Consolidates all raw data into a structured SWOT analysis.
* "DraftWriter": Writes a comprehensive professional business report based on the SWOT analysis.
* **Step 3: Loop Agent**: Named "QualityAssurance". It iterates to improve the report quality:
* "Reviewer": Grades the report (1-10) on clarity, depth, and tone. Outputs JSON with "score" and "feedback". If the score is 10, it calls the `exit_loop` tool.
* "Refiner": Rewrites the report based on the feedback.
* **Condition**: Loop until the Reviewer calls `exit_loop` (score > 8), or up to 3 iterations.
* **Step 4: Final Report Agent**: Named "FinalReportAgent". It cleans up the final output, removing metadata and scores to present a polished report to the user.
Ensure all agents use the "gemini-2.5-flash" model. Assign the "Google Search" and "URL Context" tools to the NewsSearcher, ProductAnalyst, and FinancialAnalyst. Assign the "exit_loop" tool to the Reviewer.

すると、あっというまにこのようなマルチエージェントシステムが作成されます。

うまく行かない場合は、普通に Gemini Assistant に確認したり、修正してもらったりできます。
作成すると {agent_name} tmp ディレクトリ以下に Agent Config(YAMLファイル)が作成されます。

生成されたファイルを覗いてみると、非常にシンプルな構成が見られます。
name: information_gathering
agent_class: ParallelAgent
description: A workflow agent that gathers information from news, product, and
financial sources in parallel.
sub_agents:
- config_path: ./news_searcher.yaml
- config_path: ./product_analyst.yaml
- config_path: ./financial_analyst.yaml
※この YAML ファイルは自動生成されていますが、手動で微調整することも可能です。
Gemini Assistant にエージェントを作成してもらう以外にも、ADK Web 上の GUI で直接 Agent を追加・定義できます。
例:
- エージェントの定義
- ツールの追加(built-in Tool, Function Tool, Agent Tool)
ツール統合:エージェントの能力拡張
エージェントが実世界で価値を発揮するためには、外部環境への作用(Action)が不可欠です。Visual Builder では、ツール統合のプロセスが大幅に簡素化されています。
-
Built-in Tools: Google があらかじめ提供している高品質なツール群です。検索ウィンドウから選択するだけで即座に利用可能です。
-
google_search: Google 検索を実行し、最新情報を取得する(Grounding)。 -
load_memory/save_memory: 会話履歴や特定の情報を永続化・読み出しするメモリ管理ツール。 -
vertex_ai_search: 自社データ(RAG)へのアクセスを提供するツール。
-
-
Custom Tools: 独自のビジネスロジック(社内 API へのアクセス、データベース操作など)を Python 関数として実装し、ツールとして登録できます。Visual Builder 上で定義すると、プロジェクト内の
tools/ディレクトリに対応する Python ファイルが自動生成されます。 -
Agent as a Tool: ADK の強力な概念の一つです。あるエージェントを、別のエージェントから「ツール」として呼び出すことができます。これにより、例えば「数学専門エージェント」という機能をカプセル化し、「宿題ヘルパーエージェント」が計算が必要なときだけその専門エージェントをツールとして呼び出す、といった再利用性の高い設計が可能になります。
構築したエージェントのテスト
エージェントができたら、すぐにその場でテストできます。
ADK の Web UI を開き、チャットインターフェースにリクエストを入力します。
ここで「Google」といった企業名を入力してみましょう。
- まず Parallel Agent が並列で Google Search ツールで情報を集めます。
- Sequential Agent が集めた情報を統合し、レポートを書きます。
- Loop Agent が品質チェックを行い、評価基準に満たされたレポートが出来上がるまで改善していきます。(下記画像は記事作成↔️評価フローの一部です)
- 評価基準に満たされたレポートが出来上がったら、Reviewer Agent は exit-loop ツールを呼び出し、レビュー・修正ループを抜け出します。最後に Report Agent が最終チェックしてユーザーにレポートを提示します。
ADK Web UI にはトレース、デバッグ、評価などの強力な機能を備えています。
このような複雑なマルチエージェントシステムを構築・テストする際はとても便利です。
Step 2: Vertex AI Agent Engine へのデプロイ (The Runtime)
ローカルでの動作確認ができたら、次は Google Cloud のマネージド環境へ移行します。
Agent Engine とは
Vertex AI Agent Engine は、エージェントをサーバーレスでホストしてくれる実行環境です。
認証、ログ管理、スケーリングといったインフラの面倒事をすべて Google Cloud にお任せできます。自前でサーバーを立てたり、FastAPI でラップしたりする必要はありません。

デプロイ手順 (推奨: agent-starter-pack)
モダンな開発フローでは、agent-starter-pack を使用してプロジェクトを拡張します。
これにより、デプロイに必要な Dockerfile や Makefile が自動生成され、CI/CD パイプラインも構築しやすくなります。
デプロイ実行 (Deploy your ADK project)
Makefile が生成されているので、以下のコマンド一つでデプロイが完了します。
このコマンドは、必要な Google Cloud リソースをプロビジョニングし、コードをアップロードしてエージェントを実行状態にします。
make deploy
※ エージェント名を変更したい場合は、以下のように指定できます。
make deploy DISPLAY_NAME="My Custom Agent" DESCRIPTION="My Agent Description"
成果:
デプロイが成功すると、以下のような表示が出ます。
✅ Deployment successful!
Service Account: xxx@gcp-sa-aiplatform-re.iam.gserviceaccount.com
📊 Open Console Playground: Agent Engine Playground へのリンク
Open Console Playground をクリックして Agent Engine Playground でデプロイされたエージェントとの会話をテストできます。

Tips: 中間出力を隠してユーザー体験を向上させる
デフォルトでは、Gemini Enterprise 上ですべてのエージェントの思考プロセス(中間出力)が表示されてしまいます。
最終的なレポートだけを見せたい場合は、デプロイされたコード内の agent_engine_app.py を少し修正することで制御可能です。
streaming_agent_run_with_events メソッドをオーバーライドし、特定のイベント(例: FinalReportAgent からのイベント)のみをフィルタリングして返すように実装することで、ユーザーには洗練された最終結果のみを届けることができます。
async def streaming_agent_run_with_events(self, request_json: str):
"""Overrides the default streaming run to filter events."""
async for response in super().streaming_agent_run_with_events(request_json):
if "events" in response:
response["events"] = [
event
for event in response["events"]
if event.get("author")
in ("final_report_agent", "competitor_analyst")
]
yield response
Step 3: Gemini Enterprise への登録 (The Distribution)
ここがクライマックスです。エンジニアリングの世界から、ビジネスの現場へと接続します。
最後に、デプロイしたエージェントを社内の Gemini ユーザーに公開します。
これまでは独自の Web UI を作る必要がありましたが、Gemini Enterprise を契約している組織なら、普段使っている Gemini Enterprise のチャット画面に、このエージェントを呼び出せます。
Gemini Enterprise とは、Google Workspace に統合された企業向け生成 AI アドオンです。ドキュメント、ドライブ、Gmail などの社内データと連携し、セキュアな環境で業務効率化を支援します。
連携設定
- Google Cloud コンソール へ移動します。
-
Gemini Enterprise のアプリを作成します。

IDE に戻り、下記のコマンドを実行します。
make register-gemini-enterprise
コマンドを実行すると連携先を聞かれるので、使用する Gemini Enterprise の App ID を選択します。
連携する Gemini Enterprise を指定できたら、あとは待つだけです。
全社員のチャット画面へ
登録が完了すると、社員が普段使っている Gemini Enterprise の Agent Gallery 画面に、今回作った「競合調査エージェント」が登場します。

@マークでエージェントをメンションし、リクエストを送信すると処理が始まります。

しばらくすると、マルチエージェントにより生成された最終レポートが返されます。

Tips: エージェントを更新したいときは?
一度登録してしまえば、以降の更新は非常に簡単です。
コードを修正して Agent Engine に再デプロイ(make deploy)するだけで、Gemini Enterprise 側のチャットにも即座に最新の挙動が反映されます。修正のたびに登録コマンドを叩き直す必要はありません。
まとめ
- Visual Builder (設計): 直感的な GUI で、複雑なワークフローを爆速でプロトタイピング。視覚的なグラフ構造は、複雑なロジックを整理するのに最適です。
- Agent Engine (運用): サーバーレスで堅牢なホスティング。インフラ管理不要。
- Gemini Enterprise (利用): 全社員がアクセス可能なインターフェースへ即座に配信。
次のステップ
- ADK 公式ドキュメント を読む
- agent-starter-pack で最初のプロジェクトを作成する
- 社内で Gemini Enterprise ライセンスの取得を相談する
Google Cloud は、この 「作る → 動かす → 届ける」 というエコシステムが一気通貫で繋がっている点が強みです。
GUI で作ったプロトタイプが、クラウドにデプロイされ、企業の公式チャットツールの中で息づく。このシームレスな接続こそが、Google Cloud の生成 AI エコシステムの真骨頂です。
ぜひ、あなたのアイデアを「動くエージェント」にして、社内の仲間に届けてみてください。
Google Cloud のアドベントカレンダー 2025 として、この記事が皆様の「Agentic AI への第一歩」を後押しし、2026 年に向けた革新的なアプリケーション開発のインスピレーションとなることを願っています。
Let's build the future of Agents with ADK!
Discussion