Skip to content

kobkrit/COVID-QA

 
 

Repository files navigation

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

  1. Check out the demo app to get a basic idea
  2. Data: At the moment we are using a CSV with collected FAQs that get's ingested into elasticsearch here
  3. Model: The NLP model to find answers is build via haystack. It's configured and exposed via this API.
  4. 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

Machine learning / NLP / IR

  • Evaluation dataset & pipeline to benchmark models
  • Improve NLP models for FAQ matching (better embeddings, e.g. sentence-bert trained on Quora duplicate questions dataset)
  • Add extractive QA Models
  • Support other languages (models)
  • Tune Elasticsearch + Embedding models

UI/UX/Design

  • Integrate user feedback mechanism for answers (flag as "correct", "not matching my question", "outdated", "fake news")
  • Tab to explore common queries and those with bad answers
  • Logos / icons
  • Intuitive displaying of search results
  • UX for adding/reviewing data sources by the crowd

About

Tool to answer questions about COVID-19. Using NLP (Question Answering) and trusted, curated data sources.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 51.7%
  • Python 31.6%
  • CSS 12.8%
  • HTML 1.8%
  • TSQL 1.8%
  • Dockerfile 0.3%