| <!--Copyright 2023 The HuggingFace Team. All rights reserved. |
|
|
| Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
|
|
| http://www.apache.org/licenses/LICENSE-2.0 |
|
|
| Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on |
| an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations under the License. |
| --> |
|
|
| # 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](https://pytorch.org/get-started/locally/) installation instructions. |
| - [Flax](https://flax.readthedocs.io/en/latest/) installation instructions. |
|
|
| ## Install with pip |
|
|
| You should install π€ Diffusers in a [virtual environment](https://docs.python.org/3/library/venv.html). |
| If you're unfamiliar with Python virtual environments, take a look at this [guide](https://packaging.python.org/guides/installing-using-pip-and-virtual-environments/). |
| 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: |
|
|
| ```bash |
| python -m venv .env |
| ``` |
|
|
| Activate the virtual environment: |
|
|
| ```bash |
| source .env/bin/activate |
| ``` |
|
|
| π€ Diffusers also relies on the π€ Transformers library, and you can install both with the following command: |
|
|
| <frameworkcontent> |
| <pt> |
| ```bash |
| pip install diffusers["torch"] transformers |
| ``` |
| </pt> |
| <jax> |
| ```bash |
| pip install diffusers["flax"] transformers |
| ``` |
| </jax> |
| </frameworkcontent> |
|
|
| ## Install from source |
|
|
| Before installing π€ Diffusers from source, make sure you have `torch` and π€ Accelerate installed. |
|
|
| For `torch` installation, refer to the `torch` [installation](https://pytorch.org/get-started/locally/#start-locally) guide. |
|
|
| To install π€ Accelerate: |
|
|
| ```bash |
| pip install accelerate |
| ``` |
|
|
| Install π€ Diffusers from source with the following command: |
|
|
| ```bash |
| 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](https://github.com/huggingface/diffusers/issues/new/choose), 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: |
|
|
| ```bash |
| git clone https://github.com/huggingface/diffusers.git |
| cd diffusers |
| ``` |
|
|
| <frameworkcontent> |
| <pt> |
| ```bash |
| pip install -e ".[torch]" |
| ``` |
| </pt> |
| <jax> |
| ```bash |
| pip install -e ".[flax]" |
| ``` |
| </jax> |
| </frameworkcontent> |
|
|
| 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. |
|
|
| <Tip warning={true}> |
|
|
| You must keep the `diffusers` folder if you want to keep using the library. |
|
|
| </Tip> |
|
|
| Now you can easily update your clone to the latest version of π€ Diffusers with the following command: |
|
|
| ```bash |
| 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: |
| ```bash |
| export DISABLE_TELEMETRY=YES |
| ``` |
|
|
| On Windows: |
| ```bash |
| set DISABLE_TELEMETRY=YES |
| ``` |
|
|