Buckets:

hf-doc-build/doc / diffusers /v0.43.0 /ru /installation.md
mishig's picture
|
download
raw
8.51 kB
# Установка
Diffusers требует Python 3.10+ и протестирован с PyTorch 2.6+. Установите [PyTorch](https://pytorch.org/get-started/locally/) в соответствии с вашей системой и конфигурацией.
Создайте [виртуальное окружение](https://packaging.python.org/guides/installing-using-pip-and-virtual-environments/) для более удобного управления отдельными проектами и для избежания проблем совместимости между зависимостями. Используйте [uv](https://docs.astral.sh/uv/) — менеджер пакетов и проектов Python на базе Rust — для создания виртуального окружения и установки Diffusers.
```bash
uv venv my-env
source my-env/bin/activate
```
Установите Diffusers одним из следующих способов.
```bash
uv pip install diffusers["torch"] transformers
```
Чтобы установить Diffusers с PyTorch на устройства NVIDIA Spark (например, ноутбук RTX Spark) с архитектурой ARM64, установите PyTorch из индекса PyPI от NVIDIA. Эти устройства требуют ARM64-сборки PyTorch от NVIDIA, которые недоступны в стандартном индексе PyPI или в обычном индексе колёс PyTorch.
Выполните команду ниже, чтобы проверить, обнаруживает ли ваша система GPU от NVIDIA.
```bash
nvidia-smi
```
Установите PyTorch из индекса PyPI от NVIDIA, затем установите Diffusers.
```bash
uv pip install torch --index-url https://pypi.nvidia.com
uv pip install diffusers
```
```bash
conda install -c conda-forge diffusers
```
Установка из исходников устанавливает версию `main` вместо последней `stable` версии. Версия `main` полезна для отслеживания последних изменений, но она не всегда стабильна. Если вы столкнетесь с проблемой, создайте [Issue](https://github.com/huggingface/diffusers/issues/new/choose), и мы постараемся решить её как можно скорее.
Убедитесь, что [Accelerate](https://huggingface.co/docs/accelerate/index) установлен.
```bash
uv pip install accelerate
```
Установите Diffusers из исходного кода с помощью команды ниже.
```bash
uv pip install git+https://github.com/huggingface/diffusers
```
Устанавливайте дополнительные компоненты по мере необходимости. `diffusers["torch"]` подключает PyTorch и Accelerate. Другие дополнительные компоненты охватывают бэкенды квантования, обучение и документацию. Полный список см. в [`setup.py`](https://github.com/huggingface/diffusers/blob/main/setup.py).
## Устройства
Diffusers работает на любом ускорителе, поддерживаемом PyTorch. Примеры в документации используют `"cuda"`, так как это самая распространённая конфигурация, но ничего не является специфичным для CUDA. Замените строку устройства на соответствующую вашему оборудованию, например, `"xpu"` для GPU Intel, `"mps"` для Apple silicon или `"cpu"`.
```py
device = "cuda" # or "mps", "xpu", "cpu"
pipeline.to(device)
```
Чтобы выбрать устройство во время выполнения, а не задавать его жёстко, используйте [torch.accelerator](https://docs.pytorch.org/docs/stable/accelerator.html).
```py
import torch
device = torch.accelerator.current_accelerator().type if torch.accelerator.is_available() else "cpu"
```
## Установка в режиме редактирования
Рекомендуется использовать редактируемую установку для рабочих процессов разработки или при использовании версии `main` исходного кода. При этом создаётся специальная связь между клонированным репозиторием и путями к библиотеке Python. Это позволяет избежать повторной установки пакета после каждого изменения.
Склонируйте репозиторий и установите Diffusers с помощью следующих команд.
```bash
git clone https://github.com/huggingface/diffusers.git
cd diffusers
uv pip install -e ".[torch]"
```
> [!WARNING]
> Если вы хотите продолжать использовать библиотеку с установкой в режиме редактирования, необходимо сохранить папку `diffusers`.
Обновите клонированный репозиторий до последней версии Diffusers с помощью команды ниже.
```bash
cd ~/diffusers/
git pull
```
## Кэш
Веса модели и файлы загружаются с Hub в кэш, который обычно находится в домашнем каталоге. Изменить расположение кэша можно с помощью переменных окружения [HF_HOME](https://huggingface.co/docs/huggingface_hub/package_reference/environment_variables#hfhome) или [HF_HUB_CACHE](https://huggingface.co/docs/huggingface_hub/package_reference/environment_variables#hfhubcache) либо настроив параметр `cache_dir` в методах, таких как [from_pretrained()](/docs/diffusers/v0.43.0/ru/api/pipelines/overview#diffusers.DiffusionPipeline.from_pretrained).
```bash
export HF_HOME="/path/to/your/cache"
export HF_HUB_CACHE="/path/to/your/hub/cache"
```
```py
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained(
"black-forest-labs/FLUX.1-dev",
cache_dir="/path/to/your/cache"
)
```
Кэшированные файлы позволяют использовать Diffusers в автономном режиме. Установите переменную окружения [HF_HUB_OFFLINE](https://huggingface.co/docs/huggingface_hub/package_reference/environment_variables#hfhuboffline) в значение `1`, чтобы предотвратить подключение Diffusers к интернету.
```shell
export HF_HUB_OFFLINE=1
```
Для получения подробной информации об управлении и очистке кэша ознакомьтесь с руководством [Понимание кэширования](https://huggingface.co/docs/huggingface_hub/guides/manage-cache).
## Логирование телеметрии
Diffusers gathers telemetry information during [from_pretrained()](/docs/diffusers/v0.43.0/ru/api/pipelines/overview#diffusers.DiffusionPipeline.from_pretrained) requests. The data gathered includes the Diffusers and PyTorch version, the requested model or pipeline class, and the path to a pretrained checkpoint if it is hosted on the Hub.
Эти данные о использовании помогают нам отлаживать проблемы и определять приоритеты при разработке новых функций. Телеметрия отправляется только при загрузке моделей и конвейеров из Hub и не собирается при загрузке локальных файлов.
Отключите сбор телеметрии с помощью переменной окружения [HF_HUB_DISABLE_TELEMETRY](https://huggingface.co/docs/huggingface_hub/package_reference/environment_variables#hfhubdisabletelemetry).
```bash
export HF_HUB_DISABLE_TELEMETRY=1
```
```bash
set HF_HUB_DISABLE_TELEMETRY=1
```

Xet Storage Details

Size:
8.51 kB
·
Xet hash:
8674efb6ff540c5be0ffe6814ca54a8c0b0a70360ee77acb0e3fcaa25e2c1eba

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.