Get Started#

scvi-tools (single-cell variational inference tools) is a package for probabilistic modeling of single-cell omics data, built on top of PyTorch and AnnData. The package hosts implementations of models that perform a wide range of single-cell data analysis tasks, as well as the building blocks to rapidly prototype new probabilstic models.

Basic installation#

scvi-tools can be installed with pip or conda:

pip install scvi-tools
conda install scvi-tools -c bioconda -c conda-forge

To leverage a GPU for inference, a version of PyTorch that supports your GPU will need to be installed separately.

Analysis of single-cell data#

scvi-tools hosts implementations of the following models:


  • scVI for analysis of single-cell RNA-seq data, as well as its improved differential expression framework.
  • scANVI for cell annotation of scRNA-seq data using semi-labeled examples.
  • LDVAE for an interpretable linear factor model version of scVI.


  • totalVI for analysis of CITE-seq data.

Spatial transcriptomics#

  • Steroscope for deconvolution of spatial transcriptomics data.
  • gimVI for imputation of missing genes in spatial transcriptomics from scRNA-seq data.


  • Tutorials, API reference, and advanced installation guides are available in the docs.
  • For discussion of usage, checkout out our forum.
  • To report bugs, make an issue on GitHub.