先日、Google渋谷本社で開催されたADK (Agent Development Kit)の1day ワークショップに参加する機会をいただきました。

私自身初めての本社ということもあり、Google本社やワークショップをとても楽しみにしていました。ハンズオンや、GoogleのYusukeさんの熱心な講義を通じてAIエージェントの最前線を学ぶ貴重な体験ができました。

本記事では、Googleオフィスの素敵な雰囲気から、ワークショップで学んだ概要などを参加レポートとして皆さんに分かりやすくお伝えできればと思います。

今回のワークショップでは、私にとって初めて触れるトピックが多く、大変貴重な学びの機会となりました。エンジニアとしての経験はまだ浅く、不慣れな点も多々あるかと思いますが、学びを深めるために、私なりに頑張ってまとめました。

至らない点があるかもしれませんが、ご容赦いただけますと幸いです。このレポートが、皆様にとって少しでもお役に立てば嬉しく思います。

ワークショップアジェンダ

10:00 ~ 10:15 オープニング

10:15 ~ 10:55 AI Agent開発に関する座学

10:55 ~ 11:00 Skillsboost for Partner の説明

11:00 ~ 12:30  ハンズオン

12:30 ~ 13:45  ランチ

13:45 ~ 18:00  ハンズオン

Google本社へ潜入

渋谷ストリームの中にあり、渋谷駅から直結していました。エントランスに中へ入ると大きくGoogleの文字が!😳気分がとても上がりました!

受付を済ませてオフィスへ入ると、窓の外には渋谷の街並みが一望できました。開放的でとても眺めが良いです!

ランチタイムには豪華な料理や新鮮なフルーツ、色とりどりのデザートが豊富に用意されており、大変おいしくいただきました😋

ワークショップ概要

ここからはワークショップの概要をお伝えいたします。

初めてのDeepwiki
DeepWikiは、社内に蓄積された膨大な情報や知見に、自然言語でアクセスできるツールです。例えば、「LLMAgentとAgentの違いについて教えて」と質問するだけで、瞬時に探し出してくれます。初めてのプロジェクトで右も左も分からない時でも、DeepWikiに聞けば必要な情報がすぐに手に入るため、安心して業務に取り組むことができます。

DeepWikiを利用することで、今回のワークショップで学んだ最先端の技術を、より深く、そしてスムーズに理解することができました。

ADK(Agent Development Kit)とは?
ADKは、AIエージェントを構築、テスト、デプロイするための柔軟でモジュール型のPythonフレームワークです。Googleが開発したこのキットは、エージェント開発をより従来のソフトウェア開発のように感じられるように設計されています。

単にGeminiやGoogleのサービスに最適化されているだけでなく、他のモデルやインフラにも対応している点が大きな強みです。

ADKの主な特徴
モジュール型: 必要な機能だけを組み合わせて利用できます。

開発者フレンドリー: 従来のソフトウェア開発手法に近いため、学習コストが低いのが特徴です。

多様な機能: ツール連携、メモリ管理、コード実行、計画立案など、AIエージェント開発に必要な機能が一通り揃っています。

ADKを活用することで、開発者は複雑な部分に悩むことなく、AIエージェントのコアロジックに集中できるようになります。

AIエージェントを構成する主要コンポーネント
ADKの理解を深める前に、まずAIエージェントがどのような要素で構成されているかを見てみましょう。AIエージェントは、特定のタスクを達成するために設計されたAIアプリケーションの中核であり、主に以下の4つのコンポーネントで成り立っています。

モデル: LLMを中核エンジンとして、推論、計画、応答生成を行います。

ツール: 外部APIやサービスと連携し、データ取得やアクション実行などを可能にします。

オーケストレーション: エージェントの目的や指示を管理し、メモリやセッション、ツールなどを維持・管理します。

ランタイム(実行環境): ユーザーからの呼び出しに応じてエージェントを実行する環境です。

ADKは、これらのコンポーネントを効率的に構築・管理するためのツールキットとして機能します。

ADKハンズオンから見えた、AIエージェント開発の未来
ADKの基本的なコンセプトを学んだ後、いくつかのハンズオンを通してその実用性を体験しました。

基本の理解: ADKのプロジェクト構成やパラメータ設定、そして開発UI、プログラム、CLIチャットインターフェースといった複数の実行方法を体験しました。これにより、自分の開発スタイルに合わせることが可能になります。

ツールの活用: LLMの知識だけでは解決できないタスクを、ツールと連携させることでクリアできることを学びました。例えば、リアルタイムな情報を取得したり、外部サービスで特定のアクションを実行したりすることが可能になります。

データベース連携: データベースに特化したツールキット(MCP Toolbox)とADKを組み合わせることで、旅行代理店エージェントのような、より複雑で実用的なエージェントを構築できます。

GUIツールの利用: GUIで操作できるツールを使ってエージェント開発を行うことで、コーディングだけでなく視覚的なアプローチで開発を体験しました。これにより、より多くの人がAIエージェント開発を手軽に用いることができると感じました。

これらの体験は、ADKが単なる開発ツールではなく、AIエージェント開発のハードルを大きく下げ、より多くの可能性を切り開くことができると思います!

今回のハンズオンに取り組んだことでADKは、AIエージェント開発をより身近なものにしてくれる強力なツールキットだと実感しました。

AIエージェントの概念から、それを構成する要素、そして実際にADKを使って開発するプロセスまでを理解することで、AIエージェント開発に挑戦しやすくなります。

 

ワークショップを通じて

今回のワークショップを通して、AIエージェントの最前線に触れるという、とても貴重な体験をさせていただきました。

内容の中には、初めて耳にする言葉や新しい知識が数多く登場し、ハンズオンに取り組みながら必死にメモをとって理解を追いかける場面もありましたが、その分、学びや発見もたくさんありました!

今回得た経験を、このまま終わらせるのではなく、自分の力として定着させられるよう、今後も予習や復習を重ねて、少しずつ理解を深めていきたいと思います。

拙い文章ではございますが、最後までお読みいただき、ありがとうございました!