Diffusers 文档

安装

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

安装

🤗 Diffusers 在 Python 3.8+、PyTorch 1.7.0+ 和 Flax 上进行了测试。请按照以下安装说明进行操作,以安装您正在使用的深度学习库

使用 pip 安装

您应该在虚拟环境中安装 🤗 Diffusers。如果您不熟悉 Python 虚拟环境,请查看这份指南。虚拟环境使您可以更轻松地管理不同的项目,并避免依赖项之间的兼容性问题。

首先在您的项目目录中创建一个虚拟环境

python -m venv .env

激活虚拟环境

source .env/bin/activate

您还应该安装 🤗 Transformers,因为 🤗 Diffusers 依赖于它的模型

Pytorch
隐藏 Pytorch 内容

注意 - PyTorch 在 Windows 上仅支持 Python 3.8 - 3.11。

pip install diffusers["torch"] transformers
JAX
隐藏 JAX 内容
pip install diffusers["flax"] transformers

使用 conda 安装

激活您的虚拟环境后,使用 conda(由社区维护)

conda install -c conda-forge diffusers

从源码安装

在从源码安装 🤗 Diffusers 之前,请确保您已安装 PyTorch 和 🤗 Accelerate。

安装 🤗 Accelerate

pip install accelerate

然后从源码安装 🤗 Diffusers

pip install git+https://github.com/huggingface/diffusers

此命令安装的是前沿的 main 版本,而不是最新的 stable 版本。main 版本对于保持与最新开发同步非常有用。例如,如果自上次正式发布以来已修复了一个错误,但尚未推出新版本。但是,这意味着 main 版本可能并不总是稳定的。我们力求保持 main 版本的可操作性,并且大多数问题通常会在几个小时或一天内解决。如果您遇到问题,请打开一个 Issue,以便我们更快地修复它!

可编辑安装

如果您想执行以下操作,则需要可编辑安装:

  • 使用源代码的 main 版本。
  • 贡献 🤗 Diffusers 并需要测试代码中的更改。

克隆存储库并使用以下命令安装 🤗 Diffusers

git clone https://github.com/huggingface/diffusers.git
cd diffusers
Pytorch
隐藏 Pytorch 内容
pip install -e ".[torch]"
JAX
隐藏 JAX 内容
pip install -e ".[flax]"

这些命令会将您克隆存储库的文件夹链接到您的 Python 库路径。现在,Python 除了正常的库路径之外,还会在您克隆到的文件夹中查找。例如,如果您的 Python 包通常安装在 ~/anaconda3/envs/main/lib/python3.10/site-packages/ 中,则 Python 也会搜索您克隆到的 ~/diffusers/ 文件夹。

如果您想继续使用该库,则必须保留 diffusers 文件夹。

现在,您可以使用以下命令轻松地将克隆更新到 🤗 Diffusers 的最新版本

cd ~/diffusers/
git pull

您的 Python 环境将在下次运行时找到 main 版本的 🤗 Diffusers。

缓存

模型权重和文件从 Hub 下载到缓存中,缓存通常是您的主目录。您可以通过指定 HF_HOMEHUGGINFACE_HUB_CACHE 环境变量或在 from_pretrained() 等方法中配置 cache_dir 参数来更改缓存位置。

缓存文件允许您离线运行 🤗 Diffusers。为防止 🤗 Diffusers 连接到互联网,请将 HF_HUB_OFFLINE 环境变量设置为 True,🤗 Diffusers 将仅加载缓存中先前下载的文件。

export HF_HUB_OFFLINE=True

有关管理和清理缓存的更多详细信息,请查看 缓存 指南。

遥测日志

我们的库在 from_pretrained() 请求期间收集遥测信息。收集的数据包括 🤗 Diffusers 和 PyTorch/Flax 的版本、请求的模型或 pipeline 类,以及预训练检查点的路径(如果它托管在 Hugging Face Hub 上)。此使用情况数据有助于我们调试问题并确定新功能的优先级。遥测仅在从 Hub 加载模型和 pipelines 时发送,如果您加载本地文件,则不会收集遥测数据。

我们理解并非每个人都希望分享其他信息,我们尊重您的隐私。您可以通过从终端设置 DISABLE_TELEMETRY 环境变量来禁用遥测收集

在 Linux/MacOS 上

export DISABLE_TELEMETRY=YES

在 Windows 上

set DISABLE_TELEMETRY=YES
< > 在 GitHub 上更新