(unet)
| 272 | |
| 273 | # change attn class |
| 274 | def change_attn(unet): |
| 275 | for layer in unet.children(): |
| 276 | if type(layer) == CrossAttention: |
| 277 | bound_method = set_use_memory_efficient_attention_xformers.__get__(layer, layer.__class__) |
| 278 | setattr(layer, 'set_use_memory_efficient_attention_xformers', bound_method) |
| 279 | else: |
| 280 | change_attn(layer) |
| 281 | |
| 282 | change_attn(unet) |
| 283 | unet.set_attn_processor(CustomDiffusionAttnProcessor()) |
no outgoing calls
no test coverage detected