ANTIGRAVITY LABEN
記事一覧/アプリ開発
アプリ開発/2026-04-16中級

Google AI Edge Eloquent:iOSでGoogleのオンデバイスAIを動かす実装入門

Google AI Edge Eloquentは、GoogleのAIモデルをiOS/Apple Silicon上でローカル実行するためのフレームワークです。LiteRTベースのオンデバイス推論をAntigravityで実装する手順を解説します。

Google AI EdgeEloquentiOS27オンデバイスAI6LiteRTAntigravity338

「GoogleのAIモデルをiPhoneで動かす」というのは数年前まで夢物語でしたが、Google AI Edge Eloquent の登場で現実的になりました。

Eloquent は Google AI Edge プラットフォームの iOS 向けフレームワークで、Gemma をはじめとする Google のモデルを Apple Silicon 上でネイティブ実行できます。Android 向けの LiteRT(旧 TensorFlow Lite)に相当する存在として、クロスプラットフォームのオンデバイスAI開発を可能にします。

Google AI Edge プラットフォームの全体像

Google AI Edge は、Google のAIモデルをエッジデバイス(スマートフォン・組み込み機器等)で動かすためのプラットフォームです。2026年時点でのコンポーネントは以下の通りです。

  • LiteRT(旧 TensorFlow Lite): Android / IoT 向けの推論エンジン
  • Eloquent: iOS / macOS / Apple Silicon 向けの推論エンジン
  • MediaPipe: クロスプラットフォームのAIパイプラインフレームワーク
  • AI Core(Android): Android 端末上での Gemma 実行基盤

Eloquent は Apple の Core ML と競合するのではなく、Google のモデル形式(.task / .tflite)をAppleデバイス上で高効率に動かすためのレイヤーとして位置付けられています。

なぜ Eloquent を使うのか

iOS アプリでオンデバイスAIを使いたい場合、既存の選択肢は2つありました:

  1. Apple Core ML: Apple モデル形式(.mlpackage)を使う。Appleエコシステムでの最適化が高く、Metal 加速をフルに使える。ただし Google モデルをそのまま使いにくい
  2. OnnxRuntime for iOS: オープンな推論エンジン。モデルのポータビリティが高いが、Google モデルとの親和性は Core ML ほどではない

Eloquent は Google モデルをそのまま iOS / Apple Silicon で動かせる点が強みです。Gemma をサーバーなしで iPhone 上で使いたい開発者にとって、最も自然な選択肢になります。

Antigravity での実装セットアップ

Antigravity に以下のプロンプトを与えることで、Eloquent を使った基本的な推論コードを生成できます。

「Google AI Edge Eloquent を使ってiOSアプリでGemmaモデルをローカル推論する
 SwiftUI実装を作ってください。モデルのロード・テキスト生成・エラーハンドリング
 を含めてください」

Antigravity が生成するコードの基本構造:

import GoogleAIEdge // Eloquentのフレームワーク
 
class GemmaLocalInference: ObservableObject {
    private var model: EloquentTextModel?
    @Published var isLoading = false
    @Published var output = ""
    
    // モデルのロード(非同期・初回起動時にbundleから読み込む)
    func loadModel() async throws {
        guard let modelPath = Bundle.main.path(
            forResource: "gemma-2b-it-cpu",
            ofType: "task"
        ) else {
            throw EloquentError.modelNotFound
        }
        
        let options = EloquentTextModel.Options()
        options.maxTokens = 512
        options.temperature = 0.7
        
        model = try await EloquentTextModel.load(
            modelPath: modelPath,
            options: options
        )
    }
    
    // テキスト生成(Streaming対応)
    func generate(prompt: String) async {
        guard let model = model else { return }
        
        isLoading = true
        output = ""
        
        do {
            for try await token in model.generateStream(prompt: prompt) {
                await MainActor.run {
                    output += token
                }
            }
        } catch {
            await MainActor.run {
                output = "エラー: \(error.localizedDescription)"
            }
        }
        
        await MainActor.run {
            isLoading = false
        }
    }
}

モデルの準備と組み込み方

Eloquent で使えるモデルは .task 形式です。Google AI の公式サイトから Gemma の変換済みモデルをダウンロードできますが、ファイルサイズが大きいため注意が必要です。

モデルファイルサイズ(量子化あり)推奨用途
Gemma 2B IT(INT4量子化)約800MBiPhone 15以降、テキスト生成
Gemma 2B IT(FP16)約2.5GBiPad Pro / Mac、品質重視

800MBのモデルをアプリバンドルに含めると App Store の審査に影響します。推奨は On-Demand Resources(ODR) を使ってアプリの初回起動後にダウンロードする方式です。

// On-Demand Resources でモデルをダウンロードする例
let request = NSBundleResourceRequest(tags: ["gemma-model"])
try await request.beginAccessingResources()
// アクセス後にEloquentでロード

Antigravity にこの方式を指示すれば、ODRの設定からモデルロードのリトライロジックまで含めたコードを生成してもらえます。

Antigravity × Eloquent の実用シナリオ

プライバシー重視のテキスト処理アプリ

日記・メモ・医療記録など、クラウドに送りたくないテキストの要約・翻訳・分析をオフラインで実行できます。「サーバーにデータを送らない」という点はプライバシー意識の高いユーザーに強く訴求できます。

オフライン対応の言語学習アプリ

機内や地下鉄でも AI チューターが動く語学アプリは、既存のクラウド依存型アプリとの明確な差別化になります。

低レイテンシのリアルタイム変換

ライブキャプション・リアルタイム翻訳など、ネットワーク遅延が許容できないタスクでオンデバイス推論が活きます。

現時点での制約

Eloquent は2026年時点でまだ Developer Preview の段階です。いくつかの制約があります:

  • 対応モデルが限定的: Gemma 2B / 7B のみ(Gemma 4 対応は今後)
  • Apple Silicon 専用最適化は Core ML に劣る: Metal Performance Shaders への直接アクセスは Core ML の方が効率的
  • 日本語での精度: Gemma の日本語能力は Claude / Gemini より低い場合がある

それでも「Google モデルをiOSで動かす」という明確なユースケースには、現状最も実用的な選択肢です。

まずは動かしてみるところから

Google AI Edge の公式ドキュメントに Eloquent のクイックスタートガイドがあります。まずは Xcode プロジェクトに Eloquent SDK を追加して、サンプルモデルで推論が動くことを確認するところから始めてみてください。

Antigravity はこうした「ゼロから動くものを作る」フェーズを大幅に加速してくれます。プロンプトで意図を伝えれば、Xcode プロジェクトの構成からエラーハンドリングまで含めた実装を提案してもらえます。

シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

アプリ開発2026-05-02
Antigravity × Gemma 4 で作る SwiftUI マルチモーダル画像 AI アプリ実装ガイド — カメラ・フォトライブラリ・テキスト入力を一気通貫で
Antigravity と Gemma 4 を組み合わせ、カメラ・フォトライブラリ・テキスト入力に対応したマルチモーダル AI アプリを SwiftUI で実装する完全ガイド。Core ML 統合からエラーハンドリング、App Store 審査対応まで網羅します。
アプリ開発2026-07-04
課金済みなのに広告が消えない — StoreKit 2 の Transaction.updates を起動直後に取りこぼす競合を Antigravity と塞いだ記録
起動直後に届く StoreKit 2 のトランザクションを取りこぼす競合を、View 寿命ではなくアプリ寿命にリスナーを固定して塞いだ実装記録。currentEntitlements での照合、finish() の徹底、StoreKitTest での回帰テスト化まで。
アプリ開発2026-07-03
ユニバーサルリンクが黙って壊れる — 関連付けファイルのドリフトをエージェントの検証ゲートで塞ぐ
ユニバーサルリンク/App Linksは、関連付けファイルやエンタイトルメントがズレると例外を出さずにブラウザへ落ちます。ルート定義を単一の真実源にまとめ、エージェントに週次と公開前の検証を任せる設計をまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →