-record(t5_block, { self_attention :: viva_tensor@nn@attention:multi_head_attention(), cross_attention :: gleam@option:option(viva_tensor@nn@attention:multi_head_attention()), ffn_w1 :: viva_tensor@tensor:tensor(), ffn_w_gate :: viva_tensor@tensor:tensor(), ffn_w2 :: viva_tensor@tensor:tensor(), norm1 :: viva_tensor@nn@norm:rms_norm(), norm2 :: viva_tensor@nn@norm:rms_norm(), norm3 :: gleam@option:option(viva_tensor@nn@norm:rms_norm()) }).