pradyML's picture
app.py
40e8117
# import gradio as gr
# import os
# def greet(name):
# return "Hello " + name + "!"
# # Create the simplest possible Gradio interface
# iface = gr.Interface(
# fn=greet,
# inputs="text",
# outputs="text",
# title="Test Gradio App",
# description="This is a simple test app to check if Gradio launches.",
# flagging_dir="/tmp/gradio_flagged_data" # <--- ADD THIS LINE BACK!
# )
# # Use a specific port for Gradio within the Docker container.
# # This matches the EXPOSE 7860 in your Dockerfile.
# # It also sets share=False for deployment contexts like Spaces.
# iface.launch(server_name="0.0.0.0", server_port=7860, share=False)
import gradio as gr
# from transformers import pipeline
# from langchain_community.llms import OpenAI
# from langchain.chains import LLMChain
# from langchain.prompts import PromptTemplate
# from langchain_community.document_loaders import PyPDFLoader
def load_document(file_path):
"""Loads a PDF document and returns its content."""
loader = PyPDFLoader(file_path)
pages = loader.load_and_split()
return "".join([page.page_content for page in pages])
def summarize_text(text):
"""Summarizes the given text using a pre-trained model."""
summarizer = pipeline("summarization", model="facebook/bart-large-cnn")
summary = summarizer(text, max_length=500, min_length=100, do_sample=False)
return summary[0]['summary_text']
def identify_future_research(text):
"""Uses a language model to identify future research scope."""
llm = OpenAI(temperature=0.7) # You can also use open-source models from Hugging Face Hub
prompt_template = """
Based on the following research paper, identify and suggest potential areas for future research.
Be specific and provide actionable insights.
Research Paper Content:
{paper_content}
Future Research Scope:
"""
prompt = PromptTemplate(
input_variables=["paper_content"],
template=prompt_template
)
chain = LLMChain(llm=llm, prompt=prompt)
future_scope = chain.run(paper_content=text)
return future_scope
def analyze_paper(file):
"""The main function that orchestrates the analysis."""
if file is not None:
# paper_text = load_document(file.name)
# summary = summarize_text(paper_text)
# future_scope = identify_future_research(paper_text)
# return summary, future_scope
return "Dummy Summary Placeholder", "Dummy Future Scope Placeholder"
return "Please upload a research paper.", ""
iface = gr.Interface(
fn=analyze_paper,
inputs=gr.File(label="Upload Research Paper (PDF)"),
outputs=[
gr.Textbox(label="Summary of the Paper"),
gr.Textbox(label="Scope for Further Research")
],
flagging_dir="/tmp/gradio_flagged_data",
title="AI Research Assistant",
description="Upload a research paper to get a summary and identify potential areas for future research.",
theme="huggingface"
)
iface.launch(share=True, debug=True)