模型:
Salesforce/instructblip-flan-t5-xl
使用 Flan-T5-xl 作为语言模型的 InstructBLIP 模型。InstructBLIP 模型是由 Dai 等人在 InstructBLIP: Towards General-purpose Vision-Language Models with Instruction Tuning 论文中介绍的。
声明:发布 InstructBLIP 的团队未为该模型编写模型卡片,因此该模型卡片是由 Hugging Face 团队编写的。
InstructBLIP 是 BLIP-2 的视觉指导版本。详情请参阅论文。
使用方式如下:
from transformers import InstructBlipProcessor, InstructBlipForConditionalGeneration import torch from PIL import Image import requests model = InstructBlipForConditionalGeneration.from_pretrained("Salesforce/instructblip-flan-t5-xl") processor = InstructBlipProcessor.from_pretrained("Salesforce/instructblip-flan-t5-xl") device = "cuda" if torch.cuda.is_available() else "cpu" model.to(device) url = "https://raw.githubusercontent.com/salesforce/LAVIS/main/docs/_static/Confusing-Pictures.jpg" image = Image.open(requests.get(url, stream=True).raw).convert("RGB") prompt = "What is unusual about this image?" inputs = processor(images=image, text=prompt, return_tensors="pt").to(device) outputs = model.generate( **inputs, do_sample=False, num_beams=5, max_length=256, min_length=1, top_p=0.9, repetition_penalty=1.5, length_penalty=1.0, temperature=1, ) generated_text = processor.batch_decode(outputs, skip_special_tokens=True)[0].strip() print(generated_text)
有关代码示例,请参阅 documentation 。