This repository provides tools to search through NeurIPS 2024 poster sessions using semantic search and author matching. The search functionality uses OpenAI's text-embedding-3-small model to find posters related to your research interests.
# Clone the repository
git clone https://github.com/yourusername/neurips-poster-search
cd neurips-poster-search
# Install requirements
pip install -r requirements.txt
# Create and edit your config.yaml
cp config_template.yaml config.yaml
# Edit config.yaml with your OpenAI API key
# Edit self_description.txt with your research interests
nano self_description.txt
# Run the search
python search.py- Install dependencies from
requirements.txt - Create
config.yamlwith your OpenAI API key:openai_api_key: "your-api-key-here"
- Edit
self_description.txtto describe your research interests (example provided in the file)
The repository includes three main scripts:
-
search.py: The main search interfacepython search.py
-
all_posters.py: (Optional) Scrape poster data from NeurIPS website- Requires additional configuration in config.yaml for NeurIPS credentials
- Only needed if you want to update the poster database
-
embeddings.py: (Optional) Generate embeddings for poster data- Only needed if you've updated the poster database
- Semantic search based on research interests
- Author-based search
- "Self search" using your research description
neurips_sessions.json: Contains all poster dataembeddings/: Contains pre-computed embeddingsself_description.txt: Your research interests for personalised search
If you want to update the poster database:
-
Add NeurIPS credentials to config.yaml:
username: "your-neurips-username" password: "your-neurips-password"
-
Run the scraper:
python all_posters.py
-
Generate new embeddings:
python embeddings.py
This tool is provided for research purposes to help conference attendees find relevant posters. Please be mindful of NeurIPS's terms of service when using the scraper functionality.
MIT License