Spaces:
Sleeping
Sleeping
File size: 1,322 Bytes
e40e7ff faa63d0 c247224 e40e7ff faa63d0 e40e7ff faa63d0 e40e7ff | 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 31 32 33 34 35 36 37 38 | import streamlit as st
from core.recommender import EmbeddingProcessor, Recommender
st.title("U.S. ML PhD Faculty Advisor Recommender")
st.markdown("See the [GitHub](https://github.com/livctr/us-ml-phd-rec.git) for an **important disclaimer** and how to use.")
# Set up
embedding_processor = EmbeddingProcessor()
recommender = Recommender(embedding_processor)
# Query input field
query = st.text_input("Name an ML research area you are interested in (e.g. low-rank adaptation)")
num_papers = st.selectbox(
"Select the number of papers to display",
options=[5, 10, 20, 50, 100],
index=1 # default value set to 10
)
# Search and display professors
if query:
top_k_indices = recommender.get_top_k(query, top_k=num_papers)
professors_data = recommender.get_recommended_data(top_k_indices)
if professors_data:
for professor_data in professors_data:
st.subheader(professor_data["name"])
st.write(f"{professor_data['title']} of {professor_data['department']}, {professor_data['university']}")
# List of papers
st.write("Most Relevant Papers:")
for paper in professor_data["papers"]:
st.markdown(f"- [{paper[1]}](https://arxiv.org/abs/{paper[0]})")
else:
st.write("No results found for your query.")
|