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 环境将在下次运行时找到 🤗 Diffusers 的 main 版本。

缓存

模型权重和文件从 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 的版本,请求的模型或管道类,以及如果预训练检查点托管在 Hugging Face Hub 上,则包括其路径。这些使用数据有助于我们调试问题并优先考虑新功能。只有在从 Hub 加载模型和管道时才会发送遥测信息,如果您加载本地文件,则不会收集遥测信息。

我们理解并非所有人都希望共享额外信息,我们尊重您的隐私。您可以通过在终端设置 DISABLE_TELEMETRY 环境变量来禁用遥测信息的收集。

在 Linux/MacOS 上

export DISABLE_TELEMETRY=YES

在 Windows 上

set DISABLE_TELEMETRY=YES
< > 在 GitHub 上更新