Buckets:
| # EulerDiscreteScheduler | |
| Euler zamanlayıcısı (Algoritma 2), Karras ve ark. tarafından kaleme alınan [Elucidating the Design Space of Diffusion-Based Generative Models](https://huggingface.co/papers/2206.00364) makalesinden alınmıştır. Bu, genellikle 20-30 adımda iyi çıktılar üretebilen hızlı bir zamanlayıcıdır. Zamanlayıcı, [Katherine Crowson](https://github.com/crowsonkb/) tarafından geliştirilen orijinal [k-diffusion](https://github.com/crowsonkb/k-diffusion/blob/481677d114f6ea445aa009cf5bd7a9cdee909e47/k_diffusion/sampling.py#L51) uygulamasına dayanmaktadır. | |
| ## EulerDiscreteScheduler[[diffusers.EulerDiscreteScheduler]] | |
| #### diffusers.EulerDiscreteScheduler[[diffusers.EulerDiscreteScheduler]] | |
| ```python | |
| diffusers.EulerDiscreteScheduler(num_train_timesteps: int = 1000, beta_start: float = 0.0001, beta_end: float = 0.02, beta_schedule: str = 'linear', trained_betas: numpy.ndarray | list[float] | None = None, prediction_type: str = 'epsilon', interpolation_type: str = 'linear', use_karras_sigmas: bool | None = False, use_exponential_sigmas: bool | None = False, use_beta_sigmas: bool | None = False, sigma_min: float | None = None, sigma_max: float | None = None, timestep_spacing: typing.Literal['linspace', 'leading', 'trailing'] = 'linspace', timestep_type: typing.Literal['discrete', 'continuous'] = 'discrete', steps_offset: int = 0, rescale_betas_zero_snr: bool = False, final_sigmas_type: typing.Literal['zero', 'sigma_min'] = 'zero') | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L143) | |
| **Parametreler:** | |
| num_train_timesteps (`int`, varsayılan 1000) : Modelin eğitileceği difüzyon adım sayısı. | |
| beta_start (`float`, varsayılan 0.0001) : Çıkarımın başlangıç `beta` değeri. | |
| beta_end (`float`, varsayılan 0.02) : Son `beta` değeri. | |
| beta_schedule (`Literal["linear", "scaled_linear", "squaredcos_cap_v2"]`, varsayılan `"linear"`) : Beta zamanlaması, modelin adım atması için beta aralığını beta dizisine eşleyen bir haritalamadır. `"linear"`, `"scaled_linear"` veya `"squaredcos_cap_v2"` seçeneklerinden birini seçin. | |
| trained_betas (`np.ndarray`, *isteğe bağlı*) : `beta_start` ve `beta_end` parametrelerini atlamak için beta dizisini doğrudan yapılandırıcıya iletin. | |
| prediction_type (`Literal["epsilon", "sample", "v_prediction"]`, defaults to `"epsilon"`, *optional*) : Prediction type of the scheduler function; can be `"epsilon"` (predicts the noise of the diffusion process), `"sample"` (directly predicts the noisy sample`) or `"v_prediction"` (see section 2.4 of [Imagen Video](https://huggingface.co/papers/2210.02303) paper). | |
| interpolation_type (`Literal["linear", "log_linear"]`, varsayılan `"linear"`, *isteğe bağlı*) : Zamanlayıcının gürültü azaltma adımları için ara sigma değerlerini hesaplamak üzere kullanılacak interpolasyon türü. `"linear"` veya `"log_linear"` değerlerinden biri olmalıdır. | |
| use_karras_sigmas (`bool`, *isteğe bağlı*, varsayılan `False`) : Örnekleme sürecinde gürültü zamanlamasındaki adım boyutları için Karras sigmalarının kullanılıp kullanılmayacağını belirtir. `True` ise, sigmalar {σi} gürültü seviyeleri dizisine göre belirlenir. | |
| use_exponential_sigmas (`bool`, *isteğe bağlı*, varsayılan `False`) : Örnekleme sürecinde gürültü zamanlamasındaki adım boyutları için üstel sigmaların kullanılıp kullanılmayacağını belirtir. | |
| use_beta_sigmas (`bool`, *isteğe bağlı*, varsayılan `False`) : Örnekleme sürecinde gürültü zamanlamasında adım boyutları için beta sigmaların kullanılıp kullanılmayacağını belirtir. Daha fazla bilgi için [Beta Sampling is All You Need](https://huggingface.co/papers/2407.12173) makalesine bakın. | |
| sigma_min (`float`, *isteğe bağlı*) : Gürültü zamanlaması için minimum sigma değeri. Verilmezse, zamanlamadaki son sigma değeri varsayılan olarak kullanılır. | |
| sigma_max (`float`, *isteğe bağlı*) : Gürültü zamanlaması için maksimum sigma değeri. Verilmezse, zamanlamadaki ilk sigma değeri varsayılan olarak kullanılır. | |
| timestep_spacing (`Literal["linspace", "leading", "trailing"]`, varsayılan `"linspace"`) : Zaman adımlarının ölçeklendirilme yöntemi. Daha fazla bilgi için [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) makalesindeki Tablo 2'ye bakın. | |
| timestep_type (`Literal["discrete", "continuous"]`, varsayılan `"discrete"`) : Kullanılacak timestep türü. `"discrete"` veya `"continuous"` olabilir. | |
| steps_offset (`int`, varsayılan 0) : Bazı model ailelerinin gerektirdiği gibi, çıkarım adımlarına eklenen bir ofset. | |
| rescale_betas_zero_snr (`bool`, varsayılan `False`) : Betaların sıfır terminal SNR'ye sahip olacak şekilde yeniden ölçeklenip ölçeklenmeyeceğini belirtir. Bu, modelin orta parlaklıktaki örneklerle sınırlı kalmak yerine çok parlak ve karanlık örnekler üretmesini sağlar. [`--offset_noise`](https://github.com/huggingface/diffusers/blob/74fd735eb073eb1d774b1ab4154a0876eb82f055/examples/dreambooth/train_dreambooth.py#L506) ile gevşek bir şekilde ilişkilidir. | |
| final_sigmas_type (`Literal["zero", "sigma_min"]`, varsayılan `"zero"`) : Örnekleme süreci sırasında gürültü zamanlaması için son `sigma` değeri. `"sigma_min"` ise, son sigma, eğitim zamanlamasındaki son sigma ile aynıdır. `"zero"` ise, son sigma 0 olarak ayarlanır. | |
| Euler zamanlayıcı. | |
| Bu model [SchedulerMixin](/docs/diffusers/main/tr/api/schedulers/overview#diffusers.SchedulerMixin) ve [ConfigMixin](/docs/diffusers/main/tr/api/configuration#diffusers.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. | |
| #### add_noise[[diffusers.EulerDiscreteScheduler.add_noise]] | |
| ```python | |
| add_noise(original_samples: Tensor, noise: Tensor, timesteps: Tensor) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L802) | |
| **Parametreler:** | |
| original_samples (`torch.Tensor`) : Gürültü eklenecek orijinal örnekler. | |
| noise (`torch.Tensor`) : Orijinal örneklerin üzerine eklenecek gürültü tensörü. | |
| timesteps (`torch.Tensor`) : Gürültünün ekleneceği zaman adımları, zaman çizelgesinden gürültü seviyesini belirler. | |
| **Dönüş:** `torch.Tensor` | |
| Zaman adımı zamanlamasına göre ölçeklendirilen eklenen gürültüye sahip gürültülü örnekler. | |
| Belirtilen zaman adımlarındaki gürültü planına göre orijinal örneklerin gürültü ekleyin. | |
| #### get_velocity[[diffusers.EulerDiscreteScheduler.get_velocity]] | |
| ```python | |
| get_velocity(sample: Tensor, noise: Tensor, timesteps: Tensor) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L850) | |
| **Parametreler:** | |
| sample (`torch.Tensor`) : Hızın hesaplanacağı giriş örneği. | |
| noise (`torch.Tensor`) : Örnek ile eşleşen gürültü tensörü. | |
| timesteps (`torch.Tensor`) : Hızın hesaplanacağı zaman adımları. | |
| **Dönüş:** `torch.Tensor` | |
| `sqrt(alpha_prod) * noise - sqrt(1 - alpha_prod) * sample` olarak hesaplanan hız tahmini. | |
| Belirtilen zaman adımlarında, verilen örnek ve gürültü için hız tahminini hesaplayın. | |
| Bu yöntem, örnek ve gürültünün doğrusal bir kombinasyonunu tahmin eden v-tahmin modellerinde kullanılan hız tahminini uygular. | |
| #### index_for_timestep[[diffusers.EulerDiscreteScheduler.index_for_timestep]] | |
| ```python | |
| index_for_timestep(timestep: typing.Union[float, torch.Tensor], schedule_timesteps: typing.Optional[torch.Tensor] = None) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L640) | |
| **Parametreler:** | |
| timestep (`float` veya `torch.Tensor`) : Zamanlamada bulunacak timestep değeri. | |
| schedule_timesteps (`torch.Tensor`, *isteğe bağlı*) : Aranacak zaman adımı zamanlaması. `None` ise `self.timesteps` kullanılır. | |
| **Dönüş:** `int` | |
| Zaman adımı planındaki zaman adımının indeksi. Çok eşleşme varsa, planın ortasından başlanırken (örneğin, görüntüden görüntüye) bir sigmanın atlanmaması için çok eşleşme durumunda ikinci indeksi döndürür. | |
| Verilen zaman adımının zaman adımı zaman çizelgesindeki indeksini bulun. | |
| #### scale_model_input[[diffusers.EulerDiscreteScheduler.scale_model_input]] | |
| ```python | |
| scale_model_input(sample: Tensor, timestep: typing.Union[float, torch.Tensor]) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L326) | |
| **Parametreler:** | |
| sample (`torch.Tensor`) : Ölçeklendirilecek girdi örneği. | |
| timestep (`float` veya `torch.Tensor`) : Difüzyon zincirindeki mevcut zaman adımı. | |
| **Dönüş:** `torch.Tensor` | |
| `(sigma**2 + 1) ** 0.5` ile bölünmüş ölçeklendirilmiş bir giriş örneği. | |
| Gürültü azaltma modelinin girdisinin, mevcut zaman adımına bağlı olarak ölçeklenmesi gereken zamanlayıcılarla değiştirilebilirliği sağlar. Euler algoritmasıyla eşleşmesi için gürültü azaltma modelinin girdisini `(sigma**2 + 1) ** 0.5` ile ölçekler. | |
| #### set_begin_index[[diffusers.EulerDiscreteScheduler.set_begin_index]] | |
| ```python | |
| set_begin_index(begin_index: int = 0) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L316) | |
| **Parametreler:** | |
| begin_index (`int`, varsayılan `0`) : Zamanlayıcının başlangıç indeksi. | |
| 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[[diffusers.EulerDiscreteScheduler.set_timesteps]] | |
| ```python | |
| set_timesteps(num_inference_steps: int = None, device: typing.Union[str, torch.device] = None, timesteps: list[int] | None = None, sigmas: list[float] | None = None) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L350) | |
| **Parametreler:** | |
| num_inference_steps (`int`, *opsiyonel*) : Ön eğitilmiş bir modelle örnekler oluşturulurken kullanılan difüzyon adım sayısı. `None` ise `timesteps` veya `sigmas` sağlanmalıdır. | |
| device (`str` veya `torch.device`, *opsiyonel*) : Timestep'lerin taşınacağı cihaz. `None` ise timestep'ler taşınmaz. | |
| timesteps (`list[int]`, *isteğe bağlı*) : İsteğe bağlı zaman adımları zaman çizelgesini desteklemek için kullanılan özel zaman adımları. `None` ise, zaman adımları `timestep_spacing` özniteliğine dayanılarak oluşturulur. `timesteps` geçirilirse, `num_inference_steps` ve `sigmas` `None` olmalıdır ve `timestep_spacing` özniteliği yok sayılır. | |
| sigmas (`list[float]`, *isteğe bağlı*) : İsteğe bağlı zaman adımları zaman çizelgesini desteklemek için kullanılan özel sigmalar. `None` ise, zaman adımları ve sigmalar ilgili zamanlayıcı özniteliklerine dayanılarak oluşturulur. `sigmas` geçirilirse, `num_inference_steps` ve `timesteps` `None` olmalıdır ve zaman adımları özel sigmalar zaman çizelgesine dayanılarak oluşturulur. | |
| 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[[diffusers.EulerDiscreteScheduler.step]] | |
| ```python | |
| step(model_output: Tensor, timestep: typing.Union[float, torch.Tensor], sample: Tensor, s_churn: float = 0.0, s_tmin: float = 0.0, s_tmax: float = inf, s_noise: float = 1.0, generator: typing.Optional[torch.Generator] = None, return_dict: bool = True) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L685) | |
| **Parametreler:** | |
| model_output (`torch.Tensor`) : Öğrenen difüzyon modelinden gelen doğrudan çıktı. | |
| timestep (`float` veya `torch.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. | |
| s_churn (`float`, *isteğe bağlı*, varsayılan `0.0`) : Örnekleme sırasında eklenen gürültü miktarını kontrol eden stokastisite parametresi. Daha yüksek değerler rastgeleliği artırır. | |
| s_tmin (`float`, *opsiyonel*, varsayılan `0.0`) : Stokastisitenin uygulanması için minimum zaman adımı eşiği. Sadece bu değerin üzerindeki zaman adımlarına gürültü eklenir. | |
| s_tmax (`float`, *opsiyonel*, varsayılan `inf`) : Stokastisitenin uygulanması için maksimum zaman adımı eşiği. Sadece bu değerin altındaki zaman adımlarına gürültü eklenir. | |
| s_noise (`float`, *isteğe bağlı*, varsayılan `1.0`) : Örneğe eklenen gürültü için ölçekleme faktörü. | |
| generator (`torch.Generator`, *isteğe bağlı*) : Yeniden üretilebilir örneklemeler için rastgele sayı üreteci. | |
| return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : [EulerDiscreteSchedulerOutput](/docs/diffusers/main/tr/api/schedulers/euler#diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput) veya tuple döndürülüp döndürülmemeye karar verir. | |
| **Dönüş:** [EulerDiscreteSchedulerOutput](/docs/diffusers/main/tr/api/schedulers/euler#diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput) veya `tuple` | |
| `return_dict` `True` ise [EulerDiscreteSchedulerOutput](/docs/diffusers/main/tr/api/schedulers/euler#diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput) döndürülür, aksi takdirde bir tuple döndürülür; bu tuple'ın ilk öğesi örnek tensörü, ikinci öğesi ise tahmin edilen orijinal örnektir. | |
| Önceki zaman adımındaki örneği SDE'yi tersine çevirerek tahmin edin. Bu işlev, öğrenilen model çıktılarını (en sık tahmin edilen gürültüyü) kullanarak difüzyon sürecini ilerletir. | |
| ## EulerDiscreteSchedulerOutput[[diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput]] | |
| #### diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput[[diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput]] | |
| ```python | |
| diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput(prev_sample: Tensor, pred_original_sample: typing.Optional[torch.Tensor] = None) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_euler_discrete.py#L36) | |
| **Parametreler:** | |
| prev_sample (`torch.Tensor`, görüntüler için `(batch_size, num_channels, height, width)` boyutunda) : Önceki zaman adımının hesaplanan `(x_{t-1})` örneği. `prev_sample`, gürültü azaltma döngüsünde bir sonraki model girdisi olarak kullanılmalıdır. | |
| pred_original_sample (`torch.Tensor`, görüntüler için `(batch_size, num_channels, height, width)` boyutunda) : Mevcut zaman adımındaki model çıktısına dayalı olarak tahmin edilen gürültüsü azaltılmış örnek `(x_{0})`. `pred_original_sample`, ilerlemeyi önizlemek veya yönlendirme için kullanılabilir. | |
| Zamanlayıcının `step` işlevi çıktısı için çıktı sınıfı. | |
Xet Storage Details
- Size:
- 15.2 kB
- Xet hash:
- cb28edeeef976d16f23da09c3a611e36a42ea3303b7521c24ad4f91fd9b7e148
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.