skillfed

scvi-tools

Deep probabilistic analysis of single-cell omics data.

scvi-tools v1.5.0.post1 98.6K downloads/30d#13,069 on PyPI1,673
Permissive license BSD 3-Clause License Copyright (c) 2026, Yosef Lab, Weizmann Institute of Science All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted… (full text in the JSON record) Active released

What it is and what it does

scvi-tools is a Python library for probabilistic modeling and analysis of single-cell omics data. It provides a collection of pre-built models that handle common analysis tasks—dimensionality reduction, data integration across batches, automated cell-type annotation, doublet detection, and spatial deconvolution—all with a unified API that integrates with the Scanpy ecosystem and AnnData data structures. The package is built on PyTorch and PyTorch Lightning, enabling GPU acceleration for large-scale analyses.

Beyond pre-built models, scvi-tools also serves as a framework for developing and deploying novel probabilistic models. It provides building blocks powered by PyTorch Lightning and Pyro, allowing researchers to prototype custom models and integrate them into the same high-level API. The package is part of the scverse ecosystem and is actively maintained by the Yosef Lab at the Weizmann Institute of Science.

Use it for:

  • Reduce dimensionality of high-dimensional single-cell RNA-seq data for visualization and downstream analysis.
  • Integrate multiple single-cell datasets from different batches, technologies, or studies into a unified representation.
  • Automatically assign cell types to individual cells based on learned probabilistic representations.
  • Identify and remove doublets (cell multiplets) from droplet-based single-cell experiments.
  • Deconvolve spatial transcriptomics data to infer cell-type composition and localization.
  • Develop and validate new probabilistic models for single-cell analysis using the framework's building blocks.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

scvi-tools provides probabilistic models for analyzing single-cell omics data, including dimensionality reduction, data integration, automated annotation, doublet detection, and spatial deconvolution, built on PyTorch and AnnData.

Yes. scvi-tools is actively maintained, has low install friction, carries a permissive license, and is widely used in single-cell genomics research. Install it if you work with single-cell omics data and need probabilistic modeling, integration, or annotation. Ensure PyTorch is installed first and compatible with your hardware.

Install

scvi-tools on PyPI

pip

pip install scvi-tools

uv

uv add scvi-tools

poetry

poetry add scvi-tools

Installing scvi-tools

Before you install

Low install friction with a pure-wheel distribution. Active maintenance with a recent release (36 days ago) and ongoing repository activity. Requires modern Python (3.12+) and a compatible PyTorch installation, particularly for GPU support.

License in practice

BSD 3-Clause permissive license allows commercial and private use with minimal restrictions, requiring only copyright and license retention in source distributions.

Quickstart

pip install scvi-tools

import scvi
import anndata

# Load single-cell data into AnnData object
adata = anndata.read_h5ad('data.h5ad')

# Initialize and train a model (e.g., scVI for dimensionality reduction)
scvi.model.SCVI.setup_anndata(adata)
model = scvi.model.SCVI(adata)
model.train()

Requires PyTorch installation compatible with your hardware (CPU or GPU); consult PyTorch documentation for GPU-specific setup.

Verify before relying

  • Whether GPU acceleration is automatic or requires explicit configuration beyond standard PyTorch setup.
  • Performance characteristics and scalability limits for typical single-cell dataset sizes.
  • Availability and quality of pre-trained models or transfer learning capabilities.

Package facts

License BSD 3-Clause License Copyright (c) 2026, Yosef Lab, Weizmann Institute of Science All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted… (full text in the JSON record) (permissive)
Python support supports the current Python release (>=3.12)
Install friction low — pure-Python wheel
Runtime dependencies 19 — anndata, docrep, lightning, ml-collections, mudata, numba, numpy, pandas, pyro-ppl, rich, scanpy, scikit-learn, scipy, sparse, tensorboard, torch, torchmetrics, tqdm, xarray
Maintenance actively maintained — 36 days since the last release
Last repo commit
First released
Downloads 98,631/month — #13,069 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: scvi_tools-1.5.0.post1-py3-none-any.whl

Development Status :: 4 - BetaIntended Audience :: Science/ResearchNatural Language :: EnglishOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/Engineering :: Bio-Informatics

Tags

single-cell omics analysisprobabilistic single-cell modelingscRNA-seq dimensionality reductionsingle-cell data integrationspatial transcriptomics deconvolutionautomated cell annotationsingle-cell variational inferencemulti-omics integration
single-cell-genomicsprobabilistic-modelingbioinformatics

More Bio-Informatics packages