ML Kit の生成 AI API の概要

ML Kit の GenAI API は、Gemini Nano の能力を活用してアプリのタスク 実行を支援します。これらの API は、高度なインターフェースを通じて、一般的なユースケースにすぐに使用できる品質を提供します。ML Kit の GenAI API は AICore上に構築されています。AICore は、オンデバイスでの生成 AI 基盤モデルの実行を可能にする Android システム サービスです。これにより、データをローカルで処理することで、アプリの機能強化やユーザーのプライバシー保護の強化などの機能が実現します。

GenAI API の使用には、ML Kit GenAI API 追加利用規約が適用されます。API クライアントの安全性とアプリのユーザー エクスペリエンスについては、デベロッパーが単独で責任を負います。

主な機能

ML Kit の GenAI API は、次の機能をサポートしています。

  • 要約: 記事やチャットの会話を箇条書きで要約します。
  • 校正: 文法を修正し、 スペルミスを修正して、短いコンテンツを洗練させます。
  • 書き換え: 短いメッセージをさまざまなトーンやスタイルで書き換えます。
  • **画像の説明**: 指定された画像の簡単な説明を生成します。
  • 音声認識: 音声コンテンツをテキストに変換します。
  • プロンプト: カスタムの テキストのみのプロンプトまたはマルチモーダル プロンプトに基づいてテキスト コンテンツを生成します。

生成 AI API のメリット

他の既存の ML Kit 機能と同様に、生成 AI API は完全にオンデバイスで実行されるため、次のようなメリットがあります。

  • 入力データ、推論データ、出力データはローカルで処理される
  • 信頼性の高いインターネット接続がなくても機能は変わらない
  • API 呼び出しごとに追加のサーバー費用が発生しない

また、生成 AI API は AICore 上に構築され、Gemini Nano を搭載しているため、すべてのアプリがデバイス上の共有 Gemini Nano モデルを使用できます。これにより、デバイスにモデルがすでに存在する場合にモデルのダウンロードを待つ必要がなくなり、ストレージ スペースを節約できます。AICore がリクエストを分離してプライバシーを保護する方法について詳しくは 、こちらをご覧ください

ストリーミングと非ストリーミング

ML Kit の GenAI API では、結果を受信する際にストリーミング オプションと非ストリーミング オプションの両方を使用できます。ストリーミング API は、レスポンスが生成されるたびに段階的に配信されるため、データの流れが途切れません。一方、非ストリーミング API は、レスポンス全体が完了するまで待ってから、単一のブロックとして返します。

長いレスポンスの場合は、最初のフィードバックを迅速に行えるストリーミング API を選択してください。非ストリーミング API は、短いレスポンスの場合や、結果をバッチで処理する場合に適しています。

デバイスのサポート

生成 AI 機能固有の API(要約、校正、書き換え、画像の説明)は、次のセクションで説明するように、Prompt API とは異なるデバイスをサポートしています。

機能固有の API のデバイス サポート

要約、校正、書き換え、画像の説明の各 API は、次のデバイスで利用できます。今後、サポート対象デバイスを拡大する予定です。

  • Google: Google Pixel 10、Google Pixel 10 Pro、Google Pixel 10 Pro XL、Google Pixel 10 Pro Fold、Google Pixel 9、Google Pixel 9 Pro、Google Pixel 9 Pro XL、Google Pixel 9 Pro Fold
  • Honor: Honor 400 Pro、Magic 7、Magic 7 Pro、Magic 8 Pro、Magic V5
  • iQOO: iQOO 13、iQOO 15
  • Lenovo: Lenovo Idea Tab Pro Gen 2、Lenovo Legion Tab Gen 5(8.8 インチ)
  • Motorola: Razr 60 Ultra、Razr Ultra 2025、Signature
  • OnePlus: OnePlus 15、OnePlus 15R、OnePlus 13、OnePlus 13s
  • OPPO: Find N5、Find X9、Find X9 Pro、Find X8、Find X8 Pro、Reno 14 Pro 5G、Reno 15 Pro 5G、Reno 15 Pro Mini 5G、Reno 15 Pro Max 5G
  • POCO: POCO F7 Ultra、POCO F8 Pro、POCO F8 Ultra、POCO X7 Pro、POCO X8 Pro
  • realme: realme GT 7 Pro、realme GT 7T
  • Samsung: Galaxy S25、Galaxy S25+、Galaxy S25 Ultra、Galaxy S26、Galaxy S26+、Galaxy S26 Ultra、Galaxy Z Fold7、Galaxy Z TriFold
  • Sharp: AQUOS R11
  • vivo: vivo X200T、vivo X200 FE、vivo X200、vivo X200 Pro、vivo X300、X300 Pro、vivo X Fold3 Pro、vivo X Fold5、vivo T4 Ultra
  • Xiaomi: Xiaomi 14T Pro、Xiaomi 15、Xiaomi 15T、Xiaomi 15T Pro、Xiaomi 15 Ultra、Xiaomi 17、Xiaomi 17 Ultra、Xiaomi Pad Mini

特定の言語のサポート状況は、デバイスの構成やデバイスにダウンロードされているモデルによって異なる場合があります。

Prompt API のデバイス サポート

プロンプト API は、次のデバイスでサポートされています。

nano-v2

  • Google: Google Pixel 9、Google Pixel 9 Pro、Google Pixel 9 Pro XL、Google Pixel 9 Pro Fold
  • Honor: Magic V5、Magic 7、Magic 7 Pro
  • iQOO: iQOO 13
  • Motorola: Razr 60 Ultra、Razr Ultra 2025
  • OnePlus: OnePlus 13、OnePlus 13s
  • OPPO: Find N5
  • POCO: POCO F7 Ultra、POCO F8 Pro、POCO F8 Ultra、POCO X7 Pro、POCO X8 Pro
  • realme: realme GT 7 Pro
  • Samsung: Galaxy Z Fold7、Galaxy Z TriFold
  • vivo: vivo X200 FE、vivo T4 Ultra
  • Xiaomi: Xiaomi 14T Pro、Xiaomi 15、Xiaomi 15T、Xiaomi 15T Pro、 Xiaomi 15 Ultra、Xiaomi 17、Xiaomi 17 Ultra、Xiaomi Pad Mini

nano-v3

  • Google: Pixel 10、Google Pixel 10 Pro、Google Pixel 10 Pro XL、 Google Pixel 10 Pro Fold
  • Honor: Honor Magic 8 Pro
  • iQOO: iQOO 15
  • Lenovo: Lenovo Idea Tab Pro Gen 2、Lenovo Legion Tab Gen 5(8.8 インチ)
  • Motorola: Signature
  • OnePlus: OnePlus 15、OnePlus 15R
  • OPPO: Find X9、Find X9 Pro、Find X8、Find X8 Pro、Reno 14 Pro 5G、Reno 15 Pro 5G、Reno 15 Pro Mini 5G、Reno 15 Pro Max 5G
  • realme: realme GT 7T
  • Samsung: Galaxy S26、Galaxy S26+、Galaxy S26 Ultra
  • Sharp: AQUOS R11
  • vivo: vivo X200T、vivo X200、vivo X200 Pro、vivo X300、vivo X300 Pro

Speech Recognition API のデバイス サポート

Speech Recognition API は、次のデバイスでサポートされています。

基本モード API レベル 31 以降を搭載した ほとんどの Android デバイスで利用できる、従来のオンデバイス音声認識モデルを使用します。
詳細モード 生成 AI モデルを活用して、高品質で幅広い言語 に対応します。Google Pixel 10 デバイスでサポートされています。現在、他のデバイスも開発中です。

Gemini Nano のバージョンを取得する

Gemini Nano のバージョンはデバイスによって異なります。デバイス上の Gemini Nano のバージョンを返すには、getBaseModelName() を使用します。

アプリケーションごとの割り当て

AICore は、アプリごとに推論割り当てを適用します。短期間に生成 AI API リクエストを送信しすぎると、ErrorCode.BUSY レスポンスが返されます。このようなエラーが発生した場合は、指数バックオフを使用してリクエストを再試行することを検討してください。また、アプリが長期間の割り当て(1 日の割り当てなど)を超過した場合、ErrorCode.PER_APP_BATTERY_USE_QUOTA_EXCEEDED が返されることがあります。

バックグラウンドでの使用

生成 AI API の推論は、アプリが最上位のフォアグラウンド アプリケーションの場合にのみ許可されます。アプリがフォアグラウンドにないときに API を使用すると(フォアグラウンド サービスの使用を含む)、ErrorCode.BACKGROUND_USE_BLOCKED レスポンスが返されます。

サンプルコード

このコードを取得するには、次のサンプルをご覧ください。