マルチモーダルAIであるFuyu-8Bのインストール

マルチモーダルAIであるFuyu-8Bのインストール ツール

「マルチモーダルAIをローカルで動かしたい」
「GPT-4Vのように画像を解析できるAIをシステムに組み込みたい」

このような場合には、Fuyu-8Bがオススメです。
この記事では、マルチモーダルAIのモデルであるFuyu-8Bについて説明しています。

本記事の内容

  • Fuyu-8Bとは?
  • Fuyu-8Bの利用方法
  • Fuyu-8Bの動作確認

それでは、上記に沿って解説していきます。

Fuyu-8Bとは?

Fuyu-8Bとは、Adept AI社によってトレーニングされたマルチモーダルモデルです。
Fuyu-8Bは、Adept AI社が開発しているマルチモーダルモデルFuyuの小型版になります。

Fuyuは、GPT-4Vと同じようなモノだと考えればよいでしょう。
GPT-4Vと同じように画像を解析してくれます。

また、Fuyu-8BのライセンスはCC-BY-NC-4.0になります。
簡単に言うと、営利目的が禁止されたオープンソースです。
Fuyu-8Bでお金儲けを考えなければ、自由に使って良いと言えます。

このFuyu-8Bは、以下のページで試すことができます。
https://huggingface.co/spaces/adept/fuyu-8b-demo

ただ、私がアクセスしたときはサーバーが混んでいました。

以上、Fuyu-8Bについて説明しました。
次は、Fuyu-8Bの利用方法を説明します。

Fuyu-8Bの利用方法

adept/fuyu-8b · Hugging Face
We’re on a journey to advance and democratize artificial intelligence through open source and open science.

Fuyu-8Bの利用方法は、上記ページで記載されています。

正直、これでは不便過ぎます。
システムに組み込むなら、コードの表示で十分でしょうけど。

そうじゃない場合は、Hugging Face上のデモのようなツールが必要です。

これのインストール方法は、簡単です。
まず、仮想環境を用意します。

この環境にPyTorchをインストール。
2.0系を前提にしているようです。

最新版をインストールしても問題ありません。
「cu121」部分は、各自の環境に合わせてください。

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

次のHugging Faceから、デモのソースを丸ごダウンロードします。

git clone https://huggingface.co/spaces/adept/fuyu-8b-demo

ダウンロードできたら、リポジトリルートに移動します。

cd fuyu-8b-demo

リポジトリルートには、以下のファイルが存在しています。

requirements.txt

git+https://github.com/huggingface/transformers.git
accelerate
torch==2.0.1

PyTorchはインストール済みのため、「torch」を無効にします。
そして、Gradioを追記。

変更後requirements.txt

git+https://github.com/huggingface/transformers.git
accelerate
#torch==2.0.1
gradio

requirements.txtを変更できたら、次のコマンドを実行します。

pip install -r requirements.txt

インストールが終わったら、デモのインストールは完了です。

以上、Fuyu-8Bの利用方法を説明しました。
次は、Fuyu-8Bの動作確認を説明します。

Fuyu-8Bの動作確認

リポジトリルートで、次のコマンドを実行します。

python app.py

初回起動時は、必要なファイルのダウンロード処理が始まります。
そこそこ時間がかかります。

それもそのはずで、全部で17.5GBのサイズになります。
GPUメモリがこれ以上ないと厳しいのかもしれません。
(検証は24GBのGeForce RTX 3090搭載マシンで実施)

起動は、次のように表示されたら成功です。

Running on local URL:  http://0.0.0.0:7860

To create a public link, set `share=True` in `launch()`.

Windowsの場合、「http://0.0.0.0:7860」にアクセスするとエラーになります。

「0.0.0.0」の部分を「127.0.0.1」に置き換える必要があります。
つまり、「http://127.0.0.1:7860」にアクセスすればOKということです。

ただ、毎回これを置き換えるのは面倒です。
その場合は、app.pyの次の部分を変更します。

次のように変更するだけです。

利用方法は、デモと全く同じです。
機能的には、以下の3つが用意されています。

ここでは、デフォルトの「Visual Question Answering」を試します。
画像をアップロードして、ボタンをクリック。

質問を入れなければ、画像の内容をテキストにしてくれます。
質問を入れたら、その質問の回答を表示するようになっています。

Whet is an astronaut riding ?

この質問に対しては、次のように表示されます。

以上、Fuyu-8Bの動作確認を説明しました。

タイトルとURLをコピーしました