Spaces:
Paused
Paused
File size: 1,099 Bytes
c4d2029 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
from transformers import TrOCRProcessor, VisionEncoderDecoderModel
from PIL import Image
import pdf2image
import gradio as gr
# Załaduj model TroCR
processor = TrOCRProcessor.from_pretrained("microsoft/trocr-large-stage1")
model = VisionEncoderDecoderModel.from_pretrained("microsoft/trocr-large-stage1")
# Funkcja do przetwarzania faktur
def process_invoice(pdf_file):
# Konwersja PDF do obrazu
images = pdf2image.convert_from_bytes(pdf_file.read())
# Przetwarzanie pierwszej strony faktury
image = images[0].convert("RGB")
pixel_values = processor(images=image, return_tensors="pt").pixel_values
# Uruchomienie modelu AI
generated_ids = model.generate(pixel_values)
extracted_text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
return extracted_text
# Tworzenie UI w Gradio
interface = gr.Interface(
fn=process_invoice,
inputs=gr.File(type="file"),
outputs="text",
title="AI Invoice Processor",
description="Wgraj fakturę PDF, a AI wyodrębni dane tekstowe.",
)
# Uruchomienie aplikacji
interface.launch()
|