Diffusers documentation
Instalasi
Instalasi
Diffusers memerlukan Python 3.10+ dan diuji dengan PyTorch 2.6+. Instal PyTorch sesuai dengan sistem dan konfigurasi Anda.
Buat virtual environment untuk memudahkan pengelolaan proyek terpisah dan menghindari masalah kompatibilitas antar dependensi. Gunakan uv, manajer paket dan proyek Python berbasis Rust, untuk membuat virtual environment dan menginstal Diffusers.
uv venv my-env
source my-env/bin/activateInstall Diffusers dengan salah satu metode berikut.
uv pip install diffusers["torch"] transformersUntuk menginstal Diffusers dengan PyTorch pada perangkat NVIDIA Spark (seperti laptop RTX Spark) yang menjalankan ARM64, instal PyTorch dari indeks PyPI NVIDIA. Perangkat ini memerlukan build ARM64 PyTorch dari NVIDIA, yang tidak tersedia di indeks PyPI default atau indeks wheel PyTorch standar.
Jalankan perintah di bawah untuk memeriksa apakah sistem Anda mendeteksi GPU NVIDIA.
nvidia-smi
Install PyTorch dari indeks PyPI NVIDIA, lalu install Diffusers.
uv pip install torch --index-url https://pypi.nvidia.com uv pip install diffusers
conda install -c conda-forge diffusers
Instalasi dari sumber menginstal versi main alih-alih versi stable terbaru. Versi main berguna untuk tetap mengikuti perubahan terbaru, tetapi tidak selalu stabil. Jika Anda menemui masalah, buka Issue dan kami akan berusaha menyelesaikannya secepat mungkin.
Pastikan Accelerate terinstal.
uv pip install accelerate
Install Diffusers dari sumber dengan perintah di bawah ini.
uv pip install git+https://github.com/huggingface/diffusers
Install dengan extras saat Anda membutuhkannya. diffusers["torch"] menarik PyTorch dan Accelerate. Extras lainnya mencakup backend kuantisasi, pelatihan, dan dokumentasi. Lihat setup.py untuk daftar lengkap.
Perangkat
Diffusers berjalan di akselerator apa pun yang didukung oleh PyTorch. Contoh di seluruh dokumentasi menggunakan "cuda" karena itu adalah konfigurasi yang paling umum, tetapi tidak ada yang spesifik CUDA. Ganti string perangkat untuk perangkat keras Anda, seperti "xpu" untuk GPU Intel, "mps" untuk Apple silicon, atau "cpu".
device = "cuda" # or "mps", "xpu", "cpu"
pipeline.to(device)Untuk memilih perangkat saat runtime alih-alih menuliskannya secara tetap, gunakan torch.accelerator.
import torch
device = torch.accelerator.current_accelerator().type if torch.accelerator.is_available() else "cpu"Instalasi yang dapat diedit
Instalasi yang dapat diedit (editable install) direkomendasikan untuk alur kerja pengembangan atau jika Anda menggunakan versi main dari kode sumber. Tautan khusus dibuat antara repositori yang dikloning dan jalur pustaka Python. Hal ini menghindari pemasangan ulang paket setelah setiap perubahan.
Kloning repositori dan instal Diffusers dengan perintah berikut.
git clone https://github.com/huggingface/diffusers.git
cd diffusers
uv pip install -e ".[torch]"Anda harus menyimpan folder
diffusersjika ingin terus menggunakan pustaka dengan instalasi yang dapat diedit.
Perbarui repositori yang telah Anda klon ke versi terbaru Diffusers dengan perintah di bawah ini.
cd ~/diffusers/
git pullCache
Bobot model dan file diunduh dari Hub ke cache, yang biasanya adalah direktori home Anda. Ubah lokasi cache dengan variabel lingkungan HF_HOME atau HF_HUB_CACHE atau dengan mengonfigurasi parameter cache_dir pada metode seperti from_pretrained().
export HF_HOME="/path/to/your/cache"
export HF_HUB_CACHE="/path/to/your/hub/cache"from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained(
"black-forest-labs/FLUX.1-dev",
cache_dir="/path/to/your/cache"
)File yang di-cache memungkinkan Anda menggunakan Diffusers secara offline. Atur variabel lingkungan HF_HUB_OFFLINE ke 1 untuk mencegah Diffusers terhubung ke internet.
export HF_HUB_OFFLINE=1
Untuk detail lebih lanjut tentang pengelolaan dan pembersihan cache, lihat panduan Memahami caching.
Pencatatan telemetri
Diffusers mengumpulkan informasi telemetri selama permintaan from_pretrained(). Data yang dikumpulkan mencakup versi Diffusers dan PyTorch, kelas model atau pipeline yang diminta, dan jalur ke checkpoint pretrained jika dihosting di Hub.
Data penggunaan ini membantu kami men-debug masalah dan memprioritaskan fitur baru. Telemetri hanya dikirim saat memuat model dan pipeline dari Hub, dan tidak dikumpulkan jika Anda memuat file lokal.
Matikan dan nonaktifkan pengumpulan telemetri dengan variabel lingkungan HF_HUB_DISABLE_TELEMETRY.
export HF_HUB_DISABLE_TELEMETRY=1set HF_HUB_DISABLE_TELEMETRY=1