A T G . . C A T . . .
. G C A T . G . --> . .. . --> λ(·)
T . A G C . A T . . .
A T G . C A
m a n y l a t e n t s - o m i c s
from sequence to manifold
Population genetics, single-cell, and foundation model encoders for manylatents. Extends the core DR framework with biological data types and domain-specific metrics.
Install
uv add manylatents-omics
Optional extras:
uv add "manylatents-omics[popgen]" # population genetics
uv add "manylatents-omics[singlecell]" # single-cell (scanpy, anndata)
uv add "manylatents-omics[dogma]" # protein + RNA encoders (ESM3, Orthrus)
DNA encoder (Evo2) requires a separate venv due to torch version conflicts. See
scripts/setup-dna-venv.sh.
Or from the core manylatents repo:
uv sync --extra omics # installs manylatents-omics as a namespace extension
development install
git clone https://github.com/latent-reasoning-works/manylatents-omics.git
cd manylatents-omics && uv sync
Architecture
manylatents-omics is a namespace extension of manylatents. It lives alongside the core repo and adds domain-specific modules under the manylatents.* namespace via pkgutil.extend_path().
lrw/
├── manylatents/ # core DR engine
├── omics/ # this repo — popgen, singlecell, dogma encoders
└── shop/ # cluster infrastructure
Design decision: The core engine stays domain-agnostic. Each "flavor pack" (omics, vision, etc.) is a separate repo/package that extends the manylatents namespace without polluting the core with domain-specific dependencies. Experiment configs (ClinVar pipelines, fusion sweeps, cluster resource presets) belong in downstream experiment repos, not here — this package ships only instantiation configs that define what encoders, datasets, and algorithms are.
Quick start
Omics configs are auto-discovered when the package is installed. The datasets themselves are not shipped with the package (they're gitignored and not in the wheel) — fetch them first:
# Download the PBMC datasets into the location ${omics_data:} resolves to.
# (Writes to <repo>/data from a checkout, else ~/.cache/manylatents/data.)
python scripts/download_pbmc.py --dataset 3k
python -m manylatents.main --config-name=config \
experiment=single_algorithm data=pbmc_3k
# Sweep on cluster
python -m manylatents.main -m \
cluster=tamia resources=gpu \
data=hgdp,pbmc_10k algorithms/latent=umap,phate
The ${omics_data:} config resolver and download_pbmc.py agree on where data
lives. To pin it explicitly, set MANYLATENTS_DATA (both honor it):
export MANYLATENTS_DATA=/path/to/data
python scripts/download_pbmc.py --dataset 3k # writes $MANYLATENTS_DATA/single_cell/
Modules
popgen — Population genetics via the manifold-genetics CSV pipeline. HGDP+1KGP, UK Biobank, All of Us. Admixture proportions, geographic metadata, QC/relatedness filtering. Requires preprocessing via manifold-genetics (a separate tool, not a Python dependency). Configs: popgen/configs/
- GeographicPreservation — Spearman correlation between haversine and embedding distances
- AdmixturePreservation — Geodesic distance fidelity in admixture simplex vs. latent space
singlecell — AnnData .h5ad loader for scRNA-seq, scATAC-seq, CITE-seq. Ships with PBMC 3k/10k/68k and Embryoid Body. Any .h5ad works via AnnDataset. Configs: singlecell/configs/
dogma — Foundation model encoders for DNA, RNA, and protein sequences. Supports single-modality encoding, multi-layer extraction, and cross-modal fusion. All encoders inherit from FoundationEncoder — lazy model loading, batched encoding with OOM retry, standard fit()/transform() interface. Configs: dogma/configs/
- ESM3 — Protein, 1536-dim, masked mean-pool, true batched forward
- Evo2 — DNA, 1920/4096/8192-dim (1B/7B/40B), multi-layer extraction, 1M bp context
- Orthrus — RNA, 256/512-dim (4-track/6-track), Mamba SSM re-implementation for mamba-ssm 2.x
- AlphaGenome — DNA, 1536/3072-dim (1bp/128bp), JAX-based, regulatory track predictions, chunked encoding
ClinVar pipeline
Reference pipeline for variant-effect analysis via geometric methods. Encodes DNA and protein sequences flanking ClinVar variants, then applies dimensionality reduction to study how pathogenic vs. benign variants separate in embedding space. Three stages: DNA encoding, protein encoding, and geometric analysis (fusion + DR). See docs/clinvar_pipeline.md for full details. Experiment configs live in downstream repos (e.g. merging_dogma), not in this package.
Development
uv sync
pytest tests/ -v
Citing
If manylatents-omics was useful in your research, a citation goes a long way:
@software{manylatents_omics2026,
title = {manyLatents-Omics: Biological Extensions for Unified Dimensionality Reduction},
author = {{Latent Reasoning Works}},
year = {2026},
url = {https://github.com/latent-reasoning-works/manylatents-omics},
license = {MIT}
}
MIT License · Latent Reasoning Works
Metadata
Release files for manylatents-omics 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| manylatents_omics-0.1.3.tar.gz | 333.0 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| manylatents_omics-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 483.4 kB
Release files / manylatents_omics-0.1.3.tar.gz
| Download URL | manylatents_omics-0.1.3.tar.gz |
|---|---|
| Size | 333.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d816cd59b9b854f11499f7c9727f4d686c73a6a400babae56af40cf47e7f5c11
|
|
BLAKE2b-256 checksum How to use checksums |
97070bb49149b248b40b6bb903dc4ad9ac8c026e175fc4f36db8d1b2d01159ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency logRelease files / manylatents_omics-0.1.3-py3-none-any.whl
| Download URL | manylatents_omics-0.1.3-py3-none-any.whl |
|---|---|
| Size | 150.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
41445fa6396ecc0597c3a825e013ce58f1990cb362eed864c84c566d490bf4b1
|
|
BLAKE2b-256 checksum How to use checksums |
0c689c85bf40dc0f33b51218f6e408749f5d39c290c740fc5633d2be42a1c7c9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency logSecurity for manylatents-omics 0.1.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for manylatents_omics-0.1.3.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.