인터페이스는 현지화되어 있으며, Skill 소개와 설명 문서는 선택한 언어로 AI가 자동 번역합니다. 코드·명령어·경로·전문 용어는 원문을 유지하며 원작자 문서가 우선합니다.
Skills 둘러보기
데이터 및 연구 · SKILL.md

scvi-tools

scvi-tools

Use scvi-tools for probabilistic single-cell omics analysis with AnnData/MuData setup, model selection, training, downstream analysis, save/load, Hub workflows, and advanced extension/autotune tasks.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill 문서

GitHub

name: scvi-tools description: "Use scvi-tools for probabilistic single-cell omics analysis with AnnData/MuData setup, model selection, training, downstream analysis, save/load, Hub workflows, and advanced extension/autotune tasks." disable-model-invocation: true metadata: disco-role: operating license: BSD 3-Clause

scvi-tools

Use this skill when working with scvi-tools, the PyTorch/AnnData-based package for probabilistic analysis of single-cell RNA, protein, ATAC, spatial, methylation, perturbation, velocity, and related omics data.

Use the bundled sub-skills for workflow depth. Keep the root as a router: read only the sub-skill and references needed for the user request.

First Checks

For a new environment or bug report, verify the install before choosing a workflow:

python - <<'PY'
import scvi, torch, anndata
print('scvi-tools', scvi.__version__)
print('torch', torch.__version__, 'cuda', torch.cuda.is_available())
print('anndata', anndata.__version__)
PY

Or run the bundled diagnostic:

python scripts/check_scvi_environment.py --json

scvi-tools requires Python 3.12+ in this checkout. GPU acceleration is optional for most APIs; CPU works for inspection and small examples, while real training may require CUDA/MPS/accelerator-specific PyTorch installations.

Route by Task

  • Preparing input data, AnnData/MuData, layers, .obs, .obsm, .varm, registries, readers, or setup_anndata: use sub-skills/data-setup/.
  • Choosing and instantiating built-in models such as SCVI, SCANVI, TOTALVI, PEAKVI, MULTIVI, AUTOZI, LinearSCVI, CondSCVI, DestVI, AmortizedLDA, or mlxSCVI: use sub-skills/core-models/.
  • Label transfer, semi-supervised annotation, query/reference mapping, doublet detection, or marker-based assignment with SCANVI, SOLO, or CellAssign: use sub-skills/annotation-and-query/.
  • Multimodal, spatial, ATAC, methylation, velocity, perturbation, contrastive, deconvolution, and external specialized model families: use sub-skills/multimodal-and-spatial/.
  • Training arguments, Trainer behavior, accelerator/device choices, callbacks, validation splits, dataloaders, custom datamodules, or inference dataloaders: use sub-skills/training-and-inference/.
  • Post-training outputs such as latent representations, normalized expression/protein/accessibility, imputation, differential expression/abundance/accessibility/methylation, posterior predictive checks, criticism, or simulation: use sub-skills/downstream-analysis/.
  • Saving/loading, model directories, minified data, registry compatibility, version migration, or Hugging Face Hub metadata/publish/load flows: use sub-skills/model-io-and-hub/.
  • Hyperparameter tuning, Ray/HyperOpt, MLflow, optional extras, developer extension APIs, custom modules, Pyro/module internals, distributions, or neural-network building blocks: use sub-skills/advanced-operations/.

Common End-to-End Pattern

import scvi

scvi.model.SCVI.setup_anndata(adata, layer='counts', batch_key='batch')
model = scvi.model.SCVI(adata, n_latent=10)
model.train(max_epochs=20, accelerator='auto', devices='auto')
latent = model.get_latent_representation()
model.save('my_scvi_model', overwrite=True)

For this pattern:

  1. Use data-setup to make sure adata contains valid counts, batch labels, covariates, modality matrices, and registry fields.
  2. Use core-models or a specialized model sub-skill to choose the class and setup keys.
  3. Use training-and-inference to tune epochs, batch size, accelerator, callbacks, and dataloaders.
  4. Use downstream-analysis for accessors and statistical outputs.
  5. Use model-io-and-hub before handing off a saved model or loading one in another environment.

Optional Dependencies

The base package covers common model APIs, but several routes need extras or services:

  • autotune: Ray/HyperOpt and tuning helpers.
  • hub: Hugging Face Hub and storage metadata workflows.
  • dataloaders: LaminDB, CELLxGENE Census, TileDB-SOMA, torchdata, and AnnBatch integrations.
  • regseq, file_sharing, parallel, interpretability, diagvi, mlflow, rapids, cuda, tpu, metal: specialized workflows.

Do not install all or broad extras automatically. Install the smallest extra set needed for the requested route, then rerun scripts/check_scvi_environment.py.

Troubleshooting Entry Points

  • Cross-cutting install/import/backend/version failures: read references/troubleshooting.md.
  • Data-field or registry failures: read sub-skills/data-setup/references/troubleshooting.md.
  • Model-family or modality mismatch: read the nearest model sub-skill troubleshooting reference.
  • Training failures: read sub-skills/training-and-inference/references/troubleshooting.md.
  • Save/load or Hub failures: read sub-skills/model-io-and-hub/references/troubleshooting.md.

Provenance

This generated skill is aligned to the source snapshot in references/repo-provenance.md. Refresh the skill if the repository version, public model APIs, optional extras, setup signatures, or save/load/hub behavior changes.

저장한 Skills