fdgdhfdgh / app.py
sfsfee's picture
app.py
4a33f3e verified
raw
history blame
1.28 kB
import streamlit as st
from transformers import AutoModel, AutoTokenizer
from PIL import Image
import torch
# Carregar o modelo e tokenizador
tokenizer = AutoTokenizer.from_pretrained('ucaslcl/GOT-OCR2_0', trust_remote_code=True)
model = AutoModel.from_pretrained('ucaslcl/GOT-OCR2_0', trust_remote_code=True, low_cpu_mem_usage=True,
device_map='cuda', use_safetensors=True, pad_token_id=tokenizer.eos_token_id)
model = model.eval().cuda()
# Título do app no Streamlit
st.title('OCR com Modelo Pré-treinado')
# Carregando a imagem
uploaded_file = st.file_uploader("Faça o upload de uma imagem", type=["jpg", "jpeg", "png"])
if uploaded_file is not None:
# Exibir a imagem
image = Image.open(uploaded_file)
st.image(image, caption='Imagem carregada', use_column_width=True)
# Salvar a imagem para processamento (opcional)
image.save("uploaded_image.jpg")
# Executando OCR na imagem carregada
with st.spinner('Processando a imagem...'):
# Realizando o OCR
res = model.chat(tokenizer, "uploaded_image.jpg", ocr_type='ocr')
# Exibindo o resultado do OCR
st.subheader("Texto Extraído:")
st.text(res)
else:
st.info("Por favor, faça o upload de uma imagem para continuar.")