Skip to content
NygenAnalyticsPublic

Latest commit

 

History

103 Commits

Folders and files

Repository files navigation

CyteType

Agentic, Evidence-Based Cell Type Annotation for Single-Cell RNA-seq

CI Status Python Version PyPI version License: BSD 3-Clause PyPI downloads

CyteType is an end-to-end cell type annotation system for single-cell RNA sequencing (scRNA-seq), designed for repeatable analysis pipelines rather than one-off prompting. It combines cluster-level marker genes, expression context, study metadata, ontology mapping, and a dedicated review step in a structured workflow that operates directly on AnnData.

For Seurat workflows, use CyteTypeR.

📚 Documentation: docs.nygen.io/CyteType covers the Python and R clients, the report, the dashboard, Chat and the MCP connector.

Important

Already installed CyteType? Open a terminal and run pip install -U cytetype to update to the latest version before you start.

CyteType requires an API key. Use is free for academic and non-commercial research. Commercial use requires a license.

Quick Start

1. Install

pip install cytetype

2. Set up your API key

cytetype setup

This opens passwordless CyteType sign-in in your browser and saves the API key locally for automatic use from Python. You can also create or manage API keys in the dashboard.

Already have an API key? Save and validate it locally once:

cytetype login

3. Annotate with Scanpy

import scanpy as sc
from cytetype import CyteType

# Assumes log-normalized AnnData with clusters in adata.obs["clusters"]
group_key = "clusters"
sc.tl.rank_genes_groups(adata, groupby=group_key, key_added=f"rank_genes_{group_key}")
annotator = CyteType(
    adata,
    group_key=group_key,
    rank_key=f"rank_genes_{group_key}",
    n_top_genes=100,
)
adata = annotator.run(study_context="Human PBMC from a healthy donor")
sc.pl.umap(adata, color="cytetype_annotation_clusters")

Follow the full quickstart, or try CyteType in Google Colab.

What You Get

  • Annotations: Cell type, subtype, and activation state for every cluster
  • Cell Ontology mapping: Standardized CL IDs for comparison across studies
  • Confidence and quality control: Reviewer confidence (High, Moderate, Low) and heterogeneity flags, plus match scores against your existing labels
  • Supporting evidence: Supporting, missing and unexpected marker genes, pathways, and the reasoning behind each call

Example Report

Each analysis generates an interactive report with annotation decisions, reviewer assessments and supporting evidence. From the report, open Chat to ask follow-up questions about your data.

CyteType HTML report showing cell type annotations marker genes

View example report

Benchmarks

Across PBMC, bone marrow, tumor microenvironment, and cross-species datasets, the multi-agent approach outperforms existing annotation methods:

Compared with Improvement
GPTCellType +388%
CellTypist +268%
SingleR +101%

Methods and full results are in the preprint. You can also browse results on atlas-scale datasets.

Resources

Citation

Ahuja G, Antill A, Su Y, Dall'Olio GM, Basnayake S, Karlsson G, Dhapola P. Multi-agent AI enables evidence-based cell annotation in single-cell transcriptomics. bioRxiv 2025. doi: 10.1101/2025.11.06.686964

@article{cytetype2025,
  title={Multi-agent AI enables evidence-based cell annotation in single-cell transcriptomics},
  author={Gautam Ahuja, Alex Antill, Yi Su, Giovanni Marco Dall'Olio, Sukhitha Basnayake, Göran Karlsson, Parashar Dhapola},
  journal={bioRxiv},
  year={2025},
  doi={10.1101/2025.11.06.686964},
  url={https://www.biorxiv.org/content/10.1101/2025.11.06.686964v1}
}

License

The CyteType Python client is open source software released under the BSD 3-Clause License and maintained by Nygen.

CyteType service terms

Annotation runs on the CyteType service, which requires an API key.

  • Academic and non-commercial use is free within the usage limits. Data generated under academic use is licensed under CC BY-NC-SA 4.0.
  • Commercial use and higher limits require a commercial license from Nygen Analytics AB, which includes commercial rights to the generated data.

For licensing, contact contact@nygen.io.