https://github.com/deepset-ai/COVID-QA Jupyter Notebook API & Webapp to answer questions about COVID-19. Using NLP (Question Answering) and trusted, curated data sources.
COVID-QA
Provide trustworthy questions to COVID-19 via NLP
Staging: https://covid-staging.deepset.ai/
Prod: https://covid.deepset.ai/
⚡️ Problem
People have many questions about COVID-19
Answers are scattered on different websites
Finding the right answers takes a lot of time
Trustworthiness of answers is hard to judge
Many answers get outdated soon
💡 Idea
Aggregate FAQs and texts from trustworty data sources (WHO, CDC ...)
Provide an UI where people can ask questions
Use NLP to match incoming questions of users with meaningful answers
Users can provide feedback about answers to improve the NLP model and flag outdated or wrong answers
Display most common queries without good answers to guide data collection and model improvements
⚙️ Tech
Scrapers to collect data
Elasticsearch to store texts, FAQs, embeddings
NLP Models implented via Haystack to find answers via a) detecting similar question in FAQs b) detect answers in free texts (extractive QA)
NodeJS / koa / eggjs middleware
React Frontend
Quick overview of current status
Check out the demo app to get a basic idea
Data: At the moment we are using scrapers to create a CSV that get's ingested into elasticsearch
Model: The NLP model to find answers is build via haystack. It's configured and exposed via this API .
Frontend/middleware: TODO
❤️ How you can help
This project is build by the community for the community. We are really appreciating every kind of support! There's plenty of work on UX, Design, ML, Backend, Frontend, Middlewware, Data collection ...
We are also happy if you just report bugs, add documentation or flag useful/inappropriate answers returned by the model.
Some next TODOs we see:
Data / Backend
Integrate more data sources via scrapers that return a csv with fields: question, answer, answer_html,
link, name, source, category, country, region, city, lang, last_update
Handling of special non-FAQ questions via other APIs (e.g. “How many infections in Berlin?”)
Improve API to foster external integrations (e.g. Chatsystems)
Logging & storage to foster analysis of common queries with bad results
Support other languages (data collection)
Machine learning / NLP / IR
UI/UX/Design