当前位置: 首页 > news >正文

争对机器学习和深度学习里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字段来声明依赖。这个再上一个有。

http://www.xdnf.cn/news/455833.html

相关文章:

  • 用FileCodeBox打造私有文件传输:Ubuntu环境保姆级部署教程!
  • 《C++ vector详解》
  • Python----神经网络(基于DNN的风电功率预测)
  • GpuGeek:为创新者提供灵活、快速、高效的云计算服务!
  • PHP基础知识
  • 以项目的方式学QT开发(二)
  • Apple Vision Pro空间视频创作革命:从180度叙事到沉浸式语法的重构——《Adventure》系列幕后技术深度解析
  • AI浪潮:开启科技新纪元
  • 数据分析NumPy
  • wps excel将表格输出pdf时所有列在一张纸上
  • RabbitMQ 消息模式实战:从简单队列到复杂路由(一)
  • 数据可视化-----子图的绘制及坐标轴的共享
  • C语言经典笔试题目分析(持续更新)
  • conda更换清华源
  • Spring Cloud探索之旅:从零搭建微服务雏形 (Eureka, LoadBalancer 与 OpenFeign实战)
  • Synchronized详解及高频面试问答
  • CSRF 和 XSS 攻击分析与防范
  • Python爬虫第21节- 基础图形验证码识别实战
  • 前端的面试笔记——JavaScript篇(二)
  • 数字孪生工厂实战指南:基于Unreal Engine/Omniverse的虚实同步系统开发
  • 图像颜色理论与数据挖掘应用的全景解析
  • OrangePi Zero 3学习笔记(Android篇)9 - I2C和从设备
  • 【AI News | 20250514】每日AI进展
  • 如何通过命令提示符(CMD)检查虚拟化是否已启用
  • 任意复杂度的 JSON 数据转换为多个结构化的 Pandas DataFrame 表格
  • 吊舱夜视聚光灯模块设计的要点概述
  • vxe-table 同时实现合并单元格与任意列展开行
  • gmsh读取 STEP 文件并划分网格
  • eBPF 开源项目 Cilium 深入分析
  • Express项目解决跨域问题