sd 2.1
This commit is contained in:
14
ldm/modules/attention.py
Executable file → Normal file
14
ldm/modules/attention.py
Executable file → Normal file
@@ -16,6 +16,9 @@ try:
|
||||
except:
|
||||
XFORMERS_IS_AVAILBLE = False
|
||||
|
||||
# CrossAttn precision handling
|
||||
import os
|
||||
_ATTN_PRECISION = os.environ.get("ATTN_PRECISION", "fp32")
|
||||
|
||||
def exists(val):
|
||||
return val is not None
|
||||
@@ -167,9 +170,16 @@ class CrossAttention(nn.Module):
|
||||
|
||||
q, k, v = map(lambda t: rearrange(t, 'b n (h d) -> (b h) n d', h=h), (q, k, v))
|
||||
|
||||
sim = einsum('b i d, b j d -> b i j', q, k) * self.scale
|
||||
# force cast to fp32 to avoid overflowing
|
||||
if _ATTN_PRECISION =="fp32":
|
||||
with torch.autocast(enabled=False, device_type = 'cuda'):
|
||||
q, k = q.float(), k.float()
|
||||
sim = einsum('b i d, b j d -> b i j', q, k) * self.scale
|
||||
else:
|
||||
sim = einsum('b i d, b j d -> b i j', q, k) * self.scale
|
||||
|
||||
del q, k
|
||||
|
||||
|
||||
if exists(mask):
|
||||
mask = rearrange(mask, 'b ... -> b (...)')
|
||||
max_neg_value = -torch.finfo(sim.dtype).max
|
||||
|
0
ldm/modules/diffusionmodules/__init__.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/__init__.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/model.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/model.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/openaimodel.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/openaimodel.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/upscaling.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/upscaling.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/util.py
Executable file → Normal file
0
ldm/modules/diffusionmodules/util.py
Executable file → Normal file
0
ldm/modules/distributions/__init__.py
Executable file → Normal file
0
ldm/modules/distributions/__init__.py
Executable file → Normal file
0
ldm/modules/distributions/distributions.py
Executable file → Normal file
0
ldm/modules/distributions/distributions.py
Executable file → Normal file
0
ldm/modules/ema.py
Executable file → Normal file
0
ldm/modules/ema.py
Executable file → Normal file
0
ldm/modules/encoders/__init__.py
Executable file → Normal file
0
ldm/modules/encoders/__init__.py
Executable file → Normal file
0
ldm/modules/encoders/modules.py
Executable file → Normal file
0
ldm/modules/encoders/modules.py
Executable file → Normal file
0
ldm/modules/image_degradation/__init__.py
Executable file → Normal file
0
ldm/modules/image_degradation/__init__.py
Executable file → Normal file
0
ldm/modules/image_degradation/bsrgan.py
Executable file → Normal file
0
ldm/modules/image_degradation/bsrgan.py
Executable file → Normal file
0
ldm/modules/image_degradation/bsrgan_light.py
Executable file → Normal file
0
ldm/modules/image_degradation/bsrgan_light.py
Executable file → Normal file
0
ldm/modules/image_degradation/utils/test.png
Executable file → Normal file
0
ldm/modules/image_degradation/utils/test.png
Executable file → Normal file
Before Width: | Height: | Size: 431 KiB After Width: | Height: | Size: 431 KiB |
0
ldm/modules/image_degradation/utils_image.py
Executable file → Normal file
0
ldm/modules/image_degradation/utils_image.py
Executable file → Normal file
0
ldm/modules/midas/__init__.py
Executable file → Normal file
0
ldm/modules/midas/__init__.py
Executable file → Normal file
0
ldm/modules/midas/api.py
Executable file → Normal file
0
ldm/modules/midas/api.py
Executable file → Normal file
0
ldm/modules/midas/midas/__init__.py
Executable file → Normal file
0
ldm/modules/midas/midas/__init__.py
Executable file → Normal file
0
ldm/modules/midas/midas/base_model.py
Executable file → Normal file
0
ldm/modules/midas/midas/base_model.py
Executable file → Normal file
0
ldm/modules/midas/midas/blocks.py
Executable file → Normal file
0
ldm/modules/midas/midas/blocks.py
Executable file → Normal file
0
ldm/modules/midas/midas/dpt_depth.py
Executable file → Normal file
0
ldm/modules/midas/midas/dpt_depth.py
Executable file → Normal file
0
ldm/modules/midas/midas/midas_net.py
Executable file → Normal file
0
ldm/modules/midas/midas/midas_net.py
Executable file → Normal file
0
ldm/modules/midas/midas/midas_net_custom.py
Executable file → Normal file
0
ldm/modules/midas/midas/midas_net_custom.py
Executable file → Normal file
0
ldm/modules/midas/midas/transforms.py
Executable file → Normal file
0
ldm/modules/midas/midas/transforms.py
Executable file → Normal file
0
ldm/modules/midas/midas/vit.py
Executable file → Normal file
0
ldm/modules/midas/midas/vit.py
Executable file → Normal file
0
ldm/modules/midas/utils.py
Executable file → Normal file
0
ldm/modules/midas/utils.py
Executable file → Normal file
Reference in New Issue
Block a user