世界を動かす技術を、日本語で。

Google AI Edge – デバイス上でのクロスプラットフォームAI展開

概要

LiteRT Nextは、デバイス上でのハードウェアアクセラレーションを簡素化・強化する新しいAPI群。 Android、iOS、Web、組み込み機器などクロスプラットフォーム対応。 JAX、Keras、PyTorch、TensorFlowなど主要フレームワークに対応。 低レイテンシ・オフライン動作・プライバシー保護を実現。 MediaPipeやModel Explorerなどのツールと連携し、開発効率向上。

LiteRT Next:デバイス上AI推論の新時代

  • LiteRT Next は、Googleの AI Edge 戦略を支える新API群
  • ハードウェアアクセラレーション を簡単に活用できる設計
  • 低レイテンシオフライン動作データローカル保持 によるプライバシー保護
  • クロスプラットフォーム 対応(Android、iOS、Web、組み込み機器)
  • マルチフレームワーク (JAX、Keras、PyTorch、TensorFlow)互換性

フレキシブルなAIエッジスタック

  • 低コードAPI で一般的なAIタスク(生成AI、ビジョン、テキスト、音声)に対応
  • MediaPipe Tasks による迅速なAI機能実装
  • カスタムモデル のクロスプラットフォーム展開サポート
  • GPU/NPUアクセラレーション を活用した高効率なパイプライン構築
  • プリ/ポストプロセス を含む複雑なMLパイプラインの自作可能

開発効率を高めるツール群

  • Model Explorer によるモデル変換・量子化の可視化
  • ベンチマーク結果のオーバーレイ でホットスポットのデバッグ容易化
  • MediaPipe Framework による高性能MLパイプライン構築
  • Gemini Nano などの最新オンデバイス生成AIモデルも対応

導入・運用フロー

  • モデル選定 :新規モデルの利用、既存モデルの再学習、自作モデルの持ち込み
  • 変換 :JAX、Keras、PyTorch、TensorFlowモデルをLiteRT形式に最適化変換
  • デプロイ :Android、iOS、Web、マイコン等での実行
  • 量子化 :モデル圧縮によるレイテンシ・サイズ・メモリ削減
  • デバッグ・比較 :Model Explorerでパフォーマンス・数値精度・問題箇所の特定

主要プロダクト・ドキュメント

  • MediaPipe Tasks :生成AI、ビジョン、テキスト、音声の各種APIとサンプル
  • Generative AI Tasks :LLMやDiffusionモデルのエッジ実行
  • Model Maker :MediaPipe Tasks用モデルのカスタマイズ手順
  • 最新情報 :Android AICore、Chrome Built-In AI、Gemini Nano等の最新動向

今後の展望

  • TensorFlow LiteLiteRT へ進化
  • AndroidChrome での生成AI体験強化
  • エッジAI のさらなる普及と開発効率向上

Hackerたちの意見

詳細はこちら: https://ai.google.dev/edge/mediapipe/solutions/guide (オープンソースみたいだね: https://github.com/google-ai-edge/mediapipe)これは実際にデバイス上で動くAIモデルを展開するための統一された方法だと思うんだ。「AIスタックのJavaScript」みたいな感じかな?この技術のターゲットオーディエンスは誰なんだろう?

Mediapipeのモデルはいいものもあるけど、Mediapipe自体はずっと前からある(2019年から)。AIをエッジで動かすことが目的で、当時は視覚タスクがエキサイティングなフロンティアだった。顔追跡みたいなものにはまだ役立つけど、画像認識のような他のタスクでは世界が大きく変わっちゃったね。

ターゲットオーディエンスは、MLモデルをクロスプラットフォームで展開する人たちだね。特に、TFLiteランタイムを超えるサポートコードが必要なもの。LLMやコンピュータビジョンタスクがいい例だよ。例えば、手のジェスチャー認識器は以下が必要かも:- 入力画像の特定の色空間+画像サイズへの前処理 - 画像をGPUメモリにコピー - 手を検出するためにオブジェクト検出TFLiteモデルを実行 - 出力画像のリサイズ - ジェスチャーを検出するためにジェスチャー認識TFLiteモデルを実行 - ジェスチャー出力を有用なものに後処理 これをiOSとAndroidに送るには、TFLiteモデルを実行する以上のたくさんのコードが必要だよ。GoogleのMediapipeアプローチは、このグラフパイプラインと共有処理「ノード」を一つのC++ライブラリにパッケージ化して、必要なものを選んでタスク間で操作を再利用できるようにしてる。ライブラリはクロスプラットフォームでコンパイルできて、サポートタスクはGPUアクセラレーションオプションを提供できる。Googleが内部で議論してたのは、これらの機能をTFLiteランタイムに拡張するのがベストか、別のライブラリ(Mediapipe)を作るのがベストかってことだろうね。TFLiteはすでに追加の操作でカスタムコンパイルオプションをサポートしてる。私の予想では、TFLiteを「テンソルベースの計算」タスクに集中させて、LLMや画像処理のような広範な操作は別のライブラリにオフロードするのがベストだと思ったんじゃないかな。

これは新しい製品なの?それとも既存のMediaPipeのいろんなものをまとめたマーケティングページなのかな?すごくワクワクしたけど、「Google AI Edge」が実際に何なのか分からなくなっちゃった。編集: これは数年前のこれのリブランドだと思う: https://developers.googleblog.com/en/introducing-mediapipe-s...

CoreMLやTimyMLのようなフレームワークに比べて、かなり遅れてるね。それに、Googleはまず製品を殺さないことを証明しないと、次の四半期の投資家の期待に応えられないよ。

ただのリブランドされたTensorFlow Liteだよ。2019年からエッジデバイスで使ってるし…CoreMLもいいよね!

これはあまり正しくないよ。彼らは異なる提供物だよ。CoreMLはAppleエコシステム特有で、PyTorchモデルをiOS/Macで加速して動かすCoreML .mlmodelに変換できる。Google Mediapipeは、どんなデバイス(iOS/Android/Web)でもMLフローを動かすための巨大なC++ライブラリだよ。TensorFlow Lite(今はLiteRT)も含まれているけど、画像のリサイズや注釈付けなどの一般的なML前処理タスクを助けるグラフプロセッサでもある。Googleが製品を早く殺すのは良いジョークだけど、Mediapipeはオープンソースだから、その点は評価できるね。https://github.com/google-ai-edge/mediapipe 私は契約でiOS/Androidのコンピュータビジョン製品にMediapipeのフォークを使ったけど、すごく複雑だったけどうまくいったよ。CoreMLではクロスプラットフォームの解決策は不可能だっただろうね。

キリストの兄弟よ、CoreMLはAppleがTensorflowを見て、共通の標準に協力せずに機能セットを欲しがったからこそ存在してるんだ。CoreMLが発表された時、TFは2年目で、かなり成功してた。今でもCoreMLはほとんど独自のBLASインターフェースに過ぎなくて、業界の支持はほぼゼロだよ。iOS開発者になると、こんなことになるのが恐ろしいね。

Appleのエコシステムには生成AIの部分がないよね?それがあったらすごいと思うし、Appleが似たようなものを出してくれることを本当に願ってる。あと、このチャット機能もすごく役立ちそうだね。それと、Swift Assistはどこに行ったんだ?

Tensorflow Liteは、これまでに数十億のデバイスでテストされてきたし、これはそれにメディアパイプを加えたリブランド/拡張に見えるね。Googleは5年以上もデバイス上でのMLに真剣に取り組んでるから、これを潰すことはないと思う。混乱を招くようなリブランドはあるかもしれないけどね :)

これはTensorFlow LiteとMediaPipeを新しい「ブランド」として再パッケージしたものだね。

これを動かしてるのと同じ技術?https://3d.kalidoface.com/ これがデバイス上で動くのはすごいね。商業用のモーションキャプチャーのオファーよりも優れてる。しかも、これが3年以上前に非推奨/サポート外とされてたのに、かなり成熟したソリューションなんだ。Googleは自社の技術を眠らせてるか、十分に宣伝してないね。

ちょっと触ってみたけど、私が得た情報では、これはPyTorchモデルを.tfliteモデルとして動かすための再アーキテクチャに過ぎないみたい。私が使っていたのはカスタムのfinbertモデルで、サイズの削減はほとんどなかったけど、うまく動いたよ。量子化されたバージョンに変換したけど、出力はあまり近くなかった。ドキュメントの記憶によると、標準のPyTorchモデル用に作られていて、「torchvision.models」みたいなものなら、もっといい結果が出るかも。まあ、これは約12ヶ月前の話だから、ラプターの群れを避けられたかもしれないね?

https://github.com/google-ai-edge/gallery これは、デバイス上でのML/GenAIのユースケースを紹介するギャラリーで、みんながローカルでモデルを試したり使ったりできるよ。

デバイス上でのMLの追加ソリューションを見ることができて本当に嬉しいよ。ただ、私のケースがサポートされてる特定のユースケースの一つでない限り、これを使うことはないと思う。[0] 新しいモデルを追加するのがどれくらい大変か全く分からないし。デバイス間での推論実行にはOnnxを使ってるけど、必要な重みをサポートするには十分低レベルだよ。多くのタスクにはtransformers.jsを使うこともできて、onnxをラップしてデコーディングみたいなことを処理してくれる(自分でビームサーチを実装するのが好きじゃない限りね)。上記の内容に相当するリンクは[1]で、もっと包括的だと思うよ。[0] https://ai.google.dev/edge/mediapipe/solutions/guide [1] https://github.com/huggingface/transformers.js-examples

これに関する経験がある人いる?カスタムのpytorchモデルをCoreMLにエクスポートするために、しばらく格闘してたんだけど、サポートされてないことやセグメンテーションフォルト、その他のバカげたエラーが多くてさ。誰かが「これもそんなに厄介じゃないよ」って言ってくれたら嬉しいな。

セットアップして、Pixel 8aでGemma3 1Bを試してみたんだけど、数分で終わったのは良かった。でも、クソだった。質問をほとんど理解できてなくて、答えようともしないし、返事もほとんど使い物にならない英語だった。聞いただけなのに、どうしてローカルでスマホで動くのかって。これじゃあモデルを完全に放棄するしかなかったよ。AIに対する期待は低めだと思ってたけど、それでもこれはひどすぎる。

これ、WebLLMでできるんじゃないの?

僕の意見としては、tensorflow liteとmediapipeは良かったけど、Googleはここ3年くらいで本当に放置してたね。mediapipeはこの3年であんまり意味のあるアップデートがなかったし、今のモデルは古かったり遅かったりする。TF LiteはNPU(AppleのANUみたいな)をサポートしてたけど、mediapipeは全然だった。ブランドも色々あってごちゃごちゃしてたし:MLKit、Firebase ML、TF lite、LiteRT。今はhugging face transformersやtransformers.jsライブラリを使ってonnxruntimeに乗っかるか、executorchが成熟するのを待った方がいいかも。最近、tensorflow liteやliteRTに公式にポートされたSOTAモデルは見たことないな:SAM2、EfficientSAM、EdgeSAM、DFINE、DEIM、Whisper、Lite-Whisper、Kokoro、DepthAnythingV2 - どれもデフォルトでpytorchだけど、ONNXやMLXにはまだ大きなコミュニティがあるよ。