Skip to content

Packages

VisCy ships as focused, independently versioned packages. Each is published to PyPI and versioned from its own viscy-<name>-vX.Y.Z git tag,1 so one package can be released without bumping the others.

At a glance

The table below is regenerated at build time from the installed distributions (docs/_gen_versions.py):

Package Version Install
viscy-data 0.1.0a0 pip install viscy-data
viscy-models 0.1.0a0 pip install viscy-models
viscy-transforms 0.0.0.post214.dev0+85f0b889 pip install viscy-transforms
viscy-utils 0.0.0.post214.dev0+85f0b889 pip install viscy-utils

Dependency layering

Three base packages have no internal dependencies; viscy-utils builds on viscy-data. Everything downstream (the umbrella and the applications) composes all four.

What each package provides

viscy-data
Data loading and Lightning DataModules for OME-Zarr microscopy datasets — HCS plates, triplet sampling, memory-mapped caches. Reference
viscy-models
Neural network architectures: UNet variants, contrastive encoders, and VAEs. Reference
viscy-transforms
GPU-friendly image transforms tuned for virtual staining microscopy. Reference
viscy-utils
Shared ML infrastructure — the glue used across the stack. Reference

  1. Versions are derived at build time by uv-dynamic-versioning from each package's prefixed git tag — the table below reflects whatever the docs were built against.