ams-core-api / vision_engine.py
Amssou's picture
Create vision_engine.py
641075e verified
Raw
History Blame
698 Bytes
from transformers import BlipProcessor, BlipForConditionalGeneration
from PIL import Image
import requests
class VisionEngine:
def __init__(self):
self.processor = BlipProcessor.from_pretrained("Salesforce/blip-image-captioning-base")
self.model = BlipForConditionalGeneration.from_pretrained("Salesforce/blip-image-captioning-base")
def describe(self, image_url):
raw_image = Image.open(requests.get(image_url, stream=True).raw).convert('RGB')
inputs = self.processor(raw_image, return_tensors="pt")
out = self.model.generate(**inputs)
description = self.processor.decode(out[0], skip_special_tokens=True)
return description