Google ADK for Kotlin 1.0正式版!AndroidでAIエージェントを作ると何ができる?
初回掲載日:2026/09/11
最終更新日:
Googleは2026年9月9日、Agent Development Kit(ADK)for Kotlin 1.0をGeneral Availability(GA)として公開しました。Android向けには、端末内モデル、クラウドAI、セッション保存、検索可能なMemoryを組み合わせて、複数ステップの処理を行うAIエージェントを作るための土台が公式に用意されています。
大事なのは「Gemini APIを呼ぶ代わりのもの」ではない点です。ADKは、AIが必要なアプリ機能をToolとして呼び、会話や状態を保持し、必要ならユーザーの確認を待つ、といったエージェントの流れを組み立てやすくするフレームワークです。
| 項目 | 要点 |
|---|---|
| 正式版 | ADK for Kotlin 1.0(GA) |
| 公開日 | 2026年9月9日 |
| 対象 | Kotlin、Java、Android開発者向け |
| 端末内AI | LiteRT-LM、ML Kit(beta)を使う構成が案内されています。 |
| クラウド | Firebase AI Logicとの統合が案内されています。 |
| Session / Memory | RoomとAppSearchを使うAndroid向け実装があります。 |
ADKとAIエージェントとは何か
単純なチャット機能なら、ユーザーの入力をモデルへ送り、返ってきた文章を表示するだけで作れます。一方、アプリ内で「データを調べる」「条件に応じて処理する」「複数の機能を順番に使う」といった仕事まで任せたい場合は、回答文以外の設計が必要になります。
ADKは、そうした処理の流れを作るための開発キットです。AIがすべてを自動で決めるものではありません。開発者が用意したTool、指示、保存先、確認手順の範囲で、目的に応じて次のステップを進める構成を作ります。
- 必要なToolを選んでアプリ機能を呼ぶ
- 会話を複数ターンにまたいで扱う
- 子Agentへ作業を委ねる階層的な構成を作る
- 送金など慎重な操作の前に、人間の確認を待つ
- 中断した会話を保存し、あとで再開する
1.0では、マルチエージェント、コンテキスト圧縮、Human-in-the-loop、長時間かかるTool、セッション再開、Java相互運用などがADK 1.0 Coreと整合する形で案内されています。
普通のGemini API呼び出しとADKの違い
| 観点 | 単純なモデル呼び出し | ADKで扱いやすいこと |
|---|---|---|
| 基本の流れ | 入力を渡し、回答を受け取る | AgentがTool・Session・Memoryを含めた流れを構成する |
| アプリ機能との連携 | 必要に応じてFunction Callingなどを個別に設計する | Tool、確認フロー、実行の中断・再開を組み合わせられる |
| 向く規模 | 要約、文章生成、単発の質問など | 複数ステップ、複数Tool、継続する会話や状態がある機能 |
Gemini API単体でもFunction Callingなどは利用できます。ADKが「Gemini APIではできないことだけ」を追加するというより、Agentの構成、Tool実行、状態管理、確認フローを一つの枠組みで扱いやすくする、と考えると分かりやすいです。
Android-first extensions:端末内・クラウド・保存を組み合わせる
| 要素 | 公式に案内されている役割 | 初心者向けの捉え方 |
|---|---|---|
| LiteRT-LM / ML Kit | 端末内AI向けの拡張。ML Kitはbetaです。 | ネット接続なしでも使う場面や、応答までの待ち時間を抑えたい場面を検討できる選択肢です。 |
| Firebase AI Logic | クラウド側のAIモデルと組み合わせる統合。 | より大きなモデルや高度な推論を使いたい部分の候補になります。 |
| RoomSessionService | Roomを使ってAgentのSessionを永続化する実装。 | アプリ終了やプロセス停止をまたいで、会話の状態を保存するための土台です。 |
| AppSearchMemoryService | AndroidX AppSearchを使うMemory実装。 | 端末内で検索した過去情報を、Agentが利用できるようにする選択肢です。 |
| Android storage | アプリ側のファイル保存と組み合わせる例。 | 生成したファイルやアプリ内データの置き場所を設計する部分です。 |
オンデバイスとクラウドは、勝ち負けではなく役割分担
Googleは、端末内AIをプライバシーに配慮した用途、低遅延、オフラインの信頼性と結び付けて説明しています。一方で、クラウド側のAIにはより大きなモデルや複雑な処理を使いたい場面があります。端末の対応状況、モデル、必要メモリ、ネットワーク、扱うデータに応じて、両者を組み合わせるHybrid構成を検討できます。
オンデバイスAIがすべてのAndroid端末で動く、クラウドより必ず速い、完全に安全、といった意味ではありません。実際の対応モデル・端末・メモリ要件・データの扱いは、採用する拡張ごとの最新ドキュメントで確認してください。
KSPと@Tool:AIから呼べるアプリ機能をKotlinで定義する
ADK for Kotlinでは、@Toolと@Paramを付けたKotlin関数を、Agentが呼び出せる機能として定義できます。KSP(Kotlin Symbol Processing)がビルド時にFunction Calling向けの定義を生成するため、実行時のリフレクションに頼らず、型を意識した形でToolを登録できます。
たとえば「今月の食費を集計する」「在庫を検索する」といったアプリ内の既存処理を、AIが勝手に自由に実行するのではなく、開発者が公開した範囲のToolとして渡すイメージです。suspend関数もサポートされています。
金額の確定やデータ削除のような操作は、Human-in-the-loopの確認フローを組み合わせるのが重要です。Googleの例でも、重要な送金の前にユーザー確認を挟んでいます。
導入条件とdependency:まずはJDKとGradleを確認
GoogleのKotlin Quickstartでは、Java 17以上とGradle 8.0以上を前提にしています。Quickstart自体はJVM向けなので、Androidアプリへ入れる場合はAndroid向けのセットアップと、必要な拡張モジュールの条件を別に確認してください。
1.0の基本的な依存関係として、公式Quickstartでは次のCoreとKSP Processorが案内されています。
dependencies {
implementation("com.google.adk:google-adk-kotlin-core:1.0.0")
ksp("com.google.adk:google-adk-kotlin-processor:1.0.0")
}
Android向けには、必要に応じてML Kit、LiteRT-LM、Firebase向けのモジュールを追加します。Googleの発表で示された1.0の例は、ML Kitが1.0.0-beta、LiteRT-LMとFirebase Android拡張が1.0.0です。すべてを一度に入れる必要はありません。
JavaでAndroidアプリを書いている人にも関係する?
Googleは、ADK for Kotlin 1.0の機能としてfirst-party Java interoperabilityを案内しています。既存のJavaアプリからADK Kotlin Agentを直接呼び出せるため、Java中心のプロジェクトでも検討対象になります。ただし、Javaだけで一切Kotlinを書かずにすべての構成を完結できるかは、アプリの設計と利用する拡張に左右されます。導入前に公式のJava相互運用サンプルを確認するのが安全です。
個人Androidアプリでの活用例
以下は、ADKを使って作れる可能性がある架空の設計例です。既存アプリとして提供されている機能ではありません。
家計アプリ
「先月より食費は増えた?」と聞かれたら、Roomのデータを読むToolで集計し、結果を説明する流れを作れます。送金のような重要操作は確認を挟む設計にします。
持ち物管理
在庫や購入履歴を検索し、「そろそろ切れそうなもの」を候補として示す構成です。検索対象と判断ルールは、アプリ側が明示的に定義します。
資格学習
学習履歴を検索し、苦手な分野を探して問題を提案する流れです。AppSearchを使う場合も、何をMemoryとして保存・検索するかは設計が必要です。
オフライン補助
端末内モデルが対応する条件なら、ネットワークがない場面の補助機能を検討できます。端末ごとの差やモデル要件は必ず事前に検証します。
今すぐ採用すべき? まずはAI機能の複雑さで判断
ADKを検討しやすいケース
- AIが複数ステップで処理する
- 複数のToolを使う
- 会話やタスクの状態を保存したい
- 端末内とクラウドを使い分けたい
- 確認フローや複数Agentが必要
まだ小さく始めてよいケース
- 文章生成や要約を1回呼ぶだけ
- AI機能が小さく、Sessionを持たない
- Toolの数が少ない
- フレームワークを導入する負担の方が大きい
個人開発では、AIを入れること自体を目的にしないほうが実装を判断しやすくなります。まずは「ユーザーの代わりに何段階の処理を行うのか」「途中で確認が必要か」「データをどこへ保存するか」を書き出し、それが複雑ならADKを候補にする、という順番が実用的です。
まとめ
ADK for Kotlin 1.0は、AndroidアプリでAIエージェントを組み立てるための正式版ツールキットです。LiteRT-LMやML Kit(beta)による端末内AI、Firebase AI Logicによるクラウド、RoomによるSession、AppSearchによるMemoryなどを、アプリの目的に合わせて組み合わせられます。
単発の文章生成だけなら、まずは直接のモデル呼び出しで十分な場合もあります。複数Tool、保存、確認、再開まで必要になったときに、ADKの価値が分かりやすくなります。