PreprintScout is a tool designed to help researchers, including student researchers, discover preprints that can inform current and future research endeavors. It provides an effective means to stay updated on recent preprints, track current trends in your field, and explore trends in other disciplines. PreprintScout uses LLMs and NLP methods to create personalized recommendations.
- Recommendations: Receive tailored recommendations for recent academic preprints based on your unique background and interests.
- LLMs and NLP: Leverage your preferred LLMs (e.g., OpenAI GPT, Google Gemini) and NLP methods (e.g., cosine similarity) to obtain the most relevant recommendations
- Interdiscipinary: Explore research both near and distance from your home discipline based on your preferences; including preprints from arxiv, OSF (which aggregates 25+ preprint services), and PhilArchive.
pip install preprintscout
or
git clone https://github.com/ryanrwatkins/preprints_recommender
import preprintscout
preprintscout(your_short_biography, huggingface_api_key, openai_api_key="xxxxxx", google_api_key=None, interdisciplinary="3", output_path="/path/to/output")
Required -- Write a short (150 to 200 words) biographical statement about your research, interests, academic background, and so forth.
your_short_biography = "I am a professor of engineering management. My research is in the application of artificial intelligence in managing engineering systems for electical vehicles... "
Required -- For recommendations include an API key from your HuggingFace account. For security you can also store this as an environment variable. For example, "${HF_API_KEY}"
huggingface_api_key = "xxxxxxxxxxxxxxxxxxx"
openai_api_key = "xxxxxxxxxxxxxxxxxxx"
google_api_key = "xxxxxxxxxxxxxxxxxxx"
interdisciplinary = "3"
output_path = "/path/to/output"
This will create the directory if it doesn't exist yet. Be sure that has a the leading slash. For instance, on a Mac you could have ""/Users/your_name/recommendations/preprints"
import preprintscout as pps
your_short_biography = "I am a professor of engineering management. My research is in the application of artificial intelligence in managing engineering systems for electical vehicles... "
huggingface_api_key = "xxxxxxxxxxxxxxxxxxx"
pps(your_short_biography, huggingface_api_key, openai_api_key="xxxxxx", google_api_key=None, interdisciplinary="3", output_path="/path/to/output")
The return is a JSON file grouped by type of recommendation, with 5 recommendations for each category. Here an example with one recommendation for each category and reduced descriptions.
{
"arxiv_llm_recs": [
{
"article": [
"1.2 Computer and information sciences",
"http://arxiv.org/abs/2406.19334v1",
"Multi-RIS-Empowered Multiple Access: A Distributed Sum-Rate Maximization Approach",
"The plethora of wirelessly connected devices, whose deployment density ...",
"This article presents a new communication scheme for 6G wireless networks..."
],
"dissim_value": 0.120610034
},
],
"osf_phil_llm_recs": [
{
"article": [
"5.1 Psychology",
"https://osf.io/preprints/psyarxiv/fqzd2/",
"Who is We: Capturing (European) Identity Content by Integrating Qualitative Methods in Survey-Based Approaches",
"European identity can mean different things to different people. Yet, past quantitative research ...",
"This article presents two methods to assess European identity content that can be implemented in survey research."
],
"dissim_value": 0.455544972
},
],
"arxiv_cosine_ranked": [
{
"article": [
"1.2 Computer and information sciences",
"http://arxiv.org/abs/2406.19296v1",
"Vehicle-to-Grid Technology meets Packetized Energy Management",
"The global energy landscape is experiencing a significant transformation...",
"This article presents a co-simulation platform to investigate integration of V2G with PET in microgrid..."
],
"score": 0.18289190091265142,
"dissim_value": 0.120610034
},
],
"osf_phil_cosine_ranked": [
{
"article": [
"6.3 Philosophy ethics and religion",
"https://philarchive.org/rec/JIAAAD",
"AGGA: A Dataset of Academic Guidelines for Generative AIs.",
"AGGA (Academic Guidelines for Generative AIs) is a dataset of 80 academic guidelines for the usage of generative AIs and large language models in academia...",
"The article introduces a dataset of 80 academic guidelines for the usage of generative AIs...",
"The article introduces a dataset of 80 academic guidelines for the usage of generative AIs..."
],
"score": 0.33518822100626167,
"dissim_value": 0.559099337
},
],
"interdisciplinary_ranked": [
{
"article": [
"2.2 Electrical engineering; electronic engineering; information engineering",
"http://arxiv.org/abs/2406.19305v1",
"A Max Pressure Algorithm for Traffic Signals Considering Pedestrian Queues",
"This paper proposes a novel max-pressure (MP) algorithm that incorporates\npedestrian traffic into the MP control architecture. Pedestrians are modeled as\nbeing included in one of two groups: those walking on sidewalks...",
"This article proposes a novel max-pressure algorithm that incorporates pedestrian traffic..."
],
"score": 0.12583606498802957,
"dissim_value": 0.1
},
]
}
- Launch the app and explore recent preprints that are recommended based on your profile.
- Get interdisciplinary recommendations from fields close or far from your home discipline.
- Save preprints to your personalized output directory for easy access.
- Easily add a daily email of recommended preprint using GitHub Actions (link coming soon)
Check Github.
Contributions are welcome! Please read our contributing guidelines for more details (coming soon).
This project is licensed under the MIT License. See the LICENSE file for details.
For questions or feedback, please contact me on Github.
If you encounter issues importing 'preprintscout' after installing the package, follow these steps to find the installation path and update the 'PYTHONPATH'.
Use the '>>> pip show preprintscout' command and note the location. For example, if the location is /Users/yourusername/.local/lib/python3.9/site-packages, you will use this path.
pip show preprintscout
export PYTHONPATH=$PYTHONPATH:/Users/yourusername/.local/lib/python3.9/site-packages