What problem does it solve?
CellVote solves inconsistent single-cell cell-type labeling when multiple annotators disagree, giving you one consensus label per cluster. It is built for AnnData workflows where labels already exist in obs and you need a reliable final annotation without manually comparing every annotator output.
Core Features & Use Cases
- Multi-annotator consensus that combines outputs from SCSA, GPT-based annotation, GPTBioInsightor, scMulan, and PopV.
- Online arbitration with an OpenAI-compatible model that uses cluster markers and biological context to choose the most plausible label.
- Offline deterministic voting with a local-majority fallback for reproducible runs, testing, or environments without API access.
- The workflow centers on ov.single.CellVote and its vote method, which writes the final cluster decision back into each cell.
- Useful when you need to standardize noisy labels, resolve disagreements across annotators, or reproduce a PBMC3k consensus workflow.
Quick Start
Load your AnnData object, ensure cluster labels and annotator columns are populated, and ask the Skill to produce a consensus CellVote_celltype assignment using either online LLM arbitration or the offline local-majority method.