search / vision.py
chanicpanic's picture
Create streamlit app
5bcc73a
raw
history blame
961 Bytes
import streamlit as st
from transformers import (
PreTrainedTokenizerFast,
VisionEncoderDecoderModel,
ViTImageProcessor,
)
model_name = "grascii/gregg-vision-v0.2.1"
@st.cache_resource(show_spinner=f"Loading {model_name}")
def load_model():
model = VisionEncoderDecoderModel.from_pretrained(
model_name, token=st.secrets.HF_TOKEN
)
tokenizer = PreTrainedTokenizerFast.from_pretrained(
model_name,
token=st.secrets.HF_TOKEN,
)
processor = ViTImageProcessor.from_pretrained(model_name, token=st.secrets.HF_TOKEN)
return model, tokenizer, processor
@st.cache_data(ttl=3600, show_spinner=f"Running {model_name}")
def run_vision(image):
model, tokenizer, processor = load_model()
pixel_values = processor(image, return_tensors="pt").pixel_values
generated = model.generate(pixel_values, max_new_tokens=12)[0]
return tokenizer.convert_ids_to_tokens(generated, skip_special_tokens=True)