Fix sageattn when using fp32

This commit is contained in:
kijai
2025-04-27 17:31:06 +03:00
parent 4fc4159c88
commit df95c85283
+4 -1
View File
@@ -17,7 +17,10 @@ try:
from sageattention import sageattn
@torch.compiler.disable()
def sageattn_func(q, k, v, attn_mask=None, dropout_p=0, is_causal=False):
return sageattn(q, k, v, attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal)
if q.dtype == torch.float32:
return sageattn(q.to(torch.float16), k.to(torch.float16), v.to(torch.float16), attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal).to(torch.float32)
else:
return sageattn(q, k, v, attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal)
except Exception as e:
print(f"Warning: Could not load sageattention: {str(e)}")
if isinstance(e, ModuleNotFoundError):