Diffusers documentation
RFD4ProteinaScheduler
RFD4ProteinaScheduler
RFD4ProteinaScheduler, RFD4-Proteína'nın tek bir modalite için zaman-zamanı yeniden ölçeklenmiş akış örnekleyicisidir. Pipeline, iki örnek kullanır: biri omurga için (bb_ca, nanometre cinsinden koordinatlar), diğeri token başına yerel latentler için (local_latents); her birinin kendi zaman zamanı, gürültü zamanı ve yeniden ölçeklemesi vardır. Örnekleme döngüsü için RFD4ProteinaPipeline'a bakın.
RFD4ProteinaScheduler
sınıf diffusers.RFD4ProteinaScheduler
< source >( schedule_mode: strnoise_mode: strtsr_k: floattsr_sigma: floattail_steps: int = 10tail_step_multiplier: int = 2t_lim_ode: float = 0.95t_lim_ode_below: float = 0.02 )
Parametreler
- schedule_mode (
str) — Gürültü ile veri arasındaki zamanların aralığı:"log"veya"power". - noise_mode (
str) — Stokastik pencereye enjekte edilen gürültünün şekli:"1/t"veya"tan". - tsr_k (
float) — Örnekleme sıcaklığının ne kadar düşük olacağı; daha yüksek değer daha düşük sıcaklık anlamına gelir. - tsr_sigma (
float) — Düşük sıcaklığa ne kadar hızlı ulaşıldığını belirler; değer arttıkça hızlanır. - tail_steps (
int, varsayılan10) — Diğerlerindentail_step_multiplierkat daha ince olan son aralıkların sayısı. - tail_step_multiplier (
int, varsayılan2) — Son aralıkların ne kadar ince olduğu. - t_lim_ode (
float, varsayılan0.95) — Bu zamanın üzerinde adım deterministiktir. - t_lim_ode_below (
float, varsayılan0.02) — Bu zamanın altında adım deterministiktir.
RFD4-Proteína'nın bir modalitesi için zaman-skor-ölçekli akış örnekleyici.
Pipeline, her biri için bir zamanlayıcı (scheduler) ile iki modaliteyi, omurgayı (backbone) ve token başına yerel latentleri, bir araya getirir. Bunlar zaman çizelgesi, gürültü çizelgesi ve yeniden ölçeklendirme (rescaling) açısından farklılık gösterir.
Örneklemeden önce set_timesteps çağrın. Zamanlar gürültüden temiz veriye doğru artar. Bir zamanlayıcı (scheduler) mevcut aralığı izler ve eşzamanlı üretimler arasında paylaşılmamalıdır.
set_timesteps
< source >( num_inference_steps: intdevice: typing.Union[str, torch.device, NoneType] = Nonestart_time: float | None = None )
Parametreler
Zamanlamayı çözümlen ve entegrasyon imleci sıfırlanır.
add_noise
< source >( original_samples: Tensornoise: Tensortimesteps: typing.Union[float, torch.Tensor] )
İleri marjinalini örnekleyin (1 - t) * noise + t * clean.
adım
< source >( model_output: Tensortimestep: Tensorsample: Tensoremit_mask: Tensorgenerator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonereturn_dict: bool = True ) → RFD4ProteinaSchedulerOutput or tuple
Parametreler
- model_output (
torch.Tensor) —sampleile aynı şekle sahip tahmini hız. - timestep (
torch.Tensor) —timestepsdizisinin bir sonraki öğesi. Sırasız adımlar reddedilir. - sample (
torch.Tensor) — Güncel durum(B, N, D). - emit_mask (
torch.Tensor) — Güncellenen (bağlam veya dolgu olmayan) jetonlar için doğru olan Boole(B, N). - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Tek bir satır için bir üreteç veya her parti satırı için ayrı üreteçler. Bunların atlanması, global akışın kullanılmasına neden olur. - return_dict (
bool, varsayılanTrue) —RFD4ProteinaSchedulerOutputdöndürür; aksi halde durumu içeren tek öğeli bir tuple döndürür.
Dönüş değeri
RFD4ProteinaSchedulerOutput veya tuple
Güncellenmiş durum.
Bir entegrasyon aralığı ilerletin ve step_index değerini güncelleyin.
RFD4ProteinaSchedulerOutput
sınıf diffusers.schedulers.scheduling_rfd4_proteina.RFD4ProteinaSchedulerOutput
< source >( prev_sample: Tensor )
Bir modalitenin güncellenmiş durumu.