【Phi-3.5-vision】ローカルLLMで画像の内容について答える

はじめに

GMO NIKKOの吉岡です。
前回の記事ではPhi-3-MediumをGPUで動かしてみましたが、今回はもう一つの気になるモデル、Phi-3-visionを紹介します。
新しいバージョン3.5が公開されているので、こちらを試してみます。
Phi-3.5-visionは画像を読み取り、質問から結果を返すLLMとなっています。

サーバー構成・準備

前回の記事でサーバー構成や準備を紹介したので、こちらを参照ください。

LLM

LLM:https://huggingface.co/microsoft/Phi-3.5-vision-instruct 4.15B

今回は画像を読み取り結果を返してくれるPhi-3.5-visionを使います。

git clone

フォルダを作成し、huggingfaceからcloneします。
大きなファイルがあるため、git lfsが必要です。

パッケージインストール

venvでPython環境を分けてインストールします。

サンプルコード実行

サンプルコードを実行します。
vi vision_3.5.py

として以下を保存します。

公式サンプルでは20枚の画像を読み込んでいますが、以下5枚の画像に変更して試してみます。
枚数が増えるほど使用するVRAMが増えるようです。

以下コマンドで実行します。

英語で回答が返ってきましたが、各スライドに対応してそうです。

 

 まとめ

複数の画像から文字を読み取り、質問された内容について回答してくれました。

今回の例では似ている図形の上にある文字は種類として認識されてそうです。

精度次第で様々なサービスに応用できそうですが、プロンプトを変更しても日本語での回答はできなそうなので、サービスで使う場合は結果を翻訳するか、別のLLMで要約すると良さそうです。

フリーでここまでできるのは本当に驚きですが、マルチモーダル対応のモデルもどんどん増えてきてるので、今後の発展が楽しみです。