Diffusers documentation
Kurulum
Kurulum
Diffusers, Python 3.10+ gerektirir ve PyTorch 2.6+ ile test edilir. PyTorch'u sisteminize ve kurulumunuza göre yükleyin.
Bağımsız projelerin daha kolay yönetimi ve bağımlılıklar arasındaki uyumluluk sorunlarının önlenmesi için bir sanal ortam oluşturun. Bir Rust tabanlı Python paket ve proje yöneticisi olan uv'yi kullanarak bir sanal ortam oluşturun ve Diffusers'ı yükleyin.
uv venv my-env
source my-env/bin/activateDiffusers'ı aşağıdaki yöntemlerden biriyle yükleyin.
uv pip install diffusers["torch"] transformersNVIDIA Spark cihazlarında (RTX Spark dizüstü bilgisayarı gibi) ARM64 üzerinde çalışan Diffusers'ı PyTorch ile kurmak için PyTorch'u NVIDIA PyPI dizininden yükleyin. Bu cihazlar, varsayılan PyPI dizininde veya standart PyTorch tekerlek dizininde bulunmayan NVIDIA'nın ARM64 PyTorch derlemelerini gerektirir.
Sisteminizin bir NVIDIA GPU algılayıp algılamadığını kontrol etmek için aşağıdaki komutu çalıştırın.
nvidia-smi
NVIDIA PyPI dizininden PyTorch'u yükleyin, ardından Diffusers'ı yükleyin.
uv pip install torch --index-url https://pypi.nvidia.com uv pip install diffusers
conda install -c conda-forge diffusers
Kaynak kurulumu, en son stable sürümü yerine main sürümünü yükler. main sürümü, en son değişikliklerle güncel kalmak için faydalıdır ancak her zaman kararlı olmayabilir. Bir sorunla karşılaşırsanız bir Issue açın ve mümkün olan en kısa sürede çözmeye çalışacağız.
Accelerate'in yüklendiğinden emin olun.
uv pip install accelerate
Diffusers'ı aşağıdaki komutla kaynak kodundan yükleyin.
uv pip install git+https://github.com/huggingface/diffusers
Gerektiğinde ek paketlerle birlikte kurun. diffusers["torch"] PyTorch ve Accelerate'ı çeker. Diğer ekler, kuantizasyon altyapılarını, eğitimi ve belgeleri kapsar. Tam liste için setup.py dosyasına bakın.
Cihazlar
Diffusers, PyTorch tarafından desteklenen herhangi bir hızlandırıcıda çalışır. Belgelerdeki örnekler en yaygın kurulum olduğu için "cuda" kullanır, ancak hiçbir şey CUDA'ya özgü değildir. Donanımınıza uygun cihaz dizgesini kullanın; örneğin Intel GPU'lar için "xpu", Apple silikonu için "mps" veya "cpu".
device = "cuda" # or "mps", "xpu", "cpu"
pipeline.to(device)Cihazı kodda sabitlemek yerine çalışma zamanında seçmek için torch.accelerator kullanın.
import torch
device = torch.accelerator.current_accelerator().type if torch.accelerator.is_available() else "cpu"Düzenlenebilir kurulum
Geliştirme iş akışlarında veya kaynak kodun main sürümünü kullanıyorsanız düzenlenebilir bir kurulum önerilir. Klonlanan depo ile Python kütüphane yolları arasında özel bir bağlantı oluşturulur. Bu, her değişiklikten sonra paketi yeniden kurmayı önler.
Depoyu klonlayın ve aşağıdaki komutlarla Diffusers'ı yükleyin.
git clone https://github.com/huggingface/diffusers.git
cd diffusers
uv pip install -e ".[torch]"Kütüphaneyi düzenlenebilir kurulumla kullanmaya devam etmek istiyorsanız
diffusersklasörünü korumanız gerekir.
Klonlanmış deposunu aşağıdaki komutla Diffusers'ın en son sürümüne güncelle.
cd ~/diffusers/
git pullÖnbellek
Model ağırlıkları ve dosyaları, genellikle ana dizininiz olan bir önbelleğe Hub'dan indirilir. Önbellek konumunu HF_HOME veya HF_HUB_CACHE ortam değişkenlerini değiştirerek ya da from_pretrained() gibi yöntemlerdeki cache_dir parametresini yapılandırarak değiştirebilirsiniz.
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"
)Önbelleğe alınmış dosyalar, Diffusers'ı çevrimdışı kullanmanızı sağlar. Diffusers'ın internete bağlanmasını önlemek için HF_HUB_OFFLINE ortam değişkenini 1 olarak ayarlayın.
export HF_HUB_OFFLINE=1
Önbelleği yönetme ve temizleme hakkında daha fazla ayrıntı için Önbellekleme hakkında bilgi edinin kılavuzuna göz atın.
Telemetri günlü kaydı
Diffusers, from_pretrained() istekleri sırasında telemetri bilgisi toplar. Toplanan veriler arasında Diffusers ve PyTorch sürümü, istenen model veya pipeline sınıfı ve Hub üzerinde barındırılıyorsa önceden eğitilmiş bir kontrol noktasının yolu bulunur.
Bu kullanım verileri, sorunları hata ayıklamamıza ve yeni özellikleri önceliklendirmemize yardımcı olur. Telemetri yalnızca Hub'dan modeller ve pipeline'lar yüklenirken gönderilir ve yerel dosyalar yüklenirken toplanmaz.
Telemetri toplama işlemini HF_HUB_DISABLE_TELEMETRY ortam değişkeni ile devre dışı bırakın ve bu işlemden vazgeçin.
export HF_HUB_DISABLE_TELEMETRY=1set HF_HUB_DISABLE_TELEMETRY=1