争对机器学习和深度学习里Python项目开发管理项目依赖的工具中方便第三方库和包的安装
1.requirements.txt
2.environment.yaml
3.dependencies
以下介绍三种environment.yaml、requirements.txt、 dependencies文件使用,方便每次在不同设备上训练模型和运行模型安装库和包快一点,这里争对深度学习和机器学习时,具体还要看项目复杂程度,来选择。传统一个一个安装所需要的包,参考之前文章在电脑上或在服务器上,CPU或GPU机器学习模型算法代码需要在环境中安装的库和包或使用MobaXterm连接服务器并利用Anaconda进行安装pytoch框架跑深度学习模型(使用学校服务器+显卡进行深度学习)。
一、requirements.txt
这是Python项目中最常见的依赖管理文件,通常用于pip工具。它列出了项目所需的所有Python包及其版本。轻量级,适合简单的Python项目,仅管理Python包,不涉及环境或其他系统依赖。
requirements.txt文件里内容如下:requirements.txt 是一个文本文件,其中罗列了项目所需的所有 Python 包及其版本号
numpy==1.21.0
scikit-learn=1.3.0
flask==2.0.1
matplotlib=3.7.2
joblib==1.0.1
numpy==1.21.2
pandas==1.3.3
scikit-learn==0.24.2
xgboost==1.4.2
tensorflow=2.11.0
安装方式如下:此方法需在已创建环境下,并激活环境
pip install -r requirements.txt #-r 代表从文件中读取依赖包列表
二、environment.yaml
这是conda环境的配置文件,用于创建和管理conda虚拟环境。它不仅包含Python包,还能指定Python版本、非Python依赖(如C库)以及环境名称。YAML格式,包含**环境名、依赖项、渠道(channels)**等信息。这个比上一个更强大,适合数据科学或需要复杂依赖的项目。可以混合管理conda和pip安装的包。
environment.yaml文件里内容如下:环境名、默认源、依赖项
name: ML
channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- conda-forge- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/- https://repo.anaconda.com/pkgs/main- https://repo.anaconda.com/pkgs/r
dependencies:- python=3.8- numpy=1.24- pandas=2.0- tensorflow=2.11- scikit-learn=1.3- jupyterlab- pip: #通过pip安装的包- torch==1.11.0- jupyterlab==4.3.6 # 交互式笔记本
prefix: /data/home/sgt_wkl/software/miniconda3/envs/ML
安装方式如下:
conda env create -f environment.yaml #创建环境conda activate ML #激活环境
三、dependencies
指项目运行所需的依赖项,可能出现在多种配置文件中(如pyproject.toml、setup.py或package.json等)。在Python生态中,现代工具如Poetry或Pipenv会用dependencies字段来声明依赖。这个再上一个有。