1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【AFM3】iPhoneだけで動くリアルタイムVLMアプリを作ってみた【On-Device】

1
Last updated at Posted at 2026-10-18

1. はじめに

AppleのオンデバイスAI「Apple Foundation Models(AFM)」を使って、iPhoneだけでリアルタイムに画像を解析するVLMアプリを作ってみました。

iPhoneのカメラに映っているものをAIがリアルタイムに解析し、その内容を自然言語で説明してくれます。画像の解析から文章の生成まで、すべてiPhoneの中で完結します。

実際に動いている様子を見ていただいた方が早いと思うので、まずはこちらをご覧ください。

4.gif

※ iPhone 18 Proで実行。動画は等倍速で、推論の様子が分かるようにしています。

これ、クラウド上のAIを呼び出しているわけではなく、iPhone内のモデルだけで動いています。

もちろんクラウドの大規模VLMと比べれば性能面での制約はありますが、オンデバイスでここまで動いてくれるのは、個人的には結構驚きでした。

ちなみに、アプリはApp Storeで公開しています。
(iPadやAppleシリコン搭載Macにも対応しています)

Elucidator|AI音声解説カメラ - App Store

この記事では、作ったアプリを簡単に紹介しつつ、AFMのメリットや実際に使ってみた感想、さらにiPhone 18 ProとiPhone 15 Proでの軽い比較結果などを紹介していこうと思います。

2. 実装した主な機能

2.1. カメラ映像をリアルタイムにAI解析

基本的な機能は、カメラに映っているものを、Appleが開発したAIが繰り返し解析をし、その結果を画面に表示するというものです。

厳密には動画をフレーム単位ですべて解析しているわけではなく、カメラから直前の画像を取得して、VLMに渡す仕組みになっています。

解析内容はプロンプトで自由に指定できるので、単純に「何が映っているか」を説明させるだけでなく、特定の物体を探したり、文字を読ませたりと、いろいろな用途に使えます。

出力される文章を合成音声で読ませることもできます。

同じカメラ映像でも、プロンプトを変えるだけで着目する対象が変わるので、意外といろいろな使い道がありそうですね。

2.2. Webカメラ・RTSPカメラにも対応

iPhoneの内蔵カメラだけで終わるのも少し物足りなかったので、外部カメラにも対応させてみました。
現在は、対応するiPadに接続したUVC対応Webカメラや、RTSP対応のネットワークカメラの映像も利用できるようにしています。

例えば、RTSP対応のIPカメラがあれば、その映像をiPhoneで受信して、端末内のAFMで解析できます。
カメラとAIの推論処理を分けているため、映像の入力元が変わっても、基本的には同じ仕組みで解析できるようにしています。

ネットワークカメラとVLMを組み合わせると、ちょっとした監視や状況把握などにも応用できそうです。

2.3. 外部システムとの連携

せっかくAIが解析してくれるなら、その結果をアプリの外でも使いたいなとも思い、外部のプログラムから推論結果を利用できる機能も追加しました。

一つ目が、ローカルGET APIです。

同じネットワーク内のPCなどからHTTPリクエストを送ると、直近の推論結果や解析に使った画像、アプリの状態などを取得できます。

例えば、Pythonから推論結果を取得して、別の処理につなげるといった使い方ができます。

加えて、curl通知機能も実装しました。

こちらは推論が完了したタイミングで、指定したエンドポイントにHTTPリクエストを送信する仕組みです。
送信する内容やリクエストの形式はcurl形式のコマンドで設定できるので、Webhookのような使い方もできます。

GET APIは外部から結果を取りに行く方式、curl通知はアプリ側から結果を送る方式ですね。
両方あると、ほかのシステムとの連携も結構柔軟にできそうです。

もちろん、AIによる画像解析そのものは引き続き端末内で行われます。
(外部通知によるデータ送信は、ユーザーが明示的に有効化した場合のみ動作)

3. Apple Foundation Models(AFM)について

3.1. AFMとは

ここで、今回利用したApple Foundation Modelsについて簡単に紹介します。

AFMは、Apple Intelligenceの基盤となるAIモデル群です。
開発者はFoundation Modelsフレームワークを通じて、SwiftからAppleのAIモデルを利用できます。

そしてiOS 27では、テキストだけでなく画像を含むマルチモーダル入力にも対応しています。
つまり、iPhoneが標準で持っているAIモデルを、アプリからVLMとして利用できるわけです。

Appleが2026年に発表した第3世代のAFMには、オンデバイス向けとして次のようなモデルがあります。

モデル 概要
AFM 3 Core 約30億パラメータのDenseモデル
AFM 3 Core Advanced 約200億パラメータの疎なモデル。リクエストに応じて約10億〜40億パラメータを活性化

Core Advancedは、より高性能なAppleシリコン向けに最適化されたモデルらしいです。

ただし、開発したアプリではこれらのモデルをアプリ側で直接選択しているわけではありません。OSが提供するモデルを利用しており、使用されるモデルは端末やOSによって異なります。

モデルの詳細については、Appleの公式資料が参考になります。

3.2. AFMはどの端末で使える?

AFMはすべてのiPhoneで使えるわけではなく、Apple Intelligenceに対応した端末が必要です。

さらに、iOS 27では端末の性能によって、利用できるモデルも異なります。

ざっくりまとめると、以下のようになります。

対象端末 AFMモデル
iPhone 18 Pro系、iPhone Duo、iPhone 17 Pro系、iPhone Air AFM 3 Core Advanced対応
iPhone 15 Pro系、iPhone 16シリーズ、iPhone 17・17e AFM 3 Core
iPhone 15・15 Plus、iPhone 14シリーズ以前 利用不可
iPad・Mac(Apple Intelligence対応機種) チップ・メモリ容量によって異なる

※ Core Advancedは、iPadではM4以降かつ12GB以上、MacではM3以降かつ12GB以上のメモリを搭載した機種などで利用できます。

つまり、Apple Intelligenceに対応していても、必ずしもCore Advancedが使えるわけではないんですよね。

また、VLM機能にはiOS 27・iPadOS 27・macOS 27以降の対応OSが必要で、Apple Intelligenceも有効になっている必要があります。

詳しい対応機種については、Appleの公式案内を参照してください。

3.3. AFMを利用するメリット

AFMを実際に使ってみて、これは結構いいなと思った点がいくつかあります。

① アプリの容量を小さくできる

個人的に、これはかなり大きなメリットだと思っています。
通常、オンデバイスでLLMやVLMを動かそうとすると、モデルファイルを用意する必要があります。

最近のモデルは小型化が進んでいるとはいえ、数GB程度のモデルも珍しくありません。
それをアプリに丸ごと同梱するとなると、アプリの容量がとんでもないことになってしまいますよね。

一方、AFMではOS側が管理するモデルを利用できるので、アプリにモデルファイルを同梱する必要がありません。

では、今回作ったアプリのサイズはどのくらいなのかというと……
なんと、10.3 MB! (記事執筆時点)

VLMを利用しているアプリなのに、このサイズで済んでしまうんですよね。

もちろん、10.3 MBというのはアプリ本体のサイズであって、OS側が管理するAIモデルの容量は含まれていません。
それでも、開発者がモデルの配布や更新を管理しなくてよいというのは、かなりありがたい仕組みだと思います。

② 比較的簡単にAI機能を実装できる

これも大きなメリットです。

Foundation Modelsフレームワークが用意されているので、Swiftからモデルを呼び出し、プロンプトや画像を渡すことができます。
モデルのロード処理や推論エンジンを一から実装する必要がありません。

特に個人開発では、この手軽さは魅力的ですよね。

もちろん、アプリとして完成させるには、カメラの制御や推論処理の管理、エラー処理、UIの実装など、ほかにもやることはたくさんあります。
それでも、AIの実行基盤を自分で用意しなくてよいというだけで、開発のハードルはかなり下がると感じました。

③ オフラインで動作し、推論APIの利用料金もかからない

オンデバイスなので、モデルの準備さえ済んでいれば、インターネットに接続していない環境でも推論できます。

しかも、自前の推論サーバーも必要ありません。

クラウドのAI APIを利用すると、一般的には入力・出力トークンなどに応じて料金が発生します。
個人開発でこれが地味に悩ましいところなんですよね。
仮に1回の推論が安くても、アプリの利用者が増えたり、カメラ映像を何度も解析したりすると、それなりのコストになりかねません。

その点、AFMのオンデバイス推論であれば、推論回数に応じたクラウドAPI料金は発生しません。
これはかなり魅力的です。

もちろん、その分iPhone側の計算資源を使うので、消費電力や発熱などは考える必要があります。

④ OSのアップデートでモデルが更新される

もう一つ面白いのが、OSのアップデートによってAIモデル自体が更新されることです。

Appleの公式資料によると、iOS 27ではオンデバイスモデルが更新され、指示への追従性能などが改善されているとのこと。
つまり、アプリ側で新しいモデルを配布しなくても、OSのアップデートによってAIの性能が改善される可能性があるわけです。

これは開発者としては嬉しいですよね。

ただし、モデルが変わるということは、同じプロンプトでも出力結果が変わる可能性があるということです。

アプリ側で何も変更していないのに挙動が変わる可能性もあるので、必ずしもメリットだけとは言えませんが、何もモデルに手を加えなくても精度が上がっていくのは良いですね。

3.4. AFMの制約・注意点

ここまでメリットを紹介してきましたが、もちろん制約もあります。

まず、利用できる端末が限られていることです。

VLM機能を使うにはiOS 27以降と、Apple Foundation Modelsに対応した端末が必要です。Apple Intelligenceも有効にしておく必要があります。
iOS 27はリリースからまだ約1か月なので、対応OSが普及するまでにはもう少し時間がかかりそうです。

他には、現在のAPIでは、利用するモデルを自由に切り替えることができません。
OS側が提供するモデルをそのまま利用する形です。
このあたりは、もう少し開発者側で選択できるようになると嬉しいところです。

それから、もう一つ気になったのが Guardrails(安全性の制御) です。

AFMには安全性のための仕組みがあり、入力内容によってはモデルが応答を拒否することがあります。
これが、一般的には問題のない画像でも発生することがあるんですよね……。

開発したアプリでは、次の設定を利用しています。
guardrails: .permissiveContentTransformations
これは、文字列生成に対するフレームワーク側の一部の安全性チェックを緩和する設定です。

ただし、セーフティを完全に無効化できるわけではありません。モデル自体が応答を拒否することもあります。
このあたりはアプリ側で完全に制御できないため、対応がなかなか難しいところです。

詳しくはAppleの公式ドキュメントを参照してみてください。

4. AFMを実際に使ってみた

4.1. iPhone 18 ProとiPhone 15 Proで比較してみた

さて、せっかくなので、手元にある iPhone 18 ProとiPhone 15 Pro の2台で、実際の推論性能を比較してみることにしました。

この2台は搭載チップが違いますし、利用されるAFMモデルも異なる可能性があります。

果たしてどのくらい差が出るのでしょうか。
まず、今回の比較環境はこちらです。

項目 iPhone 18 Pro iPhone 15 Pro
SoC A20 Pro A17 Pro
RAM 12 GB 8 GB
OS iOS 27.0.1 iOS 27.0.1
AFMモデル AFM 3 Core Advanced AFM 3 Core
入力画像 1枚 1枚
プロンプト 現在の状況を説明してください 現在の状況を説明してください

できるだけ条件を揃えた状態で、両端末の推論動作を比較してみました。
(開発版ビルドを使い、同じ動画ファイルを流し込んで解析させています)

8.gif

左がiPhone 18 Pro (AFM 3 Core Advanced) の結果
右がiPhone 15 Pro (AFM 3 Core) の結果
※ 両端末とも等倍速で再生しています。

推論時間についても厳密ではありませんが軽く計測しました。

計測項目 iPhone 18 Pro iPhone 15 Pro
推論開始から最初の文字が表示されるまで 約0.40~0.50秒 約1.50~2.00秒
生成速度(tokens/s) 約60~100tok/s 約20~70tok/s

計測はあくまでおおよそであり、発熱などの端末の状態によって結構ブレがありました。

また、生成される文章の精度については、主観的な評価ではありますが、あまり違いはないのかなという所感です。
VLMの出力は毎回完全に一致するわけではないので、同じ画像を入力しても、文章の内容や表現が変わることがありますが、iPhone18Pro(AFM3CoreAdvanced)ではより詳細に状況を説明し、iPhone15Pro(AFM3Core)では必要最低限の出力をしている感じです。

iOS端末をお持ちの方は、ぜひご自身の端末でお試しください。
(現在Advanced対応iPhoneは、iPhone Air、iPhone 17 Pro系、iPhone 18 Pro系、iPhone Duo)

(なお、いずれもアプリ上で観測した値であり、モデル単体の推論性能を測定したものではありません。)

4.2. AFMでこんな機能も作ってみた

ここまでVLMを中心に紹介してきましたが、ほかにもAFMを使った機能をいくつか作ってみました。

せっかく使えるモデルがあるのなら、ほかのところでも活用したくなりますよね。
ということで、アプリの設定を補助するような機能も追加しています。

① AI生成機能

一つ目は、AIプロファイルの名前やプロンプトを自動生成する機能です。

例えば、ユーザーが「どんな解析をしたいか」を簡単に入力すると、それに合ったプロンプトをAIが作成してくれます。

また、すでに入力しているプロンプトを改善したり、プロンプトの内容から適切なプロファイル名を考えてもらったりすることもできます。

image.png

こちらは画像を使わない普通のテキスト生成ですが、同じAFMを利用しています。
プロンプトを自分で考えるのは意外と面倒だったりするので、こういう細かなところでAIを使えるのは便利かなと思います。

② AI読み取り機能

もう一つが、RTSPカメラの接続情報を画像から読み取る機能です。

RTSPカメラを設定する際には、接続先のURLやユーザー名、パスワードなどを入力する必要があります。
これらの情報が説明書や設定画面に記載されている場合、カメラで撮影するだけでAIが情報を抽出してくれるようにしました。

image.png

単純な文字認識だけでなく、画像内の情報からRTSP URLや認証情報を整理し、接続設定に反映できるようにしています。

こういう用途だと、VLMの強みが結構生きる気がします。
もちろん、URLや認証情報の読み間違いは接続失敗につながるので、抽出結果を確認できるようにしています。

VLMによる画像解析がメインのアプリですが、このようにちょっとした入力補助や文章生成にもAFMを使えるのは面白いところです。

4.3. 気になったところ

ここまで紹介してきたように、AFMはかなり便利なのですが、実際に使っていると、もう少し改善してほしいところも出てきます。

個人的に一番気になるのは、やはり画像の認識精度です。
ある程度単純なシーンであれば、何が映っているのかを自然な文章で説明してくれます。

一方で、細かい文字や複雑な位置関係、複数の物体が重なっているような場面では、正しく認識できないこともあります。
また、実際には写っていないものを説明してしまう、いわゆるハルシネーションも発生します。
このあたりは、まだクラウドの高性能なVLMほどの精度を期待するのは難しいのかなと感じています。

また、先ほど紹介したGuardrailsやモデル選択の制限など、アプリ側ではどうにもならない部分もあります。
とはいえ、iPhoneの中だけで動いていることを考えると、現状でもかなり健闘しているのではないでしょうか。

個人的には、今後もう少し複雑なシーンでも安定して正確な結果を返してくれるようになると嬉しいです。

5. 今後やりたいこと

今後追加してみたい機能の一つが、RAG(Retrieval-Augmented Generation) への対応です。

現在のアプリは、基本的にはカメラ画像とプロンプトをもとに推論しています。
ただ、特定の専門分野や独自の知識にも対応できるようにしたいですよね。(独自ドメインへの対応)

例えば、特定の機械の操作方法や、独自の設備の名称などは、一般的なVLMが最初から知っているとは限りません。

そこで、ユーザーが用意した資料や独自の知識を検索し、その内容をVLMの推論に組み合わせられる仕組みが必要になります。
そうすれば、例えば次のような使い方もできそうです。

  • 機器のマニュアルを参照しながら、カメラに映った操作部分を説明する
  • 特定の業務や用途に合わせた知識を使って画像を解析する
  • 美術館のパンフレットPDFを事前に読み込んで、美術品を解説してもらう
    ...などなど

一度軽く実装したのですが、とても世に出せるような精度にはなりませんでした...(実装方法が悪かったのかもですが)

6. おわりに

今回は、Apple Foundation Modelsを使って開発したリアルタイムVLMアプリ「Elucidator」を紹介しました。

実際に作ってみて一番印象的だったのは、iPhoneの中だけで、思っていた以上にしっかり画像を理解してくれるということです。
しかも、モデルをアプリに同梱する必要もなく、推論用サーバーも用意しなくてよい。
個人開発でここまで手軽にVLMを扱えるのは、なかなかありがたい時代になったなと思います。

もちろん、まだまだ精度面やモデルの制約など、改善してほしいところはあります。
それでも、オンデバイスAIの可能性を感じられる技術でした。

最後に、今回紹介したアプリはApp Storeで公開しています。
無料でも試せるので、興味があればぜひ実際に動かしてみてください!

Elucidator|AI音声解説カメラ - App Store

※ AppleIntelligence(Apple Foundation Models)に対応した端末とiOS27以上が必要です。また、一部機能には広告視聴またはアプリ内課金による機能解放が必要です。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?