Spaces:
Runtime error
Runtime error
import gradio as gr | |
import warnings | |
import os | |
import pix2struct, layoutlm, donut | |
warnings.filterwarnings('ignore') | |
def process_image_and_generate_output(image, model_selection, question): | |
result = '' | |
if image is None: | |
return "Please select an image", None | |
if model_selection == "LayoutLM": | |
result = layoutlm.get_result(image, question) | |
return result | |
if model_selection == 'Pix2Struct': | |
result = pix2struct.get_result(image, question) | |
return result | |
if model_selection == 'Donut': | |
result = donut.get_result(image, question) | |
return result | |
return result | |
sample_images = [ | |
[os.path.join(os.path.dirname(__file__), "images/1.png"), "LayoutLM", "What is the NIC Code?"], | |
[os.path.join(os.path.dirname(__file__), "images/1.png"), "Pix2Struct", "What is the NIC Code?"], | |
[os.path.join(os.path.dirname(__file__), "images/1.png"), "Donut", "What is the NIC Code?"] | |
] | |
# Create a dropdown to select sample image | |
image_input = gr.Image(label="Upload Image", type='filepath') | |
# Create a dropdown to choose the model | |
model_selection_input = gr.Radio(["LayoutLM", "Pix2Struct", "Donut"], | |
label="Choose Model") | |
question_input = gr.Text(label="Question") | |
iface = gr.Interface(fn=process_image_and_generate_output, | |
inputs=[image_input, model_selection_input, question_input], | |
outputs=gr.Text(label="Result"), | |
allow_flagging='never', | |
examples=sample_images, | |
title="DocVQA Sanctum") | |
iface.launch() | |