🚀 LLaVA-Phiモデル
これは、MicrosoftのPhi-1.5アーキテクチャをベースに、画像処理機能としてCLIPを備えたビジョン言語モデルです。
🚀 クイックスタート
このモデルは、画像からテキストを生成するために使用できます。以下のコード例を参考に、モデルを使い始めましょう。
✨ 主な機能
- Microsoft Phi-1.5をベースモデルとして使用。
- CLIP ViT-B/32をビジョンエンコーダーとして使用。
- QLoRAによるファインチューニングを行っています。
- Instruct 150Kデータセットで訓練されています。
📦 インストール
このREADMEには具体的なインストール手順が記載されていないため、このセクションは省略されます。
💻 使用例
基本的な使用法
from transformers import AutoModelForCausalLM, AutoTokenizer, AutoProcessor
import torch
from PIL import Image
model = AutoModelForCausalLM.from_pretrained("sagar007/Lava_phi")
tokenizer = AutoTokenizer.from_pretrained("sagar007/Lava_phi")
processor = AutoProcessor.from_pretrained("openai/clip-vit-base-patch32")
def generate_text(prompt):
inputs = tokenizer(f"human: {prompt}\ngpt:", return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=128)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
def process_image_and_prompt(image_path, prompt):
image = Image.open(image_path)
image_tensor = processor(images=image, return_tensors="pt").pixel_values
inputs = tokenizer(f"human: <image>\n{prompt}\ngpt:", return_tensors="pt")
outputs = model.generate(
input_ids=inputs["input_ids"],
attention_mask=inputs["attention_mask"],
images=image_tensor,
max_new_tokens=128
)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
高度な使用法
このREADMEには高度な使用法に関する具体的なコード例が記載されていないため、このセクションは省略されます。
📚 ドキュメント
モデルの詳細
属性 |
详情 |
ベースモデル |
Microsoft Phi-1.5 |
ビジョンエンコーダー |
CLIP ViT-B/32 |
訓練方法 |
QLoRAファインチューニング |
訓練データセット |
Instruct 150K |
訓練の詳細
- QLoRA(Quantized Low-Rank Adaptation)を使用して訓練されています。
- 効率化のために4-bit量子化を行っています。
- 勾配チェックポイントを有効にしています。
- 混合精度訓練(bfloat16)を行っています。
🔧 技術詳細
このセクションでは、モデルの訓練に関する技術的な詳細が提供されています。QLoRAを用いたファインチューニング、4-bit量子化、勾配チェックポイントの有効化、混合精度訓練(bfloat16)などの手法が用いられています。
📄 ライセンス
このモデルはMITライセンスの下で提供されています。
引用
@software{llava_phi_2024,
author = {sagar007},
title = {LLaVA-Phi: Vision-Language Model},
year = {2024},
publisher = {Hugging Face},
url = {https://huggingface.co/sagar007/Lava_phi}
}