見出し画像

Android AICore による Gemini Nano の実行手順

以下の記事が面白かったので、簡単にまとめました。

Gemini Nano is now available on Android via experimental access


1. はじめに

本日 (2024年10月1日)、すべての Android 開発者に「AICore」経由で「AI Edge SDK」を使用した「Gemini Nano」への実験的アクセスを解放しました。開発者は、「Pixel 9」でText-to-Textプロンプトを試すことができます。

今後、より多くのデバイスとモダリティのサポートが追加されます。開始するには、ドキュメント動画を確認してください。実験的アクセスは開発目的であることに注意してください。

2. オンデバイス生成AI

オンデバイス生成AI」 は、サーバー呼び出しなしで、デバイスで直接プロンプトを処理します。機密データはローカルに処理され、通信なし、追加コストもかからないなど、多くの利点があります。

クラウドよりも計算能力が低いデバイスで実行されるため、クラウドの同等のものよりも大幅に小さく、汎化されていません。そのため、このモデルはチャットボットなどのオープンエンドのユースケースではなく、要求を明確に指定できるタスクに適しています。

ユースケースは、次のとおりです。

・言い換え : よりカジュアルまたはフォーマルなトーンを変更
・スマートリプライ : 返信の文面を提案
・校正  : テキストからスペルや文法の間違いを削除
・要約 : 長い文書の要約を段落または箇条書きとして生成

最良の結果を得るために、プロンプト戦略を確認してください。「Gemini Nano」の実験を開始する簡単な方法として、サンプルアプリをダウンロードしてください。

3. Gemini Nano の性能

現在開発者に提供されているモデル (論文では「Nano 2」と呼ばれている)は、品質が大幅に向上しています。前身(「Nano 1」)のほぼ2倍のサイズで、学術的なベンチマークと現実世界のアプリケーションの両方で優れており、はるかに大きなモデルに匹敵する機能を提供します。

「Gemini Nano」はすでにGoogleアプリで使用されています。「Pixel Screenshots」「Talkback」「Recorder」など、「Gemini Nano」のテキストと画像の理解を活用して、新しい体験を提供しています。

4. AICore と AI Edge SDK

生成AIをモバイルアプリに統合することは、大量の計算リソースとストレージが必要になるため困難です。この課題に対処するために、Androidの新しいシステムサービス「AICore」を開発しました。これによって、ランタイム、モデル、その他のコンポーネントを自分で配布する必要がなくなります。

「AICore」で「Gemini Nano」を利用するには、「AI Edge SDK」を使用します。開発者は特定のニーズに合わせてプロンプトと推論パラメータをカスタマイズでき、より細かく制御できます。

「AI Edge SDK」を試すには、次のアプリの依存関係を追加します。

implementation("com.google.ai.edge.aicore:aicore:0.0.1-exp01")

推論パラメータをカスタマイズできます。
一般的に使用されるパラメータは、次のとおりです。

Temperature : ランダムさ
・Top K : 最上位のトークンから考慮されるトークンの数
・Candidate count : 返される応答の最大数
・Max output tokens : 希望する応答の長さ

長い推論データを収容するために、複数の文字列を入力として渡す方法も提供します。

scope.launch {
    // Single string input prompt
    val input = "I want you to act as an English proofreader. I will 
    provide you texts, and I would like you to review them for any 
    spelling, grammar, or punctuation errors. Once you have finished 
    reviewing the text, provide me with any necessary corrections or 
    suggestions for improving the text: 
    These arent the droids your looking for."
    val response = generativeModel.generateContent(input)
    print(response.text)

    // Or multiple strings as input
    val response = generativeModel.generateContent(
        content {
            text("I want you to act as an English proofreader.I will 
            provide you texts and I would like you to review them for 
            any spelling, grammar, or punctuation errors.")
            text("Once you have finished reviewing the text, 
            provide me with any necessary corrections or suggestions 
            for improving the text:")
            text("These arent the droids your looking for.")
        }
    )
    print(response.text)
}

詳しくは「統合ガイド」を参照してください。

5. サンプルアプリの実行手順

サンプルアプリ」の実行手順は、次のとおりです。

(1) 「Pixel 9」の準備し、テスト用アカウントでログイン。
サンプルアプリを実行するには、「Pixel 9」が必要です。

(2) テスト用アカウントで以下を登録。

aicore-experimental Googleグループに参加
Android AICoreテストプログラムにオプトイン

これにより、Playストアのアプリ名が「Android AICore」から「Android AICore (ベータ版)」に変更されます。

(3) 以下のアプリを最新版に更新。

Android AICore (ベータ版)
Private Compute Service APK

(4) 「Pixel 9」を開発者モードの有効化し、USBでPCと接続。

(5) 「サンプルアプリ」をダウンロードし、「Android Studio」で開いて実行。



いいなと思ったら応援しよう!