🚀 Heron-NVILA-Lite-2B
Heron-NVILA-Lite-2Bは、NVILA-Liteアーキテクチャに基づいて、日本語用に訓練されたビジョン言語モデルです。このモデルは、画像とテキストを入力として受け取り、適切なテキスト出力を生成することができ、多様なマルチモーダルタスクに対応しています。
🚀 クイックスタート
Heron-NVILA-Lite-2Bを使用するには、まず必要なライブラリをインストールする必要があります。以下のコマンドを実行してください。
pip install transformers==4.45.0 accelerate opencv-python torchvision einops pillow
pip install git+https://github.com/bfshi/scaling_on_scales.git
✨ 主な機能
- 多言語対応:日本語と英語をサポートしています。
- マルチモーダル処理:画像とテキストを同時に扱うことができ、画像に関する質問に回答したり、画像の説明を生成したりすることが可能です。
📦 インストール
pip install transformers==4.45.0 accelerate opencv-python torchvision einops pillow
pip install git+https://github.com/bfshi/scaling_on_scales.git
💻 使用例
基本的な使用法
from transformers import AutoConfig, AutoModel
model_path = "turing-motors/Heron-NVILA-Lite-2B"
config = AutoConfig.from_pretrained(model_path, trust_remote_code=True)
model = AutoModel.from_config(config, trust_remote_code=True, device_map="auto")
model = AutoModel.from_pretrained(model_path, trust_remote_code=True, device_map="auto")
print(model.tokenizer.chat_template)
response = model.generate_content(["こんにちは"])
print(response)
print("---" * 40)
高度な使用法
from PIL import Image
import requests
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw).convert("RGB")
response = model.generate_content([image, "画像を説明してください。"])
print(response)
print("---" * 40)
from PIL import Image
import requests
from transformers import GenerationConfig
generation_config = {
"max_new_tokens": 512,
"temperature": 0.5,
"do_sample": True,
}
generation_config = GenerationConfig(**generation_config)
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw).convert("RGB")
response = model.generate_content(
[image, "画像を説明してください。"],
generation_config=generation_config
)
print(response)
print("---" * 40)
from PIL import Image
import requests
url_list = [
"https://images.unsplash.com/photo-1694831404826-3400c48c188d?q=80&w=2070&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D",
"https://images.unsplash.com/photo-1693240876439-473af88b4ed7?q=80&w=1974&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"
]
images = [
Image.open(requests.get(url, stream=True).raw).convert("RGB") for url in url_list
]
response = model.generate_content([
images[0],
"これは日本の画像です",
images[1],
"これはオーストリアの画像です",
"各画像の違いを説明して"])
print(response)
print("---" * 40)
📚 ドキュメント
モデル概要
訓練概要
段階 |
訓練内容 |
データソース |
サンプル数 |
段階1 |
プロジェクター |
Japanese image text pairs, LLaVA-Pretrain |
1.1M |
段階2 |
プロジェクター、LLM |
Filtered MOMIJI (CC-MAIN-2024-46, CC-MAIN-2024-51, CC-MAIN-2025-05) Japanese image text pairs (subset), Japanese interleaved data (subset), mmc4-core (subset), coyo-700m (subset), wikipedia_ja, llava_pretrain_ja, stair_captions |
13M、20M |
段階3 |
ビジョンエンコーダ、プロジェクター、LLM |
llava-instruct-v1_5-en-subset-358k, llava-instruct-ja, japanese-photos-conv, ja-vg-vqa, synthdog-ja (subset), ai2d, synthdog-en, sherlock |
1.1M |
評価
この評価では、llm-jp-eval-mmを使用しました。Heron-NVILA-LiteおよびSarashina2-Vision-14B以外のモデルのスコアは、2025年3月時点のllm-jp-eval-mm leaderboardとAsagi websiteから取得しました。Heron-NVILA-LiteとSarashina2-Vision-14Bは、"gpt-4o-2024-05-13"を使用したllm-as-a-judgeで評価しました。Sarashina2-Vision-14Bは、公式ブログで"gpt-4o-2024-08-06"を使用して評価されています。評価条件が異なるため、Sarashina2-Vision-14Bの結果は参考程度に扱ってください。
リスクと制限
このモデルは実験的なものであり、倫理的な遵守や法的基準について十分に調整されていません。敏感なアプリケーションでの使用には注意が必要です。
📄 ライセンス
謝辞
このモデルは、新エネルギー・産業技術総合開発機構(NEDO)が助成するプロジェクトJPNP20017の成果に基づいています。
以下のオープンソースリポジトリの使用に感謝申し上げます。