Skip to main content

scFoundry

scFoundry is a unified, reproducible framework for deploying, running and evaluating single-cell foundation models (scFMs). One command gives you zero-shot embeddings, label transfer on frozen embeddings, supervised fine-tuning, the benchmark metrics of our paper, or representation-geometry probes — for any supported model, in its original container, with its authors' recipe. No per-model environment setup, no code.

It is built on Nextflow: every model runs in a pinned container, every launch is recorded, and the same commands work on a workstation with Docker or on an HPC cluster with Apptainer/Singularity. This repository is the home of scFoundry and of the benchmark described in the accompanying paper.

📖 Documentation: https://svvord.github.io/scFoundry-docs/ — installation, tutorials, the reference for every task and method, and the benchmark results with an interactive explorer.

[2026.08] scFoundry 0.2: pip-installable scfoundry command with workspaces; embed covers the scFMs, PCA, scVI and the batch-integration methods; new transfer task (prototype / kNN / logistic regression / MLP on frozen embeddings); finetune restricted to methods that update parameters; new benchmark and geometry tasks (the manuscript's metrics and representation-geometry probes); revised CellFM, Geneformer, scFoundation, SCimilarity and scPRINT implementations. [2026.03.04] Fine-tuning implementation released. [2026.01.13] Few-shot learning implementation released; scPRINT deployment fixes.


Requirements

Requirement Notes
Linux x86_64
Python ≥ 3.7 for the scfoundry command only; standard library
Nextflow ≥ 24.10 https://www.nextflow.io/docs/latest/install.html (needs Java 17+)
Apptainer, Singularity or Docker models run in pinned containers
NVIDIA driver ≥ 525 for tasks that run a model on the GPU

Installation

pip install scfoundry                                       # release (PyPI)
pip install git+https://github.com/Svvord/scFoundry.git     # latest from GitHub

Install into the environment that provides nextflow. Full instructions, including the developer install: Installation.

Quick start

scfoundry init my_project && cd my_project    # workspace: nextflow.config, data/, cache/, results/, runs/
scfoundry download --method scgpt             # official checkpoint -> data/model_weights/
scfoundry embed --method scgpt --data cells.h5ad
# -> results/embeddings/scgpt/cells.h5ad   (embedding in adata.X, original obs kept)

Input is an AnnData .h5ad with raw counts over the full transcriptome; see Input data format. Four demo files under data/demo/ satisfy the contract; the Quickstart embeds, scores and annotates them end to end.

Tasks

Task What it does Guide
download fetch a model's official checkpoint Model weights
check advisory report on whether an .h5ad satisfies the input contract Input data format
embed cell embeddings: zero-shot scFMs, PCA / scVI references, batch-integration methods Embed
transfer label a query from a labelled reference on frozen embeddings (logreg / prototype / kNN / MLP) Transfer
finetune update a model's parameters with its authors' recipe, then predict Fine-tune
benchmark the paper's 13 metrics: biological conservation and batch mixing Benchmark
geometry representation-geometry probes: effective dimension, anisotropy, R_NX, intrinsic dimension, partial η² Geometry

scfoundry list methods prints the method × task matrix; scfoundry <task> --help the options of a task.

Supported methods

Zero-shot scFMs: Cell2Sentence, CELLama, CellFM, CellPLM, Geneformer, GenePT, LangCell, scBERT, scCello, scFoundation, scGPT, SCimilarity, scPRINT, UCE, and Novae for spatial data. References: PCA, scVI (CELLxGENE Census). Integration: scGPT (integrated), scVI (de novo), Harmony, Seurat CCA, Seurat RPCA.

Containers, pinned versions, default checkpoints and per-method parameters: Supported methods.

Benchmark results

Every method over 26 Tabula Sapiens v2 tissues (548,977 cells), with default settings throughout: Benchmark results and the interactive explorer. The tables are what scfoundry benchmark and scfoundry geometry compute, so your own numbers are directly comparable — see Reproducing the paper.

Citation

If scFoundry or the benchmark is useful for your research, please cite:

Siyu Hou, Penghui Yang, Wenjing Ma, Jinxi Xiang, Jade Xiaoqing Wang, Hui Wan, Ying Ma and Xiang Zhou (2026). Accessible and reproducible deployment reveals the practical boundaries of single-cell foundation models. bioRxiv, https://doi.org/10.64898/2026.01.06.698060 (the revised version with this title replaces the current preprint at this DOI within one to two weeks)

@article{hou2026accessible,
  title = {Accessible and reproducible deployment reveals the practical boundaries of single-cell foundation models},
  author = {Hou, Siyu and Yang, Penghui and Ma, Wenjing and Xiang, Jinxi and Wang, Jade Xiaoqing and Wan, Hui and Ma, Ying and Zhou, Xiang},
  year = {2026},
  publisher = {Cold Spring Harbor Laboratory},
  journal = {bioRxiv},
  doi = {10.64898/2026.01.06.698060},
  url = {https://doi.org/10.64898/2026.01.06.698060}
}

Please also cite the upstream paper of every model whose results you report — links on the citation page.

Metadata

Release files for scfoundry 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for scfoundry 0.2.1
File Size Uploaded
scfoundry-0.2.1.tar.gz 21.7 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for scfoundry 0.2.1
File Interpreter ABI Platform
scfoundry-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 44.0 MB

Release files / scfoundry-0.2.1.tar.gz

Download URL scfoundry-0.2.1.tar.gz
Size 21.7 MB
Tags Source
SHA-256 checksum
How to use checksums
622d073d26b8fada2cf1d43f9407d033ffb07eb1563f6e450d59d8d5f6eead78
BLAKE2b-256 checksum
How to use checksums
96bfd10b8f2b0d4e55f3523b19fc6d586a35ae0f48fc82fdfa3d81baed8ca264
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / scfoundry-0.2.1-py3-none-any.whl

Download URL scfoundry-0.2.1-py3-none-any.whl
Size 22.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
294e08fd3c76ae1feaf397387600ba1cfb1816ba4db318b8c466d644dd48db70
BLAKE2b-256 checksum
How to use checksums
0c9f75c1df9f02901da02a4668230f711d0746a1513aaf6dd7af6a880df5e0d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page