Diffusers documentation
IPNDMScheduler
IPNDMScheduler
IPNDMScheduler, dördüncü dereceden İyileştirilmiş Sahte Doğrusal Çok Adımlı zamanlayıcıdır. Orijinal uygulama crowsonkb/v-diffusion-pytorch adresinde bulunabilir.
IPNDMScheduler
sınıf diffusers.IPNDMScheduler
< source >( num_train_timesteps: int = 1000trained_betas: numpy.ndarray | list[float] | None = None )
Dördüncü dereceden İyileştirilmiş Sahte Doğrusal Çok Adımlı zamanlayıcı.
Bu model SchedulerMixin ve ConfigMixin sınıflarından devralır. Kütüphanenin tüm zamanlayıcılar için yükleme ve kaydetme gibi genel yöntemleri uyguladığı üst sınıf belgelendirmesini kontrol edin.
index_for_timestep
< source >( timestep: typing.Union[float, torch.Tensor]schedule_timesteps: typing.Optional[torch.Tensor] = None ) → int
Parametreler
- timestep (
floatveyatorch.Tensor) — Zamanlamada (schedule) bulunacak timestep değeri. - schedule_timesteps (
torch.Tensor, isteğe bağlı) — Aranacak timestep zaman çizelgesi.Noneiseself.timestepskullanılır.
Dönüş değeri
int
Zaman adımı planındaki zaman adımının indeksi. Çok eşleşme varsa, planın ortasından başlanırken bir sigmanın atlanmaması için (örneğin, görüntüden görüntüye) ikinci indeksi döndürür.
Verilen zaman adımının zaman adımı zaman çizelgesindeki indeksini bulun.
scale_model_input
< source >( sample: Tensor*args**kwargs ) → torch.Tensor
Gürültüden arındırma modelinin girdisinin mevcut zaman adımına bağlı olarak ölçeklenmesi gereken zamanlayıcılarla değiştirilebilirliği sağlar.
set_begin_index
< source >( begin_index: int = 0 )
Zamanlayıcının başlangıç indeksini ayarlar. Bu işlev, çıkarım (inference) öncesinde pipeline'dan çalıştırılmalıdır.
set_timesteps
< source >( num_inference_steps: intdevice: typing.Union[str, torch.device, NoneType] = None )
Difüzyon zinciri için kullanılan ayrık zaman adımlarını ayarlar (çalıştırılmadan önce çıkarım yapılmalıdır).
adım
< source >( model_output: Tensortimestep: typing.Union[int, torch.Tensor]sample: Tensorreturn_dict: bool = True ) → SchedulerOutput or tuple
Parametreler
- model_output (
torch.Tensor) — Öğrenen difüzyon modelinden gelen doğrudan çıktı. - timestep (
intveyatorch.Tensor) — Difüzyon zincirindeki mevcut ayrık zaman adımı. - sample (
torch.Tensor) — Difüzyon süreci tarafından oluşturulan bir örneğin mevcut bir örneği. - return_dict (
bool) — SchedulerOutput veya tuple döndürülüp döndürülmediğini belirtir.
Dönüş değeri
SchedulerOutput veya tuple
return_dict True ise SchedulerOutput döndürülür, aksi halde ilk öğesi örnek tensörü olan bir tuple döndürülür.
Önceki zaman adımındaki örneği SDE'yi tersine çevirerek tahmin edin. Bu fonksiyon, örneği doğrusal çok adımlı yöntemle ilerletir. Çözümü yaklaşık olarak bulmak için ileri yönde çok sayıda geçiş yapar.
SchedulerOutput
sınıf diffusers.schedulers.scheduling_utils.SchedulerOutput
< source >( prev_sample: Tensor )
Bir zamanlayıcının step işlevinin çıktısı için temel sınıf.