Spaces:
Runtime error
Runtime error
import gradio as gr | |
from utils import process_large_text, generate_lesson_from_transcript as generate_lesson_from_transcript_logic | |
from pdfminer.high_level import extract_text | |
def pdf_to_text(pdf_path): | |
try: | |
return extract_text(pdf_path) | |
except Exception as e: | |
raise ValueError(f"PDF extraction error: {str(e)}") | |
def generate_lesson(doc_text=None, pdf_file=None): | |
try: | |
if pdf_file and doc_text: | |
return "Please provide either a text input or a PDF file, not both.", None | |
if pdf_file: | |
doc_text = pdf_to_text(pdf_file.name) | |
processed_text = process_large_text(doc_text) | |
generated_text, output_path = generate_lesson_from_transcript_logic(processed_text) | |
return (generated_text, gr.File(output_path)) if output_path else (generated_text, None) | |
except Exception as e: | |
return f"Error occurred: {str(e)}", None | |
gr.Interface( | |
fn=generate_lesson, | |
inputs=[gr.Textbox(label="Input Text"), gr.File(label="Upload PDF")], | |
outputs=["text", "file"], | |
).launch() |