Keras 3 Attention layer value tensor dimension
hi,

I found the  below would not return the proper size output in Keras 3 (but works fine in Keras 2)
Please help to fix it, 

Thanks.



```python
import keras
from keras import layers

i = layers.Input((8,4))
xq = layers.Conv1D(5,1)(i)
xk = layers.Conv1D(5,1)(i)
xv = layers.Conv1D(7,1)(i)
o = layers.Attention()([xq,xv,xk])

m = keras.Model(inputs=i, outputs=o)
m.summary()

Output as below
┏━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Layer (type)        ┃ Output Shape      ┃    Param # ┃ Connected to      ┃
┡━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ input_layer         │ (None, 8, 4)      │          0 │ -                 │
│ (InputLayer)        │                   │            │                   │
├─────────────────────┼───────────────────┼────────────┼───────────────────┤
│ conv1d (Conv1D)     │ (None, 8, 5)      │         25 │ input_layer[0][0] │
├─────────────────────┼───────────────────┼────────────┼───────────────────┤
│ conv1d_2 (Conv1D)   │ (None, 8, 7)      │         35 │ input_layer[0][0] │
├─────────────────────┼───────────────────┼────────────┼───────────────────┤
│ conv1d_1 (Conv1D)   │ (None, 8, 5)      │         25 │ input_layer[0][0] │
├─────────────────────┼───────────────────┼────────────┼───────────────────┤
│ attention           │ **(None, 8, 5)**      │          0 │ conv1d[0][0],     │
│ (Attention)         │                   │            │ conv1d_2[0][0],   │
│                     │                   │            │ conv1d_1[0][0]    │
└─────────────────────┴───────────────────┴────────────┴───────────────────┘
 Total params: 85 (340.00 B)
 Trainable params: 85 (340.00 B)
 Non-trainable params: 0 (0.00 B)
```

The Attention layer output shape should be (None, 8, 7), since **xv** is from **Conv1D** with 7 kernels.

Thie same code gives correct output from keras 2

```python
Model: "model"
__________________________________________________________________________________________________
 Layer (type)                   Output Shape         Param #     Connected to                     
==================================================================================================
 input_1 (InputLayer)           [(None, 8, 4)]       0           []                               
                                                                                                  
 conv1d (Conv1D)                (None, 8, 5)         25          ['input_1[0][0]']                
                                                                                                  
 conv1d_2 (Conv1D)              (None, 8, 7)         35          ['input_1[0][0]']                
                                                                                                  
 conv1d_1 (Conv1D)              (None, 8, 5)         25          ['input_1[0][0]']                
                                                                                                  
 attention (Attention)          **(None, 8, 7)**         0           ['conv1d[0][0]',                 
                                                                  'conv1d_2[0][0]',               
                                                                  'conv1d_1[0][0]']               
                                                                                                  
==================================================================================================
Total params: 85
Trainable params: 85
Non-trainable params: 0
```