Diffusers documentation
RFD4ProteinaScheduler
RFD4ProteinaScheduler
RFD4ProteinaScheduler 是 RFD4-Proteína 针对单一模态的时间分数重缩放流采样器。该 pipeline 使用两个实例,一个用于 backbone(bb_ca,坐标单位为纳米),另一个用于每个 token 的局部潜变量(local_latents),每个实例都有各自的时间调度、噪声调度和重缩放。有关采样循环,请参阅 RFD4ProteinaPipeline。
RFD4ProteinaScheduler
class 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 )
参数
- schedule_mode (
str) — 噪声与数据之间的时间间隔:"log"或"power"。 - noise_mode (
str) — 注入到随机窗口中的噪声形状:"1/t"或"tan"。 - tsr_k (
float) — 采样温度能降到的下限;值越大,温度越低。 - tsr_sigma (
float) — 达到低温的速度;值越大,速度越快。 - tail_steps (
int,默认为10) — 最后tail_step_multiplier倍更精细的区间数量。 - tail_step_multiplier(
int,默认为2)— 最终区间的粒度比之前细多少。 - t_lim_ode (
float,默认为0.95) — 超过此时间后,该步骤变为确定性。 - t_lim_ode_below (
float,默认为0.02) — 低于此时间时,该步骤是确定性的。
RFD4-Proteína 单模态的时间分数重缩放流采样器。
该流水线整合了两种模态,即主干网络和逐 token 局部潜变量,每种模态各使用一个调度器。它们在时间调度、噪声调度和重缩放方面有所不同。
在采样之前调用 set_timesteps。时间步从噪声向干净数据递增。调度器会跟踪当前区间,不应在并发生成之间共享。
set_timesteps
< source >( num_inference_steps: intdevice: typing.Union[str, torch.device, NoneType] = Nonestart_time: float | None = None )
解析调度并重置集成游标。
add_noise
< source >( original_samples: Tensornoise: Tensortimesteps: typing.Union[float, torch.Tensor] )
采样前向边缘分布 (1 - t) * noise + t * clean。
步骤
< source >( model_output: Tensortimestep: Tensorsample: Tensoremit_mask: Tensorgenerator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonereturn_dict: bool = True ) → RFD4ProteinaSchedulerOutput or tuple
参数
- model_output (
torch.Tensor) — 预测速度,形状与sample相同。 - timestep (
torch.Tensor) —timesteps中的下一个元素。顺序错误的步骤将被拒绝。 - sample (
torch.Tensor) — 当前状态(B, N, D)。 - emit_mask (
torch.Tensor) — 布尔型(B, N),对于被更新的 token(非上下文或填充)为 true。 - generator (
torch.Generator或list[torch.Generator],可选) — 用于单行数据的生成器,或为每个批次行提供不同的生成器。省略时,将使用全局流。 - return_dict (
bool,默认为True) — 返回RFD4ProteinaSchedulerOutput;否则返回一个包含该状态的单元素元组。
返回值
RFD4ProteinaSchedulerOutput 或 tuple
更新后的状态。
推进一个积分区间并更新 step_index。
RFD4ProteinaSchedulerOutput
class diffusers.schedulers.scheduling_rfd4_proteina.RFD4ProteinaSchedulerOutput
< source >( prev_sample: Tensor )
某一模态的更新后状态。