#
Installation

Install 🤗 Diffusers for whichever deep learning library you’re working with.

🤗 Diffusers is tested on Python 3.7+, PyTorch 1.7.0+ and Flax. Follow the installation instructions below for the deep learning library you are using:

- PyTorch installation instructions.
- Flax installation instructions.

##
Install with pip

You should install 🤗 Diffusers in a virtual environment. If you’re unfamiliar with Python virtual environments, take a look at this guide. A virtual environment makes it easier to manage different projects and avoid compatibility issues between dependencies.

Start by creating a virtual environment in your project directory:

    python -m venv .env

Activate the virtual environment:

    source .env/bin/activate

🤗 Diffusers also relies on the 🤗 Transformers library, and you can install both with the following command:

Pytorch
Hide Pytorch content

    pip install diffusers["torch"] transformers

JAX
Hide JAX content

    pip install diffusers["flax"] transformers

##
Install from source

Before installing 🤗 Diffusers from source, make sure you have `torch` and 🤗 Accelerate installed.

For `torch` installation, refer to the `torch` installation guide.

To install 🤗 Accelerate:

    pip install accelerate

Install 🤗 Diffusers from source with the following command:

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

This command installs the bleeding edge `main` version rather than the latest `stable` version. The `main` version is useful for staying up-to-date with the latest developments. For instance, if a bug has been fixed since the last official release but a new release hasn’t been rolled out yet. However, this means the `main` version may not always be stable. We strive to keep the `main` version operational, and most issues are usually resolved within a few hours or a day. If you run into a problem, please open an Issue, so we can fix it even sooner!

##
Editable install

You will need an editable install if you’d like to:

- Use the `main` version of the source code.
- Contribute to 🤗 Diffusers and need to test changes in the code.

Clone the repository and install 🤗 Diffusers with the following commands:

    git clone https://github.com/huggingface/diffusers.git
    cd diffusers

Pytorch
Hide Pytorch content

    pip install -e ".[torch]"

JAX
Hide JAX content

    pip install -e ".[flax]"

These commands will link the folder you cloned the repository to and your Python library paths. Python will now look inside the folder you cloned to in addition to the normal library paths. For example, if your Python packages are typically installed in `~/anaconda3/envs/main/lib/python3.7/site-packages/`, Python will also search the `~/diffusers/` folder you cloned to.

You must keep the `diffusers` folder if you want to keep using the library.

Now you can easily update your clone to the latest version of 🤗 Diffusers with the following command:

    cd ~/diffusers/
    git pull

Your Python environment will find the `main` version of 🤗 Diffusers on the next run.

##
Notice on telemetry logging

Our library gathers telemetry information during `from_pretrained()` requests. This data includes the version of Diffusers and PyTorch/Flax, the requested model or pipeline class, and the path to a pre-trained checkpoint if it is hosted on the Hub. This usage data helps us debug issues and prioritize new features. Telemetry is only sent when loading models and pipelines from the HuggingFace Hub, and is not collected during local usage.

We understand that not everyone wants to share additional information, and we respect your privacy, so you can disable telemetry collection by setting the `DISABLE_TELEMETRY` environment variable from your terminal:

On Linux/MacOS:

    export DISABLE_TELEMETRY=YES

On Windows:

    set DISABLE_TELEMETRY=YES