Brass-monkey's picture
Update app.py
dd787e0
raw
history blame
1.19 kB
import gradio as gr
from PyPDF2 import PdfReader
from transformers import pipeline
from bark import SAMPLE_RATE, generate_audio, preload_models
from IPython.display import Audio
# Preload Bark models
preload_models()
def summarize_generate_audio(files):
summarizer = pipeline("summarization", model="stevhliu/my_awesome_billsum_model")
summaries = []
audios = []
for file in files:
with open(file.name, "rb") as pdf_file:
pdf_reader = PdfReader(pdf_file)
text = ""
for page in pdf_reader.pages:
text += page.extract_text() + "\n"
summary = summarizer(text, max_length=50, min_length=10, do_sample=False)[0]['summary_text']
summaries.append(summary)
audio_array = generate_audio(summary)
audios.append(audio_array)
return summaries, audios
iface = gr.Interface(
fn=summarize_generate_audio,
inputs=gr.UploadButton("Click to Upload a PDF", file_types=["pdf"], file_count="multiple"),
outputs=[
gr.Textbox(label="Summarized Text"),
gr.Audio(label="Generated Audio")
],
title="PDF Summarizer & Audio Generator"
)
iface.launch()