AI 开发的一些常用知识

1. HF 相关的环境变量

HF(Hugging Face)库使用了多个环境变量来配置其行为,特别是在模型下载和缓存管理方面。以下是一些常见的Hugging Face相关环境变量:

  1. TRANSFORMERS_CACHE:用于设置Transformers库模型和配置文件的缓存目录。
  2. HF_HOME:设置Hugging Face库的主目录,用于存放模型和tokenizers的缓存。
  3. HF_DATASETS_CACHE:用于设置Datasets库的缓存目录。
  4. HF_METRICS_CACHE:用于设置Metrics库的缓存目录。
  5. HF_MODULES_CACHE:用于设置Hugging Face Hub的模块缓存目录。
  6. TRANSFORMERS_VERBOSITY:用来设置库的日志级别,如”info”、”error”、”warning”等。
  7. HF_HUB_CACHE:用于设置模型和其他文件的默认缓存位置。
  8. HF_HUB_DISABLE_OUTDATED_WARNING:设置为”1″可以禁用过时警告。
  9. TRANSFORMERS_OFFLINE:设置为”1″后,Transformers库将在离线模式下运行,只使用本地缓存的文件。
  10. HF_HUB_TOKEN:用于认证和下载需要权限的模型。
  11. HF_ENDPOINT: 用于指定与 Hugging Face Hub 连接的自定义服务器地址

这些环境变量可以帮助用户自定义和优化他们的工作流程,特别是在处理大量数据和模型时,或者在有限的网络连接环境下工作。通过设置这些环境变量,用户可以控制模型和数据的下载、缓存和存储位置。

设置环境变量的方法取决于你使用的操作系统。下面我将为Windows、Linux和macOS操作系统提供一些示例。

1.1 对于Windows

在Windows系统中,你可以使用命令提示符或PowerShell来设置环境变量。例如,设置TRANSFORMERS_CACHE

命令提示符:

PowerShell:

这些命令只会在当前的命令行会话中有效。若要永久设置环境变量,你可以在系统的“环境变量”设置中添加它们。

1.2 对于Linux和macOS

在Linux或macOS系统中,你可以在shell中使用export命令设置环境变量。这可以在终端中临时设置,或者添加到你的~/.bashrc~/.zshrc或其他shell配置文件中,以实现持久设置。

添加到配置文件后,每次打开新的终端窗口时,环境变量就会自动设置。

1.3 实用示例

1.3.1 设置模型缓存位置

1.3.2设置数据集缓存位置

1.3.3 在离线模式下运行Transformers

1.3.4 设置日志级别为警告

1.3.5 自定义服务器地址

可以设置国内的镜像网站

通过这些示例,你可以根据自己的需求配置Hugging Face库的行为,优化本地开发环境。

1.3.6 使用 huggingface-cli 下载

2. 常用的 PyPI 镜像源

在 pip 安装的时候,可以使用 pip 的 -i 参数

原生地址

清华大学

阿里云

中国科技大学

豆瓣(douban)

3. 设置 CUDA_VISIBLE_DEVICES 参数

CUDA_VISIBLE_DEVICES 是一个环境变量,用于控制 CUDA 应用程序(如 TensorFlow 或 PyTorch 使用的应用)可见的 GPU 设备。通过设置这个环境变量,你可以指定哪些 GPU 设备应该被应用程序识别和使用。这是在多GPU系统上进行资源管理和隔离的一种有效方式。

使用单个GPU

这个设置使得只有编号为 0 的 GPU 对 CUDA 应用程序可见。

指定多个GPU

这将使应用程序能看到编号为 0、1 和 2 的 GPU。

禁用所有GPU

这将导致没有 GPU 被 CUDA 应用程序检测到,可以用来测试 CPU-only 的代码路径。

4. 设置CUDA的动态库路径和运行路径

在Linux 环境下可能需要设置 cuda 的一些路径

5. 查看 torch 版本

如果是CUDA版本,显示 2.3.0+cu121

查看 cuda 是否有效

如果有效,则返回 True

6. torch 的安装方法

参照 https://pytorch.org/

6.1 Linux + Python

6.1.1 Conda + CUDA11.8

6.1.2 Conda + CUDA12.1

6.1.3 Conda + CPU

6.1.4 Pip + CUDA11.8

6.1.5 Pip + CUDA12.1

6.1.6 Pip + ROCm6.0 (AMD)

6.1.7 Pip + CPU

6.2 Mac + Python

6.1.1 Conda

6.1.2 Pip

6.3 Windows + Python

6.3.1 Conda + CUDA11.8

6.3.2 Conda + CUDA12.1

6.3.3 Conda + CPU

6.3.4 Pip + CUDA11.8

6.3.5 Pip + CUDA12.1

6.3.6 Pip + CPU

7. 判断 当前使用的 python 路径

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部