Skip to content
Skillpedia
Machine learning51k · #1979

scvi-tools

Helps your agent fit probabilistic models for single-cell data. It's useful for integrating data from different experiments or analyzing multimodal data.

What it does

This tool helps scientists analyze complex single-cell data, like DNA and RNA. It uses mathematical models to understand cell differences and relationships.

When to use it

  • ✓When you have single-cell data and want to understand cell differences.
  • ✓To group cells based on their features (RNA, proteins, etc.).
  • ✓To compare different experiments or cell samples.

Example of what to ask your AI

“Analyze my single-cell RNA data to find cell clusters.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/scvi-tools/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/scvi-tools/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

You provide the raw cell data, and the tool applies statistical models to find patterns and differences. It can integrate different data types (like RNA and proteins) for a more complete analysis.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add K-Dense-AI/scientific-agent-skills --skill scvi-tools

Or download just the file:

curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/scvi-tools/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

scvi-tools

Targets scvi-tools 1.5.1, released September 10, 2026. APIs below were checked against the tagged source and official documentation. The examples are illustrative: the repository tests exercise short CPU synthetic fits for SCVI, SCANVI, TOTALVI, MULTIVI, METHYLVI, PEAKVI and POISSONVI, plus count-preserving preprocessing, DE output contracts, save/load and minification. The tested stack is Python 3.13, Scanpy 1.12.4, AnnData 0.13.4, MuData 0.4.1, PyTorch 2.14.1 and Lightning 2.6.6. Long training, hardware-specific paths and other specialized workflows remain illustrative; these checks do not establish convergence or biological validity.

Choose the model and its input contract

Task Class Required input
RNA integration scvi.model.SCVI Unnormalized RNA counts
RNA annotation scvi.model.SCANVI Counts and partial labels
CITE-seq scvi.model.TOTALVI RNA and protein counts, aligned cells
RNA + ATAC integration scvi.model.MULTIVI Registered MuData with aligned modality representation
ATAC accessibility scvi.model.PEAKVI Cells by peaks, binary/count accessibility
Quantitative ATAC scvi.external.POISSONVI Region-level fragment counts
Methylation scvi.external.METHYLVI, METHYLANVI MuData with methylated and total coverage counts
Cytometry scvi.external.CYTOVI Transformed protein intensities
Large cross-system effects scvi.external.SysVI Normalized, log-transformed expression
RNA velocity scvi.external.VELOVI Preprocessed spliced/unspliced abundances

The count rule is model-specific: do not feed raw RNA counts to SysVI or replace methylation coverage with ratios. Likewise, never reconstruct counts by exponentiating log-normalized data. Preserve measured counts and preprocessing provenance.

Read the corresponding references before using a specialized model:

Release boundaries: JAX support, including JaxSCVI, was removed in 1.5. scvi.model.mlxSCVI remains a separate optional Apple-silicon implementation; PyTorch MPS and MLX are different backends. Spatial models and DIAGVI remain importable in 1.5.1, but upstream directs their ongoing maintenance to scVIVA-tools. Use the pinned compatibility examples here only for existing scvi-tools workflows.

Workflow

  1. Confirm modality, raw-data provenance, unique cell/feature IDs, feature order, batch/sample metadata, and the intended biological comparison.
  2. Perform QC and feature selection before model registration. Use count-aware HVG selection for count layers, and preserve a full-gene count object for later analyses outside the selected feature set.
  3. Register the exact data object with that model's setup_anndata or setup_mudata; create and train the model. Setup is registration, not normalization.
  4. Inspect validation history, held-out fit, seed stability, batch mixing and retention of known biology. A well-mixed UMAP alone does not validate integration.
  5. Extract representations or model-specific normalized outputs; save the model, data, selected feature order, software versions, seed and training parameters.

Illustrative RNA workflow

Assumes rna_counts.h5ad contains measured, unnormalized counts in .X, with nonmissing obs['batch']. Choose QC thresholds for the experiment before this block.

import numpy as np
import scanpy as sc
import scvi
from scipy import sparse

scvi.settings.seed = 0
adata = sc.read_h5ad("rna_counts.h5ad")
assert adata.obs_names.is_unique and adata.var_names.is_unique
assert adata.obs["batch"].notna().all()
x = adata.X
values = x.data if sparse.issparse(x) else np.asarray(x)
assert np.isfinite(values).all() and (values >= 0).all()
assert np.allclose(values, np.rint(values))
assert (np.asarray(x.sum(axis=1)).ravel() > 0).all()
adata.layers["counts"] = x.copy()

…
FAQ

What is 'single-cell data'?

It's data collected from individual cells, allowing for much more detailed analysis than looking at a group of cells as a whole.

What are 'probabilistic models'?

These are mathematical models that use probability to describe and predict outcomes, helping to understand uncertainty in the data.

Can I use this for any biological data?

It's optimized for single-cell 'omics' data, such as RNA, ATAC, proteins, and methylation. Other data types might require different tools.

Details

Original description by the author

Fits probabilistic models for single-cell omics, including scVI batch integration, scANVI annotation, totalVI CITE-seq, MultiVI RNA/ATAC integration, and posterior differential expression. Use for generative modeling, reference mapping, multimodal analysis, or model-based uncertainty; use scanpy for standard preprocessing and exploratory analysis.

repo: K-Dense-AI/scientific-agent-skills

Popularity

GitHub stars
51k
Ranking position
#1979
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills