SpliceAI Lookup API

This API serves as the backend for spliceailookup.broadinstitute.org.

It works by using precomputed scores provided by Illumina for SNVs and small InDels, and
by running the SpliceAI model for all other queries - such as larger InDels or non-default distance values.

The server and web UI code is available @ github.com/broadinstitute/SpliceAI-lookup and is maintained by the TGG.

For more details on SpliceAI, see Jaganathan et al, Cell 2019 in press. and github.com/Illumina/SpliceAI.


API Example:

/spliceai/?hg=38&distance=50&variant=chr8-140300616-T-G

Returns SpliceAI scores for the given variant.


Local Install

The steps below outline how to install a SpliceAI API server on your local infrastructure. The details will vary depending on your OS, etc. If you run into issues, please submit them to the issue tracker.

  1. Install and start a redis server. It's used to cache API server responses and avoid redundantly recomputing results.
  2. Download reference fasta files: hg19.fa and hg38.fa
  3. Optionally download pre-computed scores .vcf.gz and .vcf.gz.tbi files from Illumina Basespace
  4. Start a single-threaded SpliceAI API server on localhost port 8080. To modify server options, edit the start_local_server.sh script:

$ git clone git@github.com:broadinstitute/SpliceAI-lookup.git # clone this repo $ cd SpliceAI-lookup $ python3 -m pip install -r requirements.txt # install python dependencies $ ./start_local_server.sh

The server uses ~1.5 Gb RAM per server thread.