#SystematicReviewer (open-source)

9 messages · Page 1 of 1 (latest)

spark flame
#

To help automate the process of conducting systematic reviews of the scientific literature on a topic, we've created https://github.com/scottleibrand/SystematicReviewer, which automates the process of using GPT-3 to systematically answer your list of questions against a list of paper URLs.

To do so, download_articles_and_embeddings.py first takes as input a papers.csv with a list of paper URLs, downloads the full text HTML or PDF, splits it into sections, generates embeddings for each section, and stores the results.
Then answer_questions.py takes as input a questions.csv of questions to answer (or a single question string), calculates the embedding for each question, finds the top_n sections most relevant to the question, and then feeds those sections (plus the title and abstract, if provided in the papers.csv) to InstructGPT to answer them, and then combines the top_n answers into a single answer for each question. After all questions are answered, it writes a copy of the original papers.csv with additional answer columns.

pseudo grove
#

Thanks! This is great.

spark flame
#

@quasi saffron if you want to try your hand at adding new features (or more likely instructing ChatGPT to do so), there are a couple of TODOs in the code for reusing questions that have already been asked and answered (for example if you add more paper URLs or questions, it shouldn’t need to re-run all the ones it has already done).

quasi saffron
#

Thank you very much!

cloud loom
#

👍 This looks great. I shud try this.

hushed perch
#

Beautiful implementation! For the part of reusing questions, maybe one can fine tune a model with the valid question answer set from a run so it doesn’t go back and rerun all the things it’s already done. Let me know what you think. 🙂

spark flame
hollow dock
#

Hi can you make a youtube video for tutorial purpose? It would be nice for people like me how are not familiar, which is huge

hollow dock
#

Can someone provide a more detailed guide on how to do it?