pharokka是一款專用于噬菌體基因組及宏基因組的快速標準化注釋工具。PS.仍在積極更新中,最近一次更新是在今年6.20。
若需對細菌基因組進行快速標準化注釋,建議使用Bakta。啟發pharokka開發及命名的Prokka也是優秀選擇,但Bakta實為Prokka的卓越繼任者。phold是同一作者開發的另一個噬菌體注釋軟件,其利用結構同源性來優化噬菌體注釋。phold 在注釋效果上顯著優于 pharokka,尤其對于特征較少的噬菌體(例如來自宏基因組數據集的噬菌體)。目前,pharokka 仍具備一些 phold 尚未支持的功能(如 tRNA、tmRNA、CRISPR 重復序列識別 以及 INPHARED 分類搜索),因此建議在運行 pharokka 后再運行 phold 進行補充注釋。phold 可直接將 pharokka 的 Genbank 輸出文件 作為輸入。也就是說,如果用 pharokka 注釋過的噬菌體基因組,只需通過 phold 即可輕松升級注釋結果,獲得更豐富的功能預測信息。
pharokka安裝和使用
如果不想安裝,也有galaxy在線服務器可以使用:Galaxy Europe webserver
除了下面列出的conda,也可以使用Pip、源代碼或docker等容器進行安裝和使用。
# pharokka
conda install -c bioconda pharokka
# pharokka數據庫下載
install_databases.py -o <path/to/databse_dir>
# 國內估計得用這個網址或想點辦法
wget "https://zenodo.org/record/8276347/files/pharokka_v1.4.0_databases.tar.gz"
tar -xzf pharokka_v1.4.0_databases.tar.gz
# 注釋
pharokka.py -i <phage fasta file> -o <output directory> -d <path/to/database_dir> -t <threads>
# pharokka v1.7.0 新增多序列繪圖功能
pharokka_multiplotter.py -g pharokka.gbk -o pharokka_plots_output_directory
pharokka原理和結果說明
pharokka 是一款專為噬菌體基因組設計的快速標準化注釋工具,默認使用噬菌體特異性基因預測工具 PHANOTATE(也可選 Prodigal/pyrodigal)。它通過 MMseqs2 比對 PHROGs/CARD/VFDB 數據庫進行功能注釋,并從 v1.4.0 起新增 PyHMMER 的隱馬爾可夫模型提升 PHROGs 注釋靈敏度。其核心輸出包括可直接用于下游分析(如 Roary)的 GFF 文件,以及統計 CDS、tRNA、CRISPR 和功能注釋的 cds_functions.tsv 文件。若需進一步優化注釋,可將其 Genbank 輸出導入 phold 進行基于結構同源性的增強分析。
pharokka.py [-h] [-i 輸入文件] [-o 輸出目錄] [-d 數據庫目錄] [-t 線程數] [其他選項...]
- 必需參數-i 輸入FASTA文件 | -o 輸出目錄
- 主要選項-t 線程數 | -g 基因預測工具(phanotate/prodigal) | -e E值閾值(默認1E-05)--meta 宏基因組模式 | --fast 僅用PyHMMER加速注釋 | --dnaapler 自動調整基因組方向
- 高級控制--skip_extra_annotations 跳過tRNA/CRISPR檢測 | --genbank 輸入GenBank文件重新注釋
phold安裝和使用
phold 采用 ProstT5 蛋白質語言模型(深度學習模型),將氨基酸序列快速轉化為 3Di 結構token編碼,并通過 Foldseek 比對包含 100 萬+ 噬菌體蛋白結構的數據庫(該數據庫主要基于 Colabfold 預測構建)。
# conda安裝
mamba create -n pholdENV -c conda-forge -c bioconda phold
# nvidia gpu版本,還有mac m芯片版本(可能用的人不多,沒摘錄)
mamba create -n pholdENV -c conda-forge -c bioconda phold pytorch=*=cuda*
# 運行
phold run -i tests/test_data/NC_043029.gbk -o test_output_phold -t 8
phold結果說明
若本地工作站配備 GPU,建議使用完整流程命令phold run,如果沒有gpu,添加–cpu參數。
phold run 命令核心參數說明▌ 基礎參數-i 輸入文件路徑 (必需,支持GenBank/FASTA格式)-o 輸出目錄 [默認: output_phold]-t 線程數 [默認: 1]-p 輸出文件前綴 [默認: phold]▌ 數據庫與性能-d 指定phold數據庫路徑--batch_size ProstT5批處理大小 [默認1,推薦GPU使用]--cpu 強制使用CPU模式--keep_tmp_files 保留臨時文件(含完整Foldseek結果)▌ 高級分析選項-e Foldseek E值閾值 [默認1e-3]--card_vfdb_evalue CARD/VFDB專用E值 [默認1e-10]--ultra_sensitive 超敏感模式(跳過預過濾,小數據集適用)--only_representatives 僅比對聚類代表序列▌ 特殊功能--separate 為每個contig生成獨立GenBank文件--finetune 啟用實驗性PhrostT5微調模型(不推薦常規使用)--save_per_residue_embeddings 保存殘基級嵌入數據使用示例:
phold run -i input.gbk -o results -t 8 --batch_size 4注:GPU環境下推薦直接使用默認參數運行,大數據集建議調整--max_seqs限制結果數量
_aa.fasta
保存所有預測編碼序列(CDS)的氨基酸序列_3di.fasta
包含由ProstT5預測的所有CDS的Foldseek 3Di結構序列.gbk
生成包含完整注釋信息的GenBank格式文件_all_cds_functions.tsv
按contig統計的匯總數據:CDS總數各PHROG功能分類的CDS數量CARD/VFDB/Defensefinder/ACR數據庫匹配的CDS數量_per_cds_predictions.tsv
每個CDS的詳細注釋信息表注:所有輸出文件均以用戶指定的前綴開頭(默認"phold_")3Di序列文件可用于后續結構比對研究
參考:
- https://github.com/gbouras13/phold
- https://github.com/gbouras13/pharokka
- Galaxy Europe webserver:https://usegalaxy.eu/?tool_id=toolshed.g2.bx.psu.edu%2Frepos%2Fiuc%2Fpharokka%2Fpharokka%2F1.2.1%2Bgalaxy1&version=1.2.1%20galaxy1