Clara Parabricks v4.4.0

deepvariant_germline

给定一个或多个 FASTQ 文件对,您可以运行 germline 变异工具来生成 BAM、变异、重复指标和 recal 文件。

deepvariant germline 工具包括比对、排序和标记重复项以及 DeepVariant 变异调用器。

输入是 BWA 索引的参考文件和双端 FASTQ 文件。此工具的输出如下:

  • 已比对、坐标排序、标记重复项的 BAM 文件

  • vcf/g.vcf/g.vcf.gz 格式的变异

deep_variant.png

有关所有可用选项的详细列表,请参阅 deepvariant_germline 参考 部分。

以下命令运行 DeepVariant 工具。

复制
已复制!
            

# This command assumes all the inputs are in INPUT_DIR and all the outputs go to OUTPUT_DIR. docker run --rm --gpus all --volume INPUT_DIR:/workdir --volume OUTPUT_DIR:/outputdir \ --workdir /workdir \ nvcr.io/nvidia/clara/clara-parabricks:4.4.0-1 \ pbrun deepvariant_germline \ --ref /workdir/${REFERENCE_FILE} \ --in-fq /workdir/${INPUT_FASTQ_1} /workdir/${INPUT_FASTQ_2} \ --out-variants /outputdir/${OUTPUT_VCF_FILE}

以下命令是 Parabricks 上述命令的 Google 对应命令。这些命令的输出将与上述命令的输出相同。请参阅输出比较页面以比较结果。

复制
已复制!
            

# Run bwa-mem and pipe output to create sorted BAM $ bwa mem \ -t 32 \ -K 10000000 \ -R '@RG\tID:sample_rg1\tLB:lib1\tPL:bar\tSM:sample\tPU:sample_rg1' \ <INPUT_DIR>/${REFERENCE_FILE} \ <INPUT_DIR>/${INPUT_FASTQ_1} <INPUT_DIR>/${INPUT_FASTQ_2} | \ gatk SortSam \ --java-options -Xmx30g \ --MAX_RECORDS_IN_RAM 5000000 \ -I /dev/stdin \ -O cpu.bam \ --SORT_ORDER coordinate # Mark Duplicates $ gatk MarkDuplicates \ --java-options -Xmx30g \ -I cpu.bam \ -O mark_dups_cpu.bam \ -M metrics.txt # Run deepvariant BIN_VERSION="1.6.1" sudo docker run \ -v "${PWD}":"/input" \ -v "${PWD}/output":"/output" \ -v "${PWD}/Ref":"/reference" \ google/deepvariant:"${BIN_VERSION}" \ /opt/deepvariant/bin/run_deepvariant \ --model_type WGS \ --ref /reference/Homo_sapiens_assembly38.fasta \ --reads /output/mark_dups_cpu.bam \ --output_vcf /output/"${OUTPUT_VCF_FILE}" \ --num_shards $(nproc) \ --make_examples_extra_args "ws_use_window_selector_model=true"

有关下载和使用用于额外 GPU 的模型文件的说明,请参阅 DeepVariant Models for additional GPUs 部分。

使用深度神经网络分析从 FASTQ 到 VCF 运行 germline 管线。

输入/输出文件选项

--ref REF

参考文件的路径。(默认值:None)

此选项为必选项。

--in-fq [IN_FQ ...]

双端 FASTQ 文件的路径,后跟可选的带有引号的读取组(示例:“@RG\tID:foo\tLB:lib1\tPL:bar\tSM:sample\tPU:foo”)。文件必须为 fastq 或 fastq.gz 格式。所有输入集都应具有读取组;否则,都不应具有读取组,并且管线将自动添加读取组。此选项可以重复多次。示例 1:--in-fq sampleX_1_1.fastq.gz sampleX_1_2.fastq.gz --in-fq sampleX_2_1.fastq.gz sampleX_2_2.fastq.gz。示例 2:--in-fq sampleX_1_1.fastq.gz sampleX_1_2.fastq.gz "@RG\tID:foo\tLB:lib1\tPL:bar\tSM:sample\tPU:unit1" --in-fq sampleX_2_1.fastq.gz sampleX_2_2.fastq.gz "@RG\tID:foo2\tLB:lib1\tPL:bar\tSM:sample\tPU:unit2"。对于同一示例,读取组应具有相同的样本名称 (SM) 和不同的 ID 和 PU。(默认值:None)

--in-se-fq [IN_SE_FQ ...]

单端 FASTQ 文件的路径,后跟可选的带有引号的读取组(示例:“@RG\tID:foo\tLB:lib1\tPL:bar\tSM:sample\tPU:foo”)。文件必须为 fastq 或 fastq.gz 格式。所有输入集都应具有读取组,或者都不应具有读取组,并且管线将自动添加读取组。此选项可以重复多次。示例 1:--in-se-fq sampleX_1.fastq.gz --in-se-fq sampleX_2.fastq.gz 。示例 2:--in-se-fq sampleX_1.fastq.gz "@RG\tID:foo\tLB:lib1\tPL:bar\tSM:sample\tPU:unit1" --in-se-fq sampleX_2.fastq.gz "@RG\tID:foo2\tLB:lib1\tPL:bar\tSM:sample\tPU:unit2" 。对于同一示例,读取组应具有相同的样本名称 (SM) 和不同的 ID 和 PU。(默认值:None)

--knownSites KNOWNSITES

已知插入缺失文件的路径。文件必须为 vcf.gz 格式。此选项可以多次使用。(默认值:None)

--interval-file INTERVAL_FILE

间隔文件的路径,格式为以下格式之一:Picard 样式(.interval_list 或 .picard)、GATK 样式(.list 或 .intervals)或 BED 文件(.bed)。此选项可以多次使用。(默认值:None)

--pb-model-file PB_MODEL_FILE

用于 deepvariant 的非默认 parabricks 模型文件的路径。(默认值:None)

--out-recal-file OUT_RECAL_FILE

碱基质量分数重校准后的报告文件的路径。(默认值:None)

--out-bam OUT_BAM

标记重复项后的 BAM 文件的路径。(默认值:None)

此选项为必选项。

--out-variants OUT_VARIANTS

变异调用后的 vcf/gvcf/gvcf.gz 文件的路径。(默认值:None)

此选项为必选项。

--out-duplicate-metrics OUT_DUPLICATE_METRICS

标记重复项后的重复指标文件的路径。(默认值:None)

--proposed-variants PROPOSED_VARIANTS

VCF 文件的路径,其中包含用于生成示例阶段的提议变异。(默认值:None)

工具选项

--max-read-length MAX_READ_LENGTH

用于 bwa 和过滤 FASTQ 输入的最大读取长度/大小(即序列长度)(默认值:480)

--min-read-length MIN_READ_LENGTH

用于 bwa 和过滤 FASTQ 输入的最小读取长度/大小(即序列长度)(默认值:1)

-L INTERVAL, --interval INTERVAL

从中调用 bqsr 的输入读取中的间隔。所有间隔都将具有 100 的填充以获取读取记录,并且重叠的间隔将被合并。间隔文件应使用 --interval-file 选项传递。此选项可以多次使用(例如“-L chr1 -L chr2:10000 -L chr3:20000+ -L chr4:10000-20000”)。(默认值:None)

--bwa-options BWA_OPTIONS

将支持的 bwa mem 选项作为字符串传递。当前原始 bwa mem 支持的选项有:-M、-Y、-C、-T、-B、-U、-L 和 -K(例如 --bwa-options="-M -Y")(默认值:None)

--no-warnings

禁止显示有关系统线程和内存使用情况的警告消息。(默认值:None)

--filter-flag FILTER_FLAG

如果条目的标志满足此条件,则不要在输出中生成 SAM 条目。条件:(flag & filter != 0)(默认值:0)

--skip-multiple-hits

过滤 SA 长度不为 0 的 SAM 条目(默认值:None)

--align-only

在 bwa-mem 之后生成输出 BAM。输出将不会进行坐标排序,也不会标记重复项(默认值:None)

--no-markdups

不执行标记重复项步骤。在排序后返回 BAM。(默认值:None)

--fix-mate

向输出文件添加配对雪茄 (MC) 和配对质量 (MQ) 标签。(默认值:None)

--markdups-assume-sortorder-queryname

假定读取按 queryname 排序以进行标记重复项。这也将标记辅助读取、补充读取和未比对的读取为重复项。此标志不会影响变异调用,同时会增加处理时间。(默认值:None)

--markdups-picard-version-2182

假定标记重复项类似于 Picard 版本 2.18.2。(默认值:None)

--monitor-usage

在执行期间监视近似 CPU 利用率和主机内存使用情况。(默认值:None)

--optical-duplicate-pixel-distance OPTICAL_DUPLICATE_PIXEL_DISTANCE

为了将两个重复簇视为光学重复项,它们之间的最大偏移量。如果未传递 --out-duplicate-metrics,则忽略此选项。(默认值:None)

--read-group-sm READ_GROUP_SM

此运行中读取组的 SM 标签。(默认值:None)

--read-group-lb READ_GROUP_LB

此运行中读取组的 LB 标签。(默认值:None)

--read-group-pl READ_GROUP_PL

此运行中读取组的 PL 标签。(默认值:None)

--read-group-id-prefix READ_GROUP_ID_PREFIX

此运行中读取组的 ID 和 PU 标签的前缀。此前缀将用于此运行中的所有 FASTQ 文件对。ID 和 PU 标签将包含此前缀和一个标识符,该标识符对于一对 FASTQ 文件是唯一的。(默认值:None)

--standalone-bqsr

运行独立的 BQSR。(默认值:None)

--disable-use-window-selector-model

将窗口选择器模型从等位基因计数线性更改为变异读取。此选项将提高准确性和运行时间。(默认值:None)

--gvcf

以 .gvcf 格式生成变异调用。(默认值:None)

--norealign-reads

在调用变异之前,不要在本地重新比对读取。长度超过 500 bp 的读取永远不会重新比对。(默认值:None)

--sort-by-haplotypes

读取按单倍型(使用 HP 标签)排序。(默认值:None)

--keep-duplicates

保留重复的读取。(默认值:None)

--vsc-min-count-snps VSC_MIN_COUNT_SNPS

等位基因计数中至少出现此次数的 SNP 等位基因将被提升为候选基因。(默认值:2)

--vsc-min-count-indels VSC_MIN_COUNT_INDELS

等位基因计数中至少出现此次数的 Indel 等位基因将被提升为候选基因。(默认值:2)

--vsc-min-fraction-snps VSC_MIN_FRACTION_SNPS

等位基因计数中至少占所有计数此分数的 SNP 等位基因将被提升为候选基因。(默认值:0.12)

--vsc-min-fraction-indels VSC_MIN_FRACTION_INDELS

等位基因计数中至少占所有计数此分数的 Indel 等位基因将被提升为候选基因。(默认值:None)

--min-mapping-quality MIN_MAPPING_QUALITY

默认情况下,保留具有任何比对质量的读取。将此字段设置为正整数 i 将仅保留 MAPQ >= i 的读取。请注意,这仅适用于比对的读取。(默认值:5)

--min-base-quality MIN_BASE_QUALITY

最小碱基质量。此选项对备择等位基因强制执行最小碱基质量分数。仅当等位基因中的所有碱基的质量都大于 min_base_quality 时,才考虑备择等位基因。(默认值:10)

--mode MODE

值可以是 [shortread, pacbio, ont] 之一。默认情况下,为 shortread。如果模式设置为 pacbio,则使用以下默认值:--norealign-reads、--alt-aligned-pileup diff_channels、--vsc-min-fraction-indels 0.12。如果模式设置为 ont,则使用以下默认值:-norealign-reads、--variant-caller VCF_CANDIDATE_IMPORTER。(默认值:shortread)

--alt-aligned-pileup ALT_ALIGNED_PILEUP

值可以是 [none, diff_channels] 之一。在 pileup 图像中包含针对每个候选备择等位基因的读取比对。(默认值:None)

--variant-caller VARIANT_CALLER

值可以是 [VERY_SENSITIVE_CALLER, VCF_CANDIDATE_IMPORTER] 之一。用于生成示例的调用器。如果使用 VCF_CANDIDATE_IMPORTER,则意味着强制调用。默认值为 VERY_SENSITIVE_CALLER。(默认值:None)

--add-hp-channel

添加另一个通道来表示每个读取的 HP 标签。(默认值:None)

--parse-sam-aux-fields

解析 BAM/CRAM 记录的辅助字段。如果设置了 --sort-by-haplotypes 或 --add-hp-channel 中的任何一个,则还必须设置此选项。(默认值:None)

--use-wes-model

如果传递此选项,将使用 WES 模型文件。仅在 shortread 模式下使用。(默认值:None)

--include-med-dp

如果为 True,则在输出 gVCF 记录中包含 MED_DP。(默认值:None)

--normalize-reads

如果为 True,则等位基因计数器为每个读取左对齐 INDEL。(默认值:None)

--pileup-image-width PILEUP_IMAGE_WIDTH

Pileup 图像宽度。仅当您知道您的模型支持此宽度时才更改此值。(默认值:221)

--channel-insert-size

如果为 True,则将 insert_size 通道添加到 pileup 图像中。默认情况下,此参数在 WGS 和 WES 模式下为 true。(默认值:None)

--no-channel-insert-size

如果为 True,则不要将 insert_size 通道添加到 pileup 图像中。(默认值:None)

--max-read-size-512

允许 deepvariant 在大小为 512bp 的读取上运行。默认大小为 320 bp。(默认值:None)

--prealign-helper-thread

为预对齐步骤使用额外的线程。当设置 --max-reads-size-512 时,此参数更有用。(默认值:None)

--track-ref-reads

如果为 True,则等位基因计数器跟踪支持 ref 的读取。默认情况下,等位基因计数器仅保留支持 ref 的读取数的简单计数。(默认值:None)

--phase-reads

自动计算相位并将 HP 标签添加到所有读取。(默认值:None)

--dbg-min-base-quality DBG_MIN_BASE_QUALITY

k-mer 序列中要考虑的最小碱基质量。(默认值:15)

--ws-min-windows-distance WS_MIN_WINDOWS_DISTANCE

本地组装的候选窗口之间的最小距离(默认值:80)

--channel-gc-content

如果为 True,则将 gc_content 通道添加到 pileup 图像中(默认值:None)

--channel-hmer-deletion-quality

如果为 True,则将 hmer 删除质量通道添加到 pileup 图像中(默认值:None)

--channel-hmer-insertion-quality

如果为 True,则将 hmer 插入质量通道添加到 pileup 图像中(默认值:None)

--channel-non-hmer-insertion-quality

如果为 True,则将 non-hmer 插入质量通道添加到 pileup 图像中(默认值:None)

--skip-bq-channel

如果为 True,则忽略碱基质量通道。(默认值:None)

--aux-fields-to-keep AUX_FIELDS_TO_KEEP

要保留的辅助 BAM 字段的逗号分隔列表。值可以是 [HP, tp, t0](默认值:HP)

--vsc-min-fraction-hmer-indels VSC_MIN_FRACTION_HMER_INDELS

至少出现此次数的 Hmer Indel 等位基因将被提升为候选基因。如果应区别对待 hmer 和 non-hmer indel(Ultima 读取),请使用此阈值。默认值将对 hmer 和 non-hmer indel 使用相同的阈值,如 vsc_min_fraction_indels 中定义。(默认值:None)

--vsc-turn-on-non-hmer-ins-proxy-support

将来自软剪切读取和其他 non-hmer 插入等位基因的读取支持添加到最常见的 non-hmer 插入等位基因。(默认值:None)

--consider-strand-bias

如果为 True,则期望调用中存在 SB 字段并将其写入 vcf(默认值:None)

--p-error P_ERROR

参考置信度模型的基本调用错误。(默认值:0.001)

--channel-ins-size

如果为 true,则添加另一个通道来表示插入大小。(适用于基于流的测序)(默认值:None)

--max-ins-size MAX_INS_SIZE

ins_size_channel 的最大插入大小,较大的插入看起来像最大值(具有最大强度)(默认值:10)

--disable-group-variants

如果使用 vcf_candidate_importer 并且多等位基因位点在 VCF 中跨多行拆分,则设置为 True,以便在将 CallVariantsOutput 转换为 Variants 时不会对变异进行分组。(默认值:None)

--filter-reads-too-long

忽略所有大小 > 512bp 的输入 BAM 读取(默认值:None)

--haploid-contigs HAPLOID_CONTIGS

非常染色体染色体的可选列表。对于所有列出的染色体,不考虑 HET 概率。(默认值:None)

性能选项

--bwa-nstreams BWA_NSTREAMS

每个 GPU 要使用的流数;注意:更多流会增加设备内存使用量(默认值:4)

--bwa-cpu-thread-pool BWA_CPU_THREAD_POOL

每个 GPU 要分配给 CPU 线程池的线程数(默认值:16)

--num-cpu-threads-per-stage NUM_CPU_THREADS_PER_STAGE

(与上述相同)每个 GPU 要分配给 CPU 线程池的线程数(默认值:None)

--gpuwrite

使用一个 GPU 来加速写入最终 BAM/CRAM。(默认值:None)

--gpuwrite-deflate-algo GPUWRITE_DEFLATE_ALGO

选择与 --gpuwrite 一起使用的 nvCOMP DEFLATE 算法。请注意,这些选项与 CPU DEFLATE 选项不对应。有效选项为 1、2 和 4。选项 1 最快,而选项 2 和 4 的吞吐量逐渐降低,但压缩率更高。当用户未提供输入时(即 None),默认值为 1(默认值:None)

--gpusort

使用 GPU 来加速排序和标记。(默认值:None)

--use-gds

使用 GPUDirect Storage (GDS) 来启用直接数据路径,以实现 GPU 内存和存储之间的直接内存访问 (DMA) 传输。必须与 --gpuwrite 同时使用。有关如何设置和使用 GPUDirect Storage 的信息,请参阅 Parabricks 文档 > 最佳性能。(默认值:None)

--memory-limit MEMORY_LIMIT

排序和排序后的系统内存限制(以 GB 为单位)。默认情况下,限制为系统总内存的一半。(默认值:62)

--low-memory

使用低内存模式;将降低每个 GPU 的流数(默认值:None)

--num-cpu-threads-per-stream NUM_CPU_THREADS_PER_STREAM

每个流要使用的 CPU 线程数。(默认值:6)

--num-streams-per-gpu NUM_STREAMS_PER_GPU

每个 GPU 要使用的流数。(默认值:2)

--run-partition

将整个基因组划分为多个分区,并同时运行多个进程,每个进程在一个分区上运行。(默认值:None)

--gpu-num-per-partition GPU_NUM_PER_PARTITION

每个分区要使用的 GPU 数量。(默认值:None)

--max-reads-per-partition MAX_READS_PER_PARTITION

在考虑后续处理(如采样和重新比对)之前,每个分区要考虑的最大读取数。(默认值:1500)

--partition-size PARTITION_SIZE

在将区域拆分为多个较小的子区域之前,区域中允许的最大碱基对数。(默认值:1000)

--read-from-tmp-dir

运行变异调用器,从 Aligner 和 sort 生成的 bin 文件中读取。并行运行 postsort。此选项将增加设备内存使用量。(默认值:None)

常用选项

--logfile LOGFILE

日志文件的路径。如果未指定,消息将仅写入标准错误输出。(默认值:None)

--tmp-dir TMP_DIR

将存储临时文件的目录的完整路径。

--with-petagene-dir WITH_PETAGENE_DIR

PetaGene 安装目录的完整路径。默认情况下,应将其安装在 /opt/petagene 中。使用此选项还需要通过设置 LD_PRELOAD 环境变量来预加载 PetaLink 库。可选地设置用于数据和凭据的 PETASUITE_REFPATH 和 PGCLOUD_CREDPATH 环境变量(默认值:None)

--keep-tmp

完成操作后,不要删除存储临时文件的目录。

--no-seccomp-override

不要覆盖 docker 的 seccomp 选项(默认值:None)。

--version

查看兼容的软件版本。

GPU 选项

--num-gpus NUM_GPUS

运行要使用的 GPU 数量。将使用 GPU 0..(NUM_GPUS-1)。

注意

--in-fq 选项采用两个 FASTQ 文件的名称,后跟可选的带引号的读取组。FASTQ 文件名不得以连字符开头。

上一篇 deepvariant
下一篇 fq2bam (BWA-MEM + GATK)
© 版权所有 2025,Nvidia。 上次更新时间:2025 年 1 月 13 日。