前言

环境配置真是折磨人。由于版本兼容问题,整个过程就是不停的在conda上新建环境,下载依赖,删除环境,再新建环境,下载依赖,直到这个环境没有依赖冲突,测试代码顺利通过。而这个过程总是出现一些奇葩问题,比如torch2.4会出现fbgemm.dll找不到的错误,即便下载运行Visual C++ 2022 vc_redist.x64.exe 也无济于事,而降级到torch2.3就能正常运行了。这个过程很痛苦,决定把用到的指令记录出来,朱记之。


一、conda环境相关指令

以下指令都是在Anaconda Prompt执行。打开终端会先在base环境中执行

conda env list #查看有哪些环境
conda create -n your_envname python=3.11 -y #需要输入一次 y

创建环境后是激活才能用:

conda activate your_envname #激活后就可以在这个环境安装依赖了

卸载前要先失活:

conda decativate #执行后会退回到base环境
conda remove --name your_envname --all

二、安装与测试指令

这个按我的安装依赖顺序展示,安装完之后最好立马就测试。

1. 安装 PyTorch 2.3+cpu

本地没有显卡,选择cpu版本的torch

pip install torch==2.3.0+cpu --index-url https://download.pytorch.org/whl/cpu 

紧接着安装numpy,然后两个一起测试,至于为什么要这样,真的是经验之谈!

pip install numpy==1.26.4 

测试指令:

python -c "import torch; import numpy; print('Torch 版本:', torch.__version__); print('Numpy 版本:', numpy.__version__); print('Torch 转 Numpy 测试:', torch.tensor([1,2,3]).numpy())"  

在这里插入图片描述

2. 安装pytorch几何库

pip install torch-geometric==2.4.0 torch_scatter==2.1.2+pt23cpu torch_cluster==1.6.3+pt23cpu torch_sparse==0.6.18+pt23cpu torch_spline_conv==1.2.2+pt23cpu -f https://data.pyg.org/whl/torch-2.3.0+cpu.html 

3. 安装 ESM-2 及序列处理库

安装完成,直接测试。晚测不如早测!这个测试会下载一个小模型到指定文件夹。

# 安装 ESM-2 稳定版(支持最小模型)
pip install fair-esm==2.0.0  # 注意包名是 fair-esm,而非 esm
# 测试esm-2
python -c "import esm; model, alphabet = esm.pretrained.esm2_t6_8M_UR50D(); print('ESM-2 最小模型加载成功')"

在这里插入图片描述

4. 安装序列处理库

# 安装 transformers(与 ESM-2 2.0.0 兼容)
pip install transformers==4.30.2  

# 生物信息库(适配当前环境)
pip install biopython==1.81 MDAnalysis==2.8.0  

5.安装数据处理与机器学习库

pip安装有网络超时问题,清华源也不稳定,用conda试试

conda install -c conda-forge numpy=1.26.4 pandas=2.1.4 scikit-learn=1.5.2 xgboost=2.0.3 matplotlib=3.8.4 seaborn=0.13.1 joblib=1.3.2 tqdm=4.66.4  

但是执行conda也有坑,那就是我设置那个下载文件的时候有替换镜像源,所以还是分批老老实实用pip吧

# 分批次安装,每次只装1-2个包,降低冲突概率
pip install numpy==1.26.4 --timeout 1800 -i https://pypi.tuna.tsinghua.edu.cn/simple  
pip install pandas==2.1.4  --timeout 1800  -i https://mirrors.aliyun.com/pypi/simple/    
pip install scikit-learn==1.5.2 xgboost==2.0.3 --timeout 1800 -i https://mirrors.aliyun.com/pypi/simple/ 
pip install tqdm==4.66.4 matplotlib==3.8.4 seaborn==0.13.1 joblib==1.3.2 --timeout 1800 -i https://mirrors.aliyun.com/pypi/simple/

测试一下有没有下载好依赖

# 用 Conda 检查(若用 Conda 安装)
conda list | findstr "numpy pandas scikit-learn xgboost matplotlib seaborn joblib tqdm"  

# 或用 Pip 检查(若用 Pip 安装)
pip list | findstr "numpy pandas scikit-learn xgboost matplotlib seaborn joblib tqdm"  

完美!
在这里插入图片描述


三、 整体测试代码

# 1. 验证 PyTorch 及几何库
import torch
import torch_geometric
import torch_scatter
print(f"PyTorch 版本: {torch.__version__} | 几何库版本: {torch_geometric.__version__}")

# 2. 验证 ESM-2 最小模型加载
import esm
model, alphabet = esm.pretrained.esm2_t6_8M_UR50D()  # 最小模型
print("ESM-2 模型加载成功")

# 3. 验证序列处理库
from Bio import SeqIO
import MDAnalysis as mda
print(f"Biopython 版本: {SeqIO.__version__} | MDAnalysis 版本: {mda.__version__}")

# 4. 验证数据处理与机器学习库
import numpy as np
import pandas as pd
from sklearn.ensemble import RandomForestRegressor
import xgboost as xgb
print(f"Numpy 版本: {np.__version__} | XGBoost 版本: {xgb.__version__}")

在这里插入图片描述完美!

最后 可以用pip freeze指令在conda将环境安装的依赖展示出来。


总结

环境配置就是不断试错改错的过程,没有效率,就只好堆时间了。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐