文章目录
PlasFlow安装全流程详解(含依赖版本与环境配置)
PlasFlow 是一款基于深度学习的质粒识别工具,广泛应用于宏基因组和微生物组装数据中质粒与染色体序列的自动分类。由于 PlasFlow 依赖较老的 Python 及深度学习库,很多用户在安装时会遇到“依赖地狱”问题。本文将详细梳理 PlasFlow 的安装要求、依赖包版本,并给出完整的环境配置和安装流程,帮助你顺利运行 PlasFlow。
一、PlasFlow安装环境要求
- 操作系统:Linux(推荐),Windows 10 WSL/虚拟机亦可
- Python版本:必须为 Python 3.5(高于3.5会因依赖不兼容报错)
- 依赖库:
- keras==2.0.8
- tensorflow==1.2.1
- h5py==2.7.0
- numpy==1.13.1
- protobuf==3.6.1
注意:新版本的 protobuf、keras、tensorflow 等均不兼容 PlasFlow,务必锁定上述版本!
二、conda环境配置
1. 创建 Python 3.5 环境
conda create -n plasflow_env python=3.5
conda activate plasflow_env
2. 安装依赖包(指定版本)
pip install keras==2.0.8 tensorflow==1.2.1 h5py==2.7.0 numpy==1.13.1 protobuf==3.6.1
提示:如遇 pip 版本过新导致依赖冲突,可先降级 pip:
pip install pip==20.3.4
三、PlasFlow源码安装
1. 下载 PlasFlow 源码
git clone https://github.com/smaegol/PlasFlow.git
cd PlasFlow
2. 安装 PlasFlow
python setup.py install
四、模型文件准备
首次运行 PlasFlow 时,程序会自动下载神经网络模型文件(约200MB),也可手动下载并放在 PlasFlow/models/
目录下。
五、PlasFlow使用示例
假设你的组装 contig 文件为 contigs.fasta
,运行 PlasFlow:
PlasFlow.py --input contigs.fasta --output plasflow_result.tsv
常用参数说明:
--input
:输入的fasta格式序列文件--output
:输出结果文件(tsv格式)--threshold
:分类概率阈值(默认0.7,建议不低于0.7)--models
:模型文件目录(如未指定,默认自动下载到PlasFlow/models/
)
六、常见问题与解决方案
-
protobuf requires Python ‘>=3.7’
说明你在 Python 3.5 环境下安装了新版 protobuf,需卸载后安装 3.6.1 版本:pip uninstall protobuf pip install protobuf==3.6.1
-
Keras/TensorFlow 版本冲突
必须严格指定 keras2.0.8 和 tensorflow1.2.1,否则会因API变动报错。 -
输入 contig 太短
建议输入序列长度大于1kb,否则分类准确性下降。 -
pip install plasflow 报错
不要直接用 pip 安装 PlasFlow,务必用源码安装并手动管理依赖。
七、总结
PlasFlow 的安装对环境和依赖版本要求极为严格,推荐用 conda 新建 Python 3.5 环境,手动安装所有依赖,并用源码安装 PlasFlow。本流程亲测可用,适合绝大多数主流 Linux 服务器和生信分析平台。
八、参考资料
如有安装报错或运行问题,欢迎留言交流!