Why_99%_of_AI_agents_fail_in_production_(and_how_to_fix_it)_|_The_Agent_Factory
この記事は、以下の YouTube 動画の内容をまとめたものです。
https://www.youtube.com/watch?v=nXafozNIk3c
Google Agent CLI & ADK 2.0: AIエージェント開発を革新する新時代のツール
AIと機械学習の進化は目覚ましく、私たちのビジネスや日常生活に深く浸透しつつあります。特に、近年注目を集めているのが「AIエージェント」です。しかし、この革新的な技術の構築、評価、そして本番環境へのデプロイには、依然として多くの課題が伴います。そうした中、GoogleはAIエージェント開発の体験を根本から変えるべく、強力な新ツール「Agent CLI」と「Agent Development Kit (ADK) 2.0」を発表しました。これらのツールは、開発者がより迅速かつ効率的に、そしてより信頼性の高いAIエージェントを構築できるよう設計されています。
今回は、GoogleのシニアAIプロダクトマネージャーであるShubham Saboo氏が、これらの画期的なツールと、AIエージェント開発の未来について語った内容を深く掘り下げてご紹介します。彼の知見は、開発者がAIの力を最大限に引き出すための新たな道筋を示してくれるでしょう。
Shubham Saboo氏のAIコミュニティへの多大な貢献
Shubham Saboo氏は、AIプロダクトとオープンソースの分野で卓越した実績を持つ人物です。Googleにおいて、彼は数百万人の開発者が日々利用するAIプロダクトに携わり、開発者がAIエージェントを構築しデプロイするのを支援するだけでなく、開発者からの貴重なフィードバックをプロダクトマネージャーに還元する役割も担っています。
彼の最も注目すべき功績の一つは、GitHubで公開されているリポジトリ「Awesome LLM Apps」の作成です。このリポジトリは現在、10万7千以上のスターを獲得しており、GitHubで最も人気のあるAIエージェントの例集として1位に輝いています。Shubham氏がこのリポジトリを作成した当初の目的は、個人的な整理のためでした。GPT-3がリリースされたばかりの頃、彼はAPIを試しながら多くのLLMアプリやサンプルをローカルで開発していました。その成果物をGitHubに公開したところ、数週間で1000スターを獲得し、開発者コミュニティからの大きな需要を認識しました。この予想外の反響が、彼をさらに貢献へと駆り立て、現在ではそのリポジトリが世界中のPython開発者の間で広く認知されるに至っています。
彼はまた、2冊の重要な書籍を出版しています。1冊目はGPT-3のリリース初期に「GPT-3: The Ultimate Guide to Building NLP Products with OpenAI API」として出版され、当時の最先端技術への実践的なガイドとなりました。2冊目の「Neural Search - From Prototype to Production with Jina」では、現在の多くのRAG(Retrieval-Augmented Generation)システムやAIエージェントの基盤となっている埋め込み(embeddings)とベクトル検索(vector search)技術について深く解説しています。これらの著作は、AI技術の最前線における彼の深い理解と、その知見をコミュニティと共有する彼の姿勢を明確に示しています。
Shubham氏の目標は、LLMアプリをより利用しやすくし、誰もがその上に新しいアイデアを構築できるようにすることです。彼のオープンソースへの情熱と、開発者コミュニティの課題を解決しようとする意欲が、現在のGoogleでの彼の役割と、今回ご紹介する新しいエージェントツールの開発に深く結びついています。
AIエージェント開発のパラダイムシフト:プロンプトエンジニアリングからユーザー理解へ
AIエージェントの進化は、開発者にとっての課題の性質も変化させました。Shubham氏は、AIエージェント開発における過去数年間の変化について、興味深い見解を述べています。
GPT-3がリリースされた当初、AIエージェントの構築は主に「プロンプトエンジニアリング」に焦点を当てていました。OpenAIのGPT-3 UIでは、システム指示やプロンプトの構造を綿密に設計することで、モデルから望む出力を引き出すことが求められました。午後いっぱいをかけて構造化されたJSON出力を得るためにプロンプトを調整する、といった作業が一般的でした。この段階では、いかに「魔法の言葉」を見つけるかが技術の肝でした。
しかし、現在、LLMは「普遍的な関数(universal function)」として認識されるようになりました。つまり、モデル自体は特定のタスクに特化しているわけではなく、適切な入力が与えられれば、どんなタスクにも対応できる可能性を秘めているということです。この変化により、AIエージェント開発における最も重要なスキルは、プロンプトの微調整から、**「ユーザーと彼らが解決しようとしている問題を深く理解し、それをエージェントにいかに効果的に伝えるか」**へと移行しました。
Shubham氏は、誰もが強力なLLMにアクセスできるようになった今、成功の鍵は「モデルとの対話能力」にあると強調します。ユーザーのニーズ、ビジネスロジック、解決すべき問題点を明確に理解し、それをエージェントに正確に伝える能力が、他の開発者との差別化要因となります。この新しいパラダイムにおいて、Agent CLIやADKのようなツールは、モデルの技術的な側面を抽象化し、開発者が問題解決と創造性に集中できる環境を提供します。
Agent CLIとADK 2.0がもたらす開発体験の飛躍的向上
Googleが新たに発表したAgent CLIとADK 2.0は、AIエージェントの構築、評価、デプロイのプロセスを大幅に簡素化し、開発者の生産性を劇的に向上させることを目指しています。
Agent CLIの概要とその主要機能
Agent CLIは、Google Cloud Agent Platform向けに設計されたコマンドラインインターフェース(CLI)とスキルパッケージの組み合わせです。これにより、開発者はAIエージェントのライフサイクル全体(構築、評価、デプロイ、監視)を、使い慣れたターミナルやコーディングエージェントから直接管理できるようになります。
Agent CLIの主要なスキル:
google-agents-cli-workflow: 開発ライフサイクル、コード保存、モデル選択といったワークフロー管理。google-agents-cli-adk-code: ADK Python APIを通じてエージェントのロジック、ツール、オーケストレーション、コールバックを操作。google-agents-cli-scaffold: プロジェクトの初期設定、作成、拡張、更新を支援。google-agents-cli-eval: 評価指標の設定、評価セットの実行、LLM-as-judgeを活用した評価。google-agents-cli-deploy: Agent Engine (Vertex AI), Cloud Run, Google Kubernetes Engine (GKE) などへのデプロイ。google-agents-cli-gemini: Gemini Enterpriseへの登録。google-agents-cli-observability: Cloud Trace、ロギング、サードパーティ連携によるエージェントの監視。
これらのスキルは、エージェント開発のあらゆる段階で開発者をサポートし、複雑な設定や手作業を自動化します。
デモ事例から見るAgent CLIの威力
Shubham氏のデモは、Agent CLIがいかに直感的で強力であるかを鮮やかに示しました。
簡単なセットアップ:
uvx google-agents-cli setupコマンドを実行するだけでAgent CLIがインストールされ、Gemini CLIのようなコーディングエージェントからすぐに利用可能になります。これにより、開発環境の準備にかかる時間が大幅に短縮されます。「Caveman Compressor」エージェントの構築: 彼は、冗長なテキストを洞窟壁画のような簡潔な技術的表現に圧縮する「Caveman Compressor」というユニークなエージェントを構築しました。コーディングエージェントに「
Use agents-cli to build a caveman-style agent that compresses verbose text into terse, technical grunts」とプロンプトを与えるだけで、Agent CLIがエージェントのコードとテストを自動的にスキャフォールディングします。ローカルでの実行とテスト: 構築されたエージェントは、ADK Web PlaygroundというブラウザベースのGUIでローカルに起動し、すぐにテストできます。デモでは、マイクロサービスアーキテクチャの課題に関する長い説明文が、エージェントによって「
Sync REST kill cluster. One timeout, all die. Peak load heavy. Trip breaker. Save stack.」といった簡潔な「洞窟のうなり声」に変換される様子が披露されました。クラウドへのシームレスなデプロイ: エージェントを本番環境にデプロイするのも驚くほど簡単です。コーディングエージェントに「
deploy to agent engine」と指示するだけで、Agent Engine (Vertex AI) にデプロイプロセスが開始されます。デプロイには5~10分程度かかりますが、重要なのは、Agent CLIが明示的な承認を求めることで、意図しないクラウドサービス起動を防ぐセキュリティが確保されている点です。これにより、開発者は煩雑なクラウド設定を意識することなく、ワンコマンドでデプロイが可能です。デプロイ後、Cloud ConsoleのAgent Engineダッシュボードから、エージェントのパフォーマンス(レイテンシ、エラー率など)、トレース、セッション、評価結果などを監視できます。ツールの拡張性: エージェントに新しい機能を追加するのも非常に簡単です。デモでは、「
Add a Google Search tool so the caveman can grunt about current events」というプロンプトで、エージェントにGoogle検索ツールを追加しました。Agent CLIは自動的に必要なコードを生成し、エージェントがリアルタイムの情報を検索できるようになります。マルチエージェントシステムの構築: Agent CLIは、単一のエージェントだけでなく、複数のエージェントが連携する複雑なシステムも構築できます。Shubham氏は、「PR Roaster」というマルチエージェントアプリの例を挙げました。このアプリは、以下の2つのADKエージェントをSequential Pipelineで連携させます。
- コードアナリスト: GitHubプルリクエスト(PR)の差分を分析し、コード品質、バグ、セキュリティ、パフォーマンスに関する構造化された技術レビュー(1~10のスコア)を返します。
- ローストマスター: アナリストの出力に基づき、コードをからかうユーモラスなジョークを3~5個生成し、PRの問題に特化した面白いミームプロンプトと1行の評価を返します。
- 最終的にミーム画像も生成されます。
このデモでは、Shubham氏の同僚のPRをAIエージェントがレビューし、9.2/10という高評価を下す様子が示されました。さらに、エラーハンドリングに関する具体的な改善提案や、ユーモラスなミーム画像(API Gateで「API not found」と書かれたIDカードを持つマップス開発者と、それを見て笑うGemini開発者)も生成され、その高度な機能が際立ちました。 これらのデモは、IDEを一切使用せず、ターミナル内のコーディングエージェントとAgent CLIの組み合わせだけで完結しました。
ADK 2.0が提供する次世代のAIエージェント機能
Agent CLIを支えるADK 2.0は、特に本番環境でのAIエージェントの信頼性と複雑なワークフローの管理において、画期的な機能を提供します。
グラフベースのエージェントワークフロー (Graph-based agent workflows): 従来、マルチエージェントのワークフローは主にプロンプトベースで定義されることが多く、エージェントが過去の会話や利用可能なツールを「忘れる」といった問題(hallucinations)に悩まされがちでした。ADK 2.0では、実行ノードとエッジのグラフとしてエージェントのロジックを定義できるようになりました。
- 決定論的ロジックの保証: コンプライアンスチェックや認証、厳密なデータ処理など、確定的な結果が求められる部分はコードロジックとして明示的に定義できます。これにより、エージェントが不適切な判断を下すリスクを低減し、信頼性を向上させます。
- AI推論の適切な適用: モデルの判断や創造性が必要な部分は、推論ノードとして動的に処理されます。
- このアプローチにより、エージェントは自身のコンテキストを忘れにくくなり、複雑なタスクにおいても一貫したパフォーマンスを発揮できるようになります。これにより、開発者はエージェントの振る舞いをより正確に制御し、予測可能な結果を得ることが可能になります。
Agent Runtimeの機能強化: プロダクション環境でエージェントを運用する際には、ネットワークの中断、電力障害、外部サービス障害など、様々な予期せぬ事態が発生します。ADK 2.0は、これらの課題に対応するための強力なAgent Runtime機能を提供します。
- Resume Stopped Agents: ワークフローが中断されても、中断した場所から自動的に再開できる機能です。コードに
is_resumable=Trueと1行追加するだけで、エージェントがツールが実行された履歴を追跡し、中断後にその時点から処理を継続できるようになります。これにより、長時間のワークフローでも中断を恐れることなく実行でき、高い信頼性を実現します。 - Ambient Agents: 人間がプロンプトを与えることなく、イベントに自律的に反応して動作するエージェントです。Cloud Storageへのファイルのアップロード、メッセージキューからのメッセージ受信、定期的なスケジュール実行、インフラストラクチャイベントの監視など、様々なイベントをトリガーとして、エージェントが自動的に適切なアクションを実行します。これにより、エージェントは受動的ではなく能動的にビジネスプロセスに参加し、人間が介入することなく問題を解決したり、タスクを完了したりすることが可能になります。これは、エージェントがより「人間らしく」なるための大きな一歩と言えるでしょう。
- Resume Stopped Agents: ワークフローが中断されても、中断した場所から自動的に再開できる機能です。コードに
多言語サポート: ADKは、Pythonに加えてTypeScript、Go、Javaといった複数のプログラミング言語でのエージェント構築をサポートします。これにより、開発者は自身の既存のスキルセットやチームの技術スタックに合わせて最適な言語を選択でき、学習コストを最小限に抑えながらAIエージェント開発に参入できます。これは、より多くの開発者にAIエージェント開発の機会を開放する重要な要素です。
オープンなエコシステム: ADKは、単にGoogleのツールやモデルに限定されるものではありません。Googleの広範なエコシステム(Google Search、Apigee API Hub、Google Cloud API Registryなど)との連携はもちろんのこと、様々な既存のアプリ、AIモデル、エージェント機能と接続できるオープンなエコシステムを構築しています。これにより、開発者は幅広い選択肢の中から最適なツールやサービスを組み合わせて、独自の強力なAIエージェントを構築できます。
AI開発の未来への提言:Shubham Saboo氏の視点
Shubham氏は、AIエージェント開発の未来におけるいくつかの重要な哲学と提言を共有しました。
コミュニケーションとソフトスキルの重要性: モデル自体が「普遍的な関数」となり、その性能がコモディティ化しつつある今、エージェント開発で最も重要なのは、開発者が「いかにユーザーと問題、そしてその解決策を理解し、それをエージェントに明確に伝えるか」というコミュニケーション能力です。Shubham氏は、AIエージェントをまるで人間であるかのように扱うことを推奨します。
「エージェントを従業員のようにオンボーディングする」: 多くの人がAIエージェントに魔法のような働きを期待しがちですが、Shubham氏は「魔法を期待するが平凡な結果しか得られない」という現実を指摘します。その原因は、エージェントに十分なコンテキストを与えていないことにあります。解決策はシンプルです。まるで新入社員をオンボーディングするように、エージェントに「あなたは何者か、何をするのか、何を必要とするのか」を明確に伝えます。最初は簡単なタスクから始め、徐々に複雑な情報やタスクを与え、エージェントが学習し成長するのを助けるのです。このプロセスを通じて、エージェントはより賢く、より信頼性の高い「従業員」へと育っていきます。
評価(Evaluation)が最大のボトルネック: AI開発において、最大の課題はモデルそのものではなく、その「評価」にあるとShubham氏は強調します。本番環境で運用されるエージェントは、何時間、何日にもわたって動作し続けることがあります。その間にネットワークが切断されたり、外部サービスが停止したり、予期せぬイベントが発生したりする可能性があります。こうした複雑な状況下でエージェントが意図した通りに動作しているかを正確に評価する標準的な方法が、まだ確立されていません。ADK 2.0のグラフベースのワークフローやResume機能、Agent CLIの評価スキルは、このボトルネックを解消するための強力な一歩となります。
シンプルさの追求: 「最高のAIエージェントアーキテクチャは、機能する最もシンプルなものだ」とShubham氏は語ります。複雑なマルチエージェントシステムを構築する際でも、XやYouTubeで見かけるような派手なデモに惑わされるべきではありません。データと問題の複雑さに合わせて、シンプルなAPIコールから始め、必要に応じて徐々に複雑なワークフローへと拡張していくのが賢明です。Agent CLIのようなツールは、このアプローチを容易にし、開発者が不必要な複雑さに陥ることなく、真に価値のあるエージェントを構築できるよう支援します。
オープンソースの未来: オープンソースのAIモデルは急速に進化しており、Shubham氏は「今後2年以内にプロプライエタリモデルを凌駕する」可能性さえあると見ています。Gemma 4やQwenのような最新のオープンソースモデルの登場は、高度な推論タスクにおいてもクローズドソースモデルに匹敵する、あるいはそれを上回る性能を発揮し始めています。このトレンドは、AI開発の民主化をさらに加速させ、より多くの開発者が革新的なソリューションを構築する道を開くでしょう。しかし、特定の最先端かつ高度に複雑な論理的推論タスクでは、依然としてフロンティアのクローズドソースモデルに依存するユースケースも存在するだろうと述べています。
結論
Googleが提供するAgent CLIとADK 2.0は、AIエージェント開発の新たな時代を切り開く強力なツールスイートです。グラフベースのワークフローによる精密な制御、Resume機能やAmbient Agentsによる本番環境での信頼性向上、そしてPython、TypeScript、Go、Javaといった多言語サポートとオープンなエコシステムは、開発者が直面する多くの課題を解決します。
Shubham Saboo氏の哲学が示すように、AI開発の未来は、モデルの技術的な優位性だけでなく、開発者がユーザーと問題への深い理解を持ち、AIエージェントと効果的に協調する能力にかかっています。これらのツールは、その協調をよりスムーズかつ強力なものにするための基盤を提供します。
AIエージェントの時代は始まったばかりです。Googleの新しいツール群は、開発者がこのエキサイティングなフロンティアを探求し、革新的なアプリケーションを構築し、ビジネスと社会に真の価値をもたらすための、かつてないほどの機会を提供してくれるでしょう。