Closed JPPhoto closed 1 year ago
thanks @JPPhoto for helping debug this. uncommenting line 144 in cross_attention_control.py
gives the following output:
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 5632]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 88, 88]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 88, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 5632]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 5632]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 5632]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 5632]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 5632]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 88, 88]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 88, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 352]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 352, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 1408]) dim None
in wrangler with suggested_attention_slice shape torch.Size([8, 1408, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([4, 5632, 5632]) dim 0
in wrangler with suggested_attention_slice shape torch.Size([4, 5632, 5632]) dim 0
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([4, 5632, 5632]) dim 0
in wrangler with suggested_attention_slice shape torch.Size([4, 5632, 5632]) dim 0
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([2, 5632, 5632]) dim 0
in wrangler with suggested_attention_slice shape torch.Size([2, 5632, 5632]) dim 0
in wrangler with suggested_attention_slice shape torch.Size([2, 5632, 5632]) dim 0
in wrangler with suggested_attention_slice shape torch.Size([2, 5632, 5632]) dim 0
in wrangler with suggested_attention_slice shape torch.Size([8, 5632, 77]) dim None
in wrangler with suggested_attention_slice shape torch.Size([2, 5632, 5632]) dim 0
before crashing. Note None
vs dim 0
- the bug is happening because the cross attention control code is assuming a fixed slicing strategy (None
will stay None
, dim 0
will stay dim 0
), but the slicing strategy is changing dynamically between calls to attention_slice_wrangler
meaning that the original attention could have been saved without slicing (None
), but then when it comes to apply the edited attention the slicing strategy has become dim 0
, leading to mismatches between stored attention slices and expected return value.
Is there an existing issue for this?
OS
Linux
GPU
cuda
VRAM
12GB
What happened?
Using the command line, I get an unexpected error parsing a prompt when using the new
.swap
operator.Screenshots
Additional context
I'm running the latest (11/3/2022) InvokeAI under WSL2 using a 3060 w/12GB RAM and the complete v1.5 checkpoint.
Contact Details
No response