语言:
- 英文
标签:
- 视觉语言
- phi
- llava
- clip
- qlora
- 多模态
许可证: mit
数据集:
- laion/instructional-image-caption-data
基础模型: microsoft/phi-1_5
库名称: transformers
管道标签: 图像转文本
LLaVA-Phi 模型
这是一个基于微软Phi-1.5架构的视觉语言模型,结合CLIP实现图像处理能力。
模型描述
- 基础模型: 微软Phi-1.5
- 视觉编码器: CLIP ViT-B/32
- 训练方式: QLoRA微调
- 数据集: Instruct 150K
使用方法
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)
训练细节
- 采用QLoRA(量化低秩适配)训练
- 4位量化提高效率
- 启用梯度检查点
- 混合精度训练(bfloat16)
许可证
MIT许可证
引用
@software{llava_phi_2024,
author = {sagar007},
title = {LLaVA-Phi: 视觉语言模型},
year = {2024},
publisher = {Hugging Face},
url = {https://huggingface.co/sagar007/Lava_phi}
}