2024-08-04 15:45:43 -04:00
|
|
|
import torch
|
2025-04-14 18:00:33 -04:00
|
|
|
import comfy.rmsnorm
|
|
|
|
|
2024-08-04 15:45:43 -04:00
|
|
|
|
|
|
|
def pad_to_patch_size(img, patch_size=(2, 2), padding_mode="circular"):
|
2024-11-27 13:45:32 -05:00
|
|
|
if padding_mode == "circular" and (torch.jit.is_tracing() or torch.jit.is_scripting()):
|
2024-08-04 15:45:43 -04:00
|
|
|
padding_mode = "reflect"
|
2024-12-13 07:21:52 -05:00
|
|
|
|
|
|
|
pad = ()
|
|
|
|
for i in range(img.ndim - 2):
|
|
|
|
pad = (0, (patch_size[i] - img.shape[i + 2] % patch_size[i]) % patch_size[i]) + pad
|
|
|
|
|
|
|
|
return torch.nn.functional.pad(img, pad, mode=padding_mode)
|
2024-08-28 16:18:39 -04:00
|
|
|
|
|
|
|
|
2025-04-14 18:00:33 -04:00
|
|
|
rms_norm = comfy.rmsnorm.rms_norm
|