見出し画像

NVIDIA Jetson AGX Orin Developer Kitで画像分析が可能なLLMのLLaVA1.5-13bを実装する方法

最終更新日:2024年3月11日

LLaVA(ラバ)とは

LLaVA(ラバ)は、マルチモーダルなビジョン/言語モデルで、画像と言語の情報を組み合わせて処理することができる人気のあるモデルです。以下に、LLaVAの主な特徴をわかりやすく説明します。

ちなみに、マルチモーダルとは、異なる種類の情報(LLaVAでは画像と言語)をまとめて扱うAIのことです。

  • LLaVAは画像と言語の双方の情報を取り入れることができるマルチモーダルなモデルです。つまり、画像の視覚情報と言語の意味情報を統合的に処理し、両方の情報を活用します。

  • モデルはCLIP(Contrastive Language-Image Pre-training)ビジョンエンコーダを使用しています。これにより、画像を意味的な埋め込み空間に変換し、言語モデルと統合することができます。

  • LLaVAは、画像プロンプトやクエリに対して質問に回答する能力があります。例えば、与えられた画像や言葉に基づいて情報を生成し、質問に答えることができます。

実際にどのように動作するのかを紹介します。以下の画像をLLaVAに入力して、これは何ですか?と聞いてみます。

>> PROMPT: what is this?

┌─────────────────┬─────────────────────────────────────────┐
│ clip_time       │ 0.30493707200002973                     │
├─────────────────┼─────────────────────────────────────────┤
│ clip_rate       │ 3.2793651275037576                      │
├─────────────────┼─────────────────────────────────────────┤
│ preprocess_time │ 0.2594705840001552                      │
├─────────────────┼─────────────────────────────────────────┤
│ encode_time     │ 0.045466487999874516                    │
├─────────────────┼─────────────────────────────────────────┤
│ input_shape     │ torch.Size([1, 3, 336, 336]) -> 336x336 │
├─────────────────┼─────────────────────────────────────────┤
│ output_shape    │ torch.Size([1, 577, 1024])              │
└─────────────────┴─────────────────────────────────────────┘

This is a picture of a panda bear in a zoo enclosure. The panda bear is sitting on a log, and there is a waterfall in the enclosure. The enclosure is designed to resemble a forest, with trees and a rock wall. The panda bear is the main focus of the image, and it appears to be enjoying its time in the enclosure.</s>

結果は英語で出力されます。翻訳をすると、「これは動物園の囲いにいるパンダの写真です。 パンダは丸太の上に座っていて、囲いの中には滝があります。 囲いは木々や岩壁などで森をイメージしてデザインされています。 画像の主な焦点はパンダであり、 檻の中で楽しく過ごしているように見えます。」と回答がありました。

写真左上の反射しているところが滝に見えてしまったようです。このように入力する写真の品質には配慮が必要です。

日本語で質問をすれば、日本語で回答がきますが、文字化けする文字があるのでお勧めしません。

では、実際に皆さんも試してみましょう。


環境

本記事を参考に、LLaVAを動作させるには以下のものが必要です。

  • NVIDIA Jetson AGX Orin Developer Kit (64GB)

  • JetPack5.1.1 (※ NVIDIA Jetson AGX Orin Developer KitはJetPack5.1.1以上を推奨)

  • 20Gbyte以上のディスク空き容量(内蔵EMMCを使用するのではなく、外付けのSSDにJetPackをインストールすることを推奨)

  • USBマウス(※)

  • USBキーボード(※)

  • インターネット接続

※ SSH等でJetson Orinへリモートログインする場合はUSBマウスやUSBキーボードは必須ではありません。

ここから先は

4,946字 / 2画像

¥ 600

この記事が気に入ったらサポートをしてみませんか?