3.8 KiB
3.8 KiB
Phase 1 How-To: BAM → VCF → Annotate → Panel Report
本文件說明如何用現有 CLI 從 BAM 執行到報告輸出,選項意義,以及可跳過步驟的用法。假設已安裝 GATK、VEP、bcftools/tabix,並以 pip install -e . 安裝本專案。
流程總覽
- Trio variant calling → joint VCF
- VEP 註解 → annotated VCF + 平坦 TSV
- Panel/phenotype 查詢 + ACMG 標籤 → Markdown/JSON 報告
可用phase1-run一鍵(可跳過 call/annotate),或分步run-call/run-annotate/panel-report。
分步執行
1) Variant calling(GATK)
genomic-consultant run-call \
--sample proband:/path/proband.bam \
--sample father:/path/father.bam \
--sample mother:/path/mother.bam \
--reference /refs/GRCh38.fa \
--workdir /tmp/trio \
--prefix trio \
--log /tmp/trio/run_call_log.json \
--probe-tools
--sample:sample_id:/path/to.bam,可重複。--reference: 參考序列。--workdir: 輸出與中間檔位置。--prefix: 輸出檔名前綴。--log: run log(JSON)路徑。- 輸出:joint VCF (
/tmp/trio/trio.joint.vcf.gz)、run log(含指令/returncode)。
2) Annotation(VEP + bcftools)
genomic-consultant run-annotate \
--vcf /tmp/trio/trio.joint.vcf.gz \
--workdir /tmp/trio/annot \
--prefix trio \
--reference /refs/GRCh38.fa \
--plugin 'SpliceAI,snv=/path/spliceai.snv.vcf.gz,indel=/path/spliceai.indel.vcf.gz' \
--plugin 'CADD,/path/whole_genome_SNVs.tsv.gz,/path/InDels.tsv.gz' \
--extra-flag "--cache --offline" \
--log /tmp/trio/annot/run_annot_log.json \
--probe-tools
--plugin: VEP plugin 規格,可重複(示範 SpliceAI/CADD)。--extra-flag: 附加給 VEP 的旗標(如 cache/offline)。- 輸出:annotated VCF (
trio.vep.vcf.gz)、平坦 TSV (trio.vep.tsv)、run log。
3) Panel/Phenotype 報告
使用 panel 檔:
genomic-consultant panel-report \
--tsv /tmp/trio/annot/trio.vep.tsv \
--panel configs/panel.example.json \
--acmg-config configs/acmg_config.example.yaml \
--individual-id proband \
--max-af 0.05 \
--format markdown \
--log /tmp/trio/panel_log.json
使用 phenotype 直譯 panel:
genomic-consultant panel-report \
--tsv /tmp/trio/annot/trio.vep.tsv \
--phenotype-id HP:0000365 \
--phenotype-mapping configs/phenotype_to_genes.hpo_seed.json \
--acmg-config configs/acmg_config.example.yaml \
--individual-id proband \
--max-af 0.05 \
--format markdown
--max-af: 過濾等位基因頻率上限。--format:markdown或json。- 輸出:報告文字 + run log(記錄 panel/ACMG config 的 hash)。
一鍵模式(可跳過 call/annotate)
已經有 joint VCF/TSV 時,可跳過前兩步:
genomic-consultant phase1-run \
--workdir /tmp/trio \
--prefix trio \
--tsv /tmp/trio/annot/trio.vep.tsv \
--skip-call --skip-annotate \
--panel configs/panel.example.json \
--acmg-config configs/acmg_config.example.yaml \
--max-af 0.05 \
--format markdown \
--log-dir /tmp/trio/runtime
若要實際跑 VEP,可移除 --skip-annotate 並提供 --plugins/--extra-flag;若要跑 calling,移除 --skip-call 並提供 --sample/--reference。
主要輸出
- joint VCF(呼叫結果)
- annotated VCF + 平坦 TSV(含 gene/consequence/ClinVar/AF/SpliceAI/CADD 等欄位)
- run logs(JSON,含指令、return code、config hash;在
--log或--log-dir) - Panel 報告(Markdown 或 JSON),附 ACMG 自動標籤,需人工複核
注意
- Call/annotate 依賴外部工具與對應資源(參考序列、VEP cache、SpliceAI/CADD 資料)。
- 若無 BAM/資源,可用 sample TSV:
phase1-run --tsv sample_data/example_annotated.tsv --skip-call --skip-annotate ...演示報告。 - 安全:
.gitignore已排除大型基因檔案;建議本地受控環境執行。