Ovis (Open VISion) は、ビジュアルとテキストの埋め込みを構造的に調整するように設計された、新しいマルチモーダル大規模言語モデル (MLLM) アーキテクチャです。包括的な紹介については、Ovis の論文を参照してください。
Ovis は、Python 3.10、Torch 2.4.0、Transformers 4.46.2、および DeepSpeed 0.15.4 でテストされています。パッケージの依存関係の包括的なリストについては、 requirements.txt
ファイルを参照してください。微調整または推論の前に、次のように Ovis をインストールしてください。
git clone [email protected]:AIDC-AI/Ovis.git
conda create -n ovis python=3.10 -y
conda activate ovis
cd Ovis
pip install -r requirements.txt
pip install -e .
Ovis は、一般的な LLM を使用してインスタンス化できます。次の Ovis MLLM を提供します。
オービスMLLM | ViT | LLM | モデルの重み | デモ |
---|---|---|---|---|
Ovis1.6-Gemma2-27B | シグリップ-400M | Gemma2-27B-It | ハグフェイス | - |
Ovis1.6-Gemma2-9B | シグリップ-400M | Gemma2-9B-It | ハグフェイス | 空間 |
Ovis1.6-ラマ3.2-3B | シグリップ-400M | ラマ-3.2-3B-命令 | ハグフェイス | 空間 |
29Bパラメーターを備えたOvis1.6-Gemma2-27B は、OpenCompass ベンチマークで優れたパフォーマンスを達成し、トップレベルのオープンソース MLLM にランクされます。
わずか10BパラメータのOvis1.6-Gemma2-9Bは、 30Bパラメータ以内のオープンソース MLLM の中で OpenCompass ベンチマークをリードしています。
Ovis1.6-Llama3.2-3B は、 4Bパラメータの下でオープンソース MLLM の中で OpenCompass ベンチマークをリードし、Llama-3.2-11B-Vision-Instruct をも上回ります。
Ovis1.6-Gemma2-9B の微調整は ms-swift でサポートされています。
ovis/serve/runner.py
で推論ラッパーを提供しており、次のように使用できます。
from PIL import Image
from ovis . serve . runner import RunnerArguments , OvisRunner
image = Image . open ( 'IMAGE_PATH' )
text = 'PROMPT'
runner_args = RunnerArguments ( model_path = 'MODEL_PATH' )
runner = OvisRunner ( runner_args )
generation = runner . run ([ image , text ])
Gradio をベースにした Ovis には、Web ユーザー インターフェイスからもアクセスできます。
python ovis/serve/server.py --model_path MODEL_PATH --port PORT
AutoGPTQ を使用して Ovis1.6 を量子化しました。独自の量子化バージョンの実行と作成の詳細については、それぞれの Huggingface モデル カード: Ovis1.6-Gemma2-9B-GPTQ-Int4 および Ovis1.6-Llama3.2-3B-GPTQ-Int4 を参照してください。量子化された Ovis1.6 は、量子化されていないものと同等のパフォーマンスを維持しながら、必要な GPU メモリの量が少なくなります。
ベンチマークパフォーマンス:
GPU メモリ使用量 (max_partition=9):
Ovis が役立つと思われる場合は、論文を引用してください
@article{lu2024ovis,
title={Ovis: Structural Embedding Alignment for Multimodal Large Language Model},
author={Shiyin Lu and Yang Li and Qing-Guo Chen and Zhao Xu and Weihua Luo and Kaifu Zhang and Han-Jia Ye},
year={2024},
journal={arXiv:2405.20797}
}
この作品は MarcoVL チームによる共同作業です。また、私たちのチームによる次の MLLM 論文へのリンクも提供したいと考えています。
このプロジェクトは、Apache License、バージョン 2.0 (SPDX-License-Identifier: Apache-2.0) に基づいてライセンスされています。
トレーニング プロセス中にコンプライアンス チェック アルゴリズムを使用し、トレーニングされたモデルのコンプライアンスを最大限に確保しました。データの複雑さと言語モデルの使用シナリオの多様性のため、モデルに著作権の問題や不適切なコンテンツが完全に含まれていないことを保証することはできません。あなたの権利が侵害されている、または不適切なコンテンツが生成されていると思われる場合は、当社までご連絡ください。速やかに問題に対処いたします。