Skip to content
/ covidex Public
forked from castorini/covidex

Multi-stage search with neural document reranking and paragraph highlighting on the COVID-19 Open Research Dataset

Notifications You must be signed in to change notification settings

healx/covidex

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

COVID-19 Open Research Dataset Search

This repository contains the API server, neural models, and UI client for Covidex, a neural search engine for the COVID-19 Open Research Dataset (CORD-19).

Local Deployment

API Server

Download the latest Anserini index

sh scripts/update-index.sh

Set up environment variables by copying over the defaults and modifying as needed

cp .env.sample .env

Creating an Anaconda environment for Python 3.7 is highly recommended

conda create -n covidex python=3.7

Activate the Anaconda environment

conda activate covidex

Install Python dependencies

pip install -r requirements.txt

Run the server

uvicorn app.main:app --reload --port=8000

The server wil be running at localhost:8000 with API documentation at /docs

UI Client

Install Node.js 12+ and Yarn.

Install dependencies

yarn install

Start the server

yarn start

The client will be running at localhost:3000

Production Deployment

Redirect port 80 to specified port since only root can bind to port 80 (the below command uses port 8000):

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8000

Download the latest Anserini index

sh scripts/update-index.sh

Start the server and warm up models (deploys to port 8000 by default):

sh scripts/deploy-prod.sh

Optional: set the environment variable $PORT:

PORT=8000 sh scripts/deploy-prod.sh

About

Multi-stage search with neural document reranking and paragraph highlighting on the COVID-19 Open Research Dataset

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 59.2%
  • Python 35.7%
  • Shell 2.5%
  • CSS 1.5%
  • HTML 1.1%