GLM-Image pipeline stages.
Classes
fastvideo.pipelines.basic.glm_image.stages.GlmImageDenoisingStage
GlmImageDenoisingStage(transformer, scheduler, pipeline=None, transformer_2=None, vae=None)
Bases: DenoisingStage
Source code in fastvideo/pipelines/stages/denoising.py
| def __init__(self, transformer, scheduler, pipeline=None, transformer_2=None, vae=None) -> None:
super().__init__()
self.transformer = transformer
self.transformer_2 = transformer_2
self.scheduler = scheduler
self.vae = vae
self.pipeline = weakref.ref(pipeline) if pipeline else None
attn_head_size = self.transformer.hidden_size // self.transformer.num_attention_heads
self.attn_backend = get_attn_backend(
head_size=attn_head_size,
dtype=torch.float16, # TODO(will): hack
supported_attention_backends=(AttentionBackendEnum.VIDEO_SPARSE_ATTN, AttentionBackendEnum.BSA_ATTN,
AttentionBackendEnum.VMOBA_ATTN, AttentionBackendEnum.FLASH_ATTN,
AttentionBackendEnum.TORCH_SDPA, AttentionBackendEnum.SAGE_ATTN_THREE) # hack
)
|