File size: 783 Bytes
f790a9a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4697379
f790a9a
 
 
 
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
import gradio as gr
import os
import openai
from dotenv import load_dotenv, find_dotenv
from langchain import OpenAI, PromptTemplate
from langchain.chains.summarize import load_summarize_chain
from langchain.document_loaders import PyPDFLoader

_ = load_dotenv(find_dotenv())
openai.api_key = os.environ['OPENAI_API_KEY']
llm = OpenAI(temperature=0)

def pdf_summarizer(pdf):
    loader = PyPDFLoader(pdf.name)
    docs = loader.load_and_split()
    chain = load_summarize_chain(llm, chain_type="map_reduce")
    summary = chain.run(docs)
    return summary

inputs = gr.File(label="Upload only a PDF file")
outputs = gr.Textbox(label="PDF Summary")

iface = gr.Interface(
    fn=pdf_summarizer, 
    inputs=inputs, 
    outputs=outputs,
    title="PDF Summarizer",
)

iface.launch()