Spaces:
Build error
Build error
import os | |
import gradio as gr | |
import main | |
def predict_from_pdf(pdf_file): | |
upload_dir = "./catalogue/" | |
os.makedirs(upload_dir, exist_ok=True) | |
try: | |
# Save the uploaded file to a temporary location | |
dest_path = os.path.join(upload_dir, pdf_file.name) | |
with open(dest_path, "wb") as f: | |
with open(pdf_file.name, "rb") as uploaded_file: | |
f.write(uploaded_file.read()) | |
# Process the PDF | |
df, response = main.process_pdf_catalog(dest_path) | |
return df, response | |
except Exception as e: | |
return None, f"Error: {str(e)}" | |
pdf_examples = [ | |
["examples/flexpocket.pdf"], | |
["examples/ASICS_Catalog.pdf"], | |
] | |
demo = gr.Interface( | |
fn=predict_from_pdf, | |
inputs=gr.File(label="Upload PDF Catalog"), | |
outputs=["json", "text"], | |
examples=pdf_examples, | |
title="Open Source PDF Catalog Parser", | |
description="Efficient PDF catalog processing using MinerU and OpenLLM", | |
article="Uses MinerU for layout analysis and DeepSeek-7B for structured extraction" | |
) | |
if __name__ == "__main__": | |
demo.queue().launch(server_name="0.0.0.0", server_port=7860, share=True) | |