SuperAPI AI 工具集

scvi-tools

通用与其它

查看项目

更新于 10-15 22:15

技能介绍

用途:scvi-tools(Gayoso 等,2022,BSD-3-Clause)封装单细胞组学的深度生成模型。scRNA-seq 核心是 scVI(无监督批次校正潜嵌入)与 scANVI(scVI 加分类头,做半监督细胞类型标签迁移)。两者都要求原始整数 UMI 计数,输出低维 X_scVI / X_scANVI,可直接接入 scanpy 的 neighbors → leiden → umap 流程。

主要能力:批次校正潜空间、标签迁移预测、差异表达分析、解码后的文库大小归一化表达。

使用方式:依赖 pip install scvi-tools scanpy anndata,训练需 CUDA GPU。先保存原始计数到 adata.layers["counts"],再做 normalize/log1p;用 scvi.model.SCVI.setup_anndata(adata, layer="counts", batch_key="batch") 配置,训练后取 model.get_latent_representation()。scANVI 用 scvi.model.SCANVI.from_scvi_model(model, labels_key="cell_type", unlabeled_category="Unknown") 构建并 predict()。差异表达用 model.differential_expression(groupby="leiden", group1="3", mode="change", delta=0.25),按 proba_de 排序。GPU 参数为 accelerator="gpu", devices=1。

限制与注意:scvi-tools ≥1.4 的 differential_expression 默认 mode="vanilla",无 lfc_*/proba_de 列,需显式传 mode="change";use_gpu 参数在 1.x 已移除;obs 为 ArrowStringArray 时 write_h5ad 会报 IORegistryError,需先做对象类型转换;传入对数归一化数据会导致静默错误。无本地 GPU 时可租用 A100 级 GPU 运行脚本。本技能为纯 Python 技能,无宿主运行时与 LLM API,kernel.py 需在会话中 exec 加载。其他细节资料未提供。