SuperAPI AI 工具集

genomics-workflow-acceleration

数据与分析

查看项目

更新于 10-15 16:35

技能介绍

用途

检查现有基因组学工作流,将 CPU 步骤映射到 NVIDIA Parabricks,并在原 CPU 步骤旁添加可选的 GPU 加速步骤。通过暴露运行时参数(或 CLI 标志 / 配置键),使同一工作流无需单独复制即可运行任一路径。

默认:加速路径关闭——在用户显式启用 GPU 步骤之前,现有 CPU 行为保持为生产默认。

主要能力

  • 识别工作流框架(Nextflow、Snakemake、WDL、Python)并盘点步骤。
  • 将常见 CPU 步骤映射到 Parabricks 目标,例如 BWA-MEM 加排序与重复标记映射到 pbrun fq2bam(Nextflow 为 parabricks_fq2bam);GATK/Picard MarkDuplicates 常并入 fq2bam;GATK BaseRecalibrator / ApplyBQSR 映射到 fq2bam BQSR 模式或 pbrun applybqsr;GATK HaplotypeCaller 映射到 pbrun haplotypecaller;DeepVariant 映射到 pbrun deepvariant。
  • 以就地方式添加可选 GPU 步骤,使用运行时开关路由,默认关闭。
  • 在 A/B 对比后评估 GPU 分支的步骤合并机会。
  • 生成 ACCELERATION.md 记录开关用法、运行时目标、映射、输出接线、合并机会与 A/B 对比清单。

使用方式

  1. 提供可检查的工作流路径、仓库或入口点;若没有,需先询问工作流位置与框架,不得虚构流水线或步骤映射。
  2. 确定运行时就绪状态:使用用户提供的事实,或仅检查安全短命令如 nvidia-smi 与 pbrun --version,记录为本地就绪、本地未就绪或未知(未检查)。
  3. 检测框架并盘点步骤。
  4. 使用 parabricks-tool-map.md 映射步骤;Nextflow 优先使用 nf-core Parabricks 模块。
  5. 就地实现可选加速步骤,遵循开关契约:Nextflow 使用 params.use_parabricks 或 params.accelerated,默认 false;Snakemake 使用 config["use_parabricks"],默认 false;WDL 使用 Boolean use_parabricks,默认 false;Python 使用 --use-parabricks CLI 标志或 USE_PARABRICKS 环境变量,默认关闭。
  6. 在 ACCELERATION.md 中记录开关名称、默认值与示例运行命令。
  7. 生产前进行开关关闭与开启的对比,使用相同样本、参考与区间,输出到不同目录。

适用场景

  • 用户要求让流水线更快、改善性价比、减少运行时间或成本、转换为 GPU,或使用 Parabricks。
  • 需要检查现有工作流并报告 Parabricks 映射机会(报告模式,不编辑文件)。
  • 需要在 Nextflow、Snakemake、WDL 或 Python 工作流中就地添加可选 GPU 步骤。
  • 需要在 A/B 对比后合并 GPU 分支的相邻步骤。

限制

  • 不提供集群级 Parabricks 安装,也不保证结果逐位一致。
  • 在添加 GPU 替代方案时,除非用户在对比后明确批准合并,否则不移除原有 CPU 步骤。
  • 不涉及临床诊断、治疗建议与变异解读。
  • 不得使用或重复提示中的机密;拒绝破坏性清理如擦除 /data 或删除生产数据集。
  • 不得虚构流水线结构、样本名称、路径或容器标签。
  • 未经对比运行,不得声称 VCF/BAM 输出逐位一致。
  • 不得声称 Parabricks 在 CPU 上运行。
  • 本地 Parabricks 对检查与接线是可选的;加速执行与 A/B 对比需要 GPU 访问(本地、HPC 或云)。
  • 深度运行时诊断、安装与各工具命令标志请使用 parabricks 技能。

参考文件

  • parabricks-runtime-readiness.md — 本地检查;HPC/云指导
  • workflow-frameworks.md — 检测框架;就地模式
  • parabricks-tool-map.md — CPU → Parabricks 映射(所有框架)
  • nf-core-parabricks-map.md — Nextflow nf-core 模块
  • workflow-layout.md — 开关命名、布局、ACCELERATION.md
  • step-consolidation.md — 在 GPU 分支上合并步骤
  • comparison-checklist.md — 开关关闭与开启验证