parthib07's picture
Upload 6 files
065cda0 verified
import streamlit as st
import os
from dotenv import load_dotenv
from Agents.multi_agent import ResearchAgents
from data_loaders import DataLoader
load_dotenv()
st.title("πŸ“š Virtual Research Assistant")
groq_api_key = os.getenv("GROQ_API_KEY")
if not groq_api_key:
st.error("GROQ_API_KEY is missing. Please set it in your environment variables.")
st.stop()
agents = ResearchAgents(groq_api_key)
data_loader = DataLoader()
query = st.text_input("Enter a research topic:")
if st.button("Search"):
with st.spinner("Fetching research papers..."):
arxiv_papers = data_loader.fetch_arxiv_papers(query)
all_papers = arxiv_papers
if not all_papers:
st.error("Failed to fetch papers. Try again!")
else:
processed_papers = []
for paper in all_papers:
summary = agents.summarize_paper(paper['summary'])
adv_dis = agents.analyze_advantages_disadvantages(summary)
processed_papers.append({
"title": paper["title"],
"link": paper["link"],
"summary": summary,
"advantages_disadvantages": adv_dis,
})
st.subheader("Top Research Papers:")
for i, paper in enumerate(processed_papers, 1):
st.markdown(f"### {i}. {paper['title']}")
st.markdown(f"πŸ”— [Read Paper]({paper['link']})")
st.write(f"**Summary:** {paper['summary']}")
st.write(f"{paper['advantages_disadvantages']}")
st.markdown("---")