7
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

マルチモーダルのRAGを試してみました(GPT-4v+Llamaindex)

Posted at

最近LlamaindexがマルチモーダルのRAG方法を公開しました。(MultiModalVectorStoreIndex)

私も昨日試してみました。
このRAGの中身は、画像データとテキストデータをそれぞれベクトルストアを作成し、マルチモーダルモデルで両方から情報を取って、回答を生成する仕組みです。(イメージとしては以下のような感じです。langchainのMultiVectorRetrieverとほぼ一緒です。)

001.jpg

今回の試しでは、GPT-4Vと、Qdrant(テキストベクトルストア用)、CLIP(画像ベクトルストア用)を使いました。

1.GPT-4Vテスト

まずはGPT-4Vが画像をどの程度理解できるかを試してみました。
テストに使用したのは、トヨタの"アルファード"というモデルの車の写真です。外装、内装、あとスペックの写真をホームページから取って、モデルに入れてみました。

1-21-1.png

それで、モデルに"画像の内容を簡単な日本語で説明してください。"という質問を試しました。
回答としては特に問題ないですね。

1-21-2.png

2.マルチモーダルベクトルストアの作成

次に、RAGで使用するためのベクトルストアを作成します。
今回試したい質問は"アルファード"に関する質問なので、
画像のデータはwikipediaのAPI経由で"トヨタ・アルファード"の車写真を取ってきました。(ダウンロードする写真枚数が多くて、APIリクエストの制限を超えてしまい、途中で切れましたが、30枚ほどはダウンロードできました。)
テキストの情報はwikipediaの内容+ホームページの概要pdfです。

3.性能検証

色々試してベクトルストアができました。さっそく、"アルファードの内装特徴教えて"という質問を聞いてました。(回答は以下)

1-21-4.png

回答のテキスト部分はpdfの情報を使って、特に問題なかったですが、画像の部分では、"提供された画像にはアルファードの内装の特徴に関する情報は含まれていません。"となっていました。確かに、返された写真を見ると、内装の写真ではないため、該当する情報がないという回答は間違いないですが、なぜ内装の写真をうまく検索できないのはわからなかったです。画像のRetrieverモデルはそこまで性能低いかなと思いました。
そこで、質問の仕方を何度も変えて試しましたが、内装の写真はずっと出てこなくて、もしかしてwikipediaにはアルファードの内装の写真がないのではないかと疑い、実際にWikipediaで確認したところ、本当に内装の写真は掲載されていませんでした。そもそもベクトルストア内には内装の写真ないので、いくら調べても内装の写真は出てこないですね。

そこで、手動で数枚程度アルファードの内装写真をダウンロードしてベクトルストアに読み込ませました。
再度同じ質問投げてみたら、やっと内装の写真が返してくれました。(右側の画像は内装かどうかちょっと微妙なんですが、)
テキストの部分も、"提供された画像にアルファードの内装の特徴に関する情報は含まれていません"という回答はなく、正常に回答が生成されました。

1-21-5.png

今度はOSSのマルチモーダルモデル(llavaとか)で試してみたいと思います。

参考:

7
8
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
7
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?