Xenova's picture
Xenova HF Staff
sync 2e7068faf55e
5b47652 verified
Raw
History Blame
53.5 kB
{
"op": "com.microsoft.EmbedLayerNormalization",
"cases": [
{
"name": "segment_embedding_without_segment_ids_uses_row_zero",
"provenance": {
"source": "onnxruntime/contrib_ops/cpu/bert/embed_layer_norm.cc",
"notes": "The public schema makes both segment inputs independently optional. The pinned CPU and CUDA providers use segment row 0 when the table is present without segment_ids."
},
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"wordEmbeddingT": {
"dtype": "float32",
"shape": [2, 4],
"data": { "kind": "values", "values": [1.0, 2.0, 3.0, 4.0, -1.0, 0.0, 1.0, 2.0] }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8] }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [1, 4],
"data": { "kind": "values", "values": [0.25, -0.5, 0.75, -1.0] }
},
"gammaT": { "dtype": "float32", "shape": [4], "data": { "kind": "values", "values": [1.0, 1.0, 1.0, 1.0] } },
"betaT": { "dtype": "float32", "shape": [4], "data": { "kind": "values", "values": [0.0, 0.0, 0.0, 0.0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 2, 4], "tolerance": 0.00001 },
"embeddingSumT": { "dtype": "float32", "shape": [1, 2, 4], "tolerance": 0.000001 }
}
},
{
"name": "segment_default_nopos_nosum_nomask",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] }
},
"outputs": { "outputT": { "dtype": "float32", "shape": [1, 1, 4] } }
},
{
"name": "segment_default_nopos_nosum_mask",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] },
"maskT": { "dtype": "int32", "shape": [1, 1] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"maskIndexT": { "dtype": "int32", "shape": [1] }
}
},
{
"name": "segment_default_nopos_sum_mask",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] },
"maskT": { "dtype": "int32", "shape": [1, 1] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"maskIndexT": { "dtype": "int32", "shape": [1] },
"embeddingSumT": { "dtype": "float32", "shape": [1, 1, 4] }
}
},
{
"name": "segment_default_posids_nosum_nomask",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"positionIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] }
},
"outputs": { "outputT": { "dtype": "float32", "shape": [1, 1, 4] } }
},
{
"name": "segment_default_posids_nosum_mask",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"positionIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] },
"maskT": { "dtype": "int32", "shape": [1, 1] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"maskIndexT": { "dtype": "int32", "shape": [1] }
}
},
{
"name": "segment_default_posids_sum_nomask",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"positionIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"embeddingSumT": { "dtype": "float32", "shape": [1, 1, 4] }
}
},
{
"name": "segment_default_posids_sum_mask",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"positionIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] },
"maskT": { "dtype": "int32", "shape": [1, 1] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"maskIndexT": { "dtype": "int32", "shape": [1] },
"embeddingSumT": { "dtype": "float32", "shape": [1, 1, 4] }
}
},
{
"name": "segment_default_nopos_nosum_mask_without_input",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"maskIndexT": { "dtype": "int32", "shape": [1] }
}
},
{
"name": "segment_default_nopos_sum_mask_without_input",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"maskIndexT": { "dtype": "int32", "shape": [1] },
"embeddingSumT": { "dtype": "float32", "shape": [1, 1, 4] }
}
},
{
"name": "segment_default_posids_nosum_mask_without_input",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"positionIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"maskIndexT": { "dtype": "int32", "shape": [1] }
}
},
{
"name": "segment_default_posids_sum_mask_without_input",
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1] },
"positionIdsT": { "dtype": "int32", "shape": [1, 1] },
"wordEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"positionEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"segmentEmbeddingT": { "dtype": "float32", "shape": [1, 4] },
"gammaT": { "dtype": "float32", "shape": [4] },
"betaT": { "dtype": "float32", "shape": [4] }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 1, 4] },
"maskIndexT": { "dtype": "int32", "shape": [1] },
"embeddingSumT": { "dtype": "float32", "shape": [1, 1, 4] }
}
},
{
"name": "noseg_nopos_nosum_mask_index_without_mask",
"provenance": {
"source": "onnxruntime/contrib_ops/cpu/bert/embed_layer_norm.cc",
"notes": "Pins ORT's independently optional mask_index output: when mask is absent, the output is initialized to zeros."
},
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [0, 0] } }
}
},
{
"name": "noseg_nopos_nosum_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2] }
}
},
{
"name": "noseg_nopos_sum_mask_index_without_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [0, 0] } },
"embeddingSumT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "noseg_nopos_sum_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2] },
"embeddingSumT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "noseg_posids_nosum_mask_index_without_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"positionIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 2, 4, 0, 2, 4, 0, 2] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [0, 0] } }
}
},
{
"name": "noseg_posids_nosum_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"positionIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 2, 4, 0, 2, 4, 0, 2] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2] }
}
},
{
"name": "noseg_posids_sum_mask_index_without_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"positionIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 2, 4, 0, 2, 4, 0, 2] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [0, 0] } },
"embeddingSumT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "noseg_posids_sum_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"positionIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 2, 4, 0, 2, 4, 0, 2] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2] },
"embeddingSumT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "seg_nopos_nosum_mask_index_without_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [0, 0] } }
}
},
{
"name": "seg_nopos_nosum_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2] }
}
},
{
"name": "seg_nopos_sum_mask_index_without_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [0, 0] } },
"embeddingSumT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "seg_nopos_sum_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2] },
"embeddingSumT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "seg_posids_nosum_mask_index_without_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"positionIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 2, 4, 0, 2, 4, 0, 2] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [0, 0] } }
}
},
{
"name": "seg_posids_nosum_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"positionIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 2, 4, 0, 2, 4, 0, 2] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2] }
}
},
{
"name": "seg_posids_sum_mask_index_without_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"positionIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 2, 4, 0, 2, 4, 0, 2] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [0, 0] } },
"embeddingSumT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "seg_posids_sum_mask",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"positionIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 2, 4, 0, 2, 4, 0, 2] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2] },
"embeddingSumT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "noseg_nopos_sum_mask_index_omitted",
"provenance": { "notes": "Compact optional-output regression: embedding_sum does not imply mask_index." },
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"wordEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.2, -0.4, 0.7, 0.1] }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.3, 0.6, -0.2, 0.5] }
},
"gammaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [1.1, 0.9] } },
"betaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [0.05, -0.1] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 2, 2], "tolerance": 0.00001, "relTolerance": 0.0001 },
"embeddingSumT": { "dtype": "float32", "shape": [1, 2, 2], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "noseg_posids_sum_mask_index_omitted",
"provenance": {
"notes": "Compact optional-output regression: requesting embedding_sum does not require mask_index."
},
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"positionIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [1, 0] } },
"wordEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.2, -0.4, 0.7, 0.1] }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.3, 0.6, -0.2, 0.5] }
},
"gammaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [1.1, 0.9] } },
"betaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [0.05, -0.1] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 2, 2], "tolerance": 0.00001, "relTolerance": 0.0001 },
"embeddingSumT": { "dtype": "float32", "shape": [1, 2, 2], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "seg_nopos_nosum_mask_index_omitted",
"provenance": { "notes": "Compact optional-output regression: segment embeddings do not require mask_index." },
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"segmentIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"wordEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.2, -0.4, 0.7, 0.1] }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.3, 0.6, -0.2, 0.5] }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.1, 0.2, -0.3, 0.4] }
},
"gammaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [1.1, 0.9] } },
"betaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [0.05, -0.1] } }
},
"outputs": { "outputT": { "dtype": "float32", "shape": [1, 2, 2], "tolerance": 0.00001, "relTolerance": 0.0001 } }
},
{
"name": "seg_posids_nosum_mask_index_omitted",
"provenance": {
"notes": "Compact optional-output regression: segment and position ids do not require mask_index."
},
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"segmentIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"positionIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [1, 0] } },
"wordEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.2, -0.4, 0.7, 0.1] }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.3, 0.6, -0.2, 0.5] }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.1, 0.2, -0.3, 0.4] }
},
"gammaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [1.1, 0.9] } },
"betaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [0.05, -0.1] } }
},
"outputs": { "outputT": { "dtype": "float32", "shape": [1, 2, 2], "tolerance": 0.00001, "relTolerance": 0.0001 } }
},
{
"name": "seg_posids_sum_mask_index_omitted",
"provenance": {
"notes": "Compact optional-output regression: embedding_sum remains independently requestable with the full embedding input set."
},
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"segmentIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"positionIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [1, 0] } },
"wordEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.2, -0.4, 0.7, 0.1] }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.3, 0.6, -0.2, 0.5] }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [2, 2],
"data": { "kind": "values", "values": [0.1, 0.2, -0.3, 0.4] }
},
"gammaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [1.1, 0.9] } },
"betaT": { "dtype": "float32", "shape": [2], "data": { "kind": "values", "values": [0.05, -0.1] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 2, 2], "tolerance": 0.00001, "relTolerance": 0.0001 },
"embeddingSumT": { "dtype": "float32", "shape": [1, 2, 2], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "position_ids_broadcast_row",
"provenance": {
"notes": "position_ids of shape (1, sequence_length) is shared by every batch, so the row index drops back to the position within the sequence."
},
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"positionIdsT": { "dtype": "int32", "shape": [1, 4], "data": { "kind": "values", "values": [0, 2, 4, 0] } },
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": { "outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 } }
},
{
"name": "mask_full_row_and_partial_row",
"provenance": {
"notes": "Pins the public first-zero contract with one full row and one non-left-aligned row. The latter distinguishes first-zero (1) from the CPU provider's divergent count-ones result (3)."
},
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 1, 1, 0, 1, 1] } }
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 },
"maskIndexT": { "dtype": "int32", "shape": [2], "data": { "kind": "values", "values": [4, 1] } }
}
},
{
"name": "mask_input_without_mask_index",
"provenance": {
"notes": "Pins the independent optionality in the opposite direction: a mask input is valid when mask_index is not requested."
},
"attrs": { "mask_index_type": 0 },
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 0, 1, 1, 0, 1, 0, 1] } }
},
"outputs": { "outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 } }
},
{
"name": "explicit_epsilon",
"attrs": { "epsilon": 0.00001 },
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"wordEmbeddingT": {
"dtype": "float32",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": { "outputT": { "dtype": "float32", "shape": [2, 4, 8], "tolerance": 0.00001, "relTolerance": 0.0001 } }
},
{
"name": "hidden_wider_than_workgroup_stride",
"provenance": {
"notes": "A hidden size that is not a multiple of the workgroup, so the strided loops cover a partial final step."
},
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [3, 10] } },
"segmentIdsT": { "dtype": "int32", "shape": [1, 2], "data": { "kind": "values", "values": [0, 1] } },
"wordEmbeddingT": {
"dtype": "float32",
"shape": [12, 40],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float32",
"shape": [4, 40],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float32",
"shape": [2, 40],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float32",
"shape": [40],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float32",
"shape": [40],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": {
"outputT": { "dtype": "float32", "shape": [1, 2, 40], "tolerance": 0.00001, "relTolerance": 0.0001 },
"embeddingSumT": { "dtype": "float32", "shape": [1, 2, 40], "tolerance": 0.00001, "relTolerance": 0.0001 }
}
},
{
"name": "f16_full",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"segmentIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [0, 0, 0, 0, 0, 0, 0, 0] }
},
"wordEmbeddingT": {
"dtype": "float16",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float16",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"segmentEmbeddingT": {
"dtype": "float16",
"shape": [3, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.53, "cosStep": 0.19, "scale": 0.4 }
},
"gammaT": {
"dtype": "float16",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float16",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
},
"maskT": { "dtype": "int32", "shape": [2, 4], "data": { "kind": "values", "values": [1, 1, 1, 0, 1, 1, 0, 0] } }
},
"outputs": {
"outputT": { "dtype": "float16", "shape": [2, 4, 8], "tolerance": 0.004, "relTolerance": 0.01 },
"maskIndexT": { "dtype": "int32", "shape": [2] },
"embeddingSumT": { "dtype": "float16", "shape": [2, 4, 8], "tolerance": 0.004, "relTolerance": 0.01 }
}
},
{
"name": "f16_cuda_association_embedding_sum_exact",
"provenance": {
"source": "onnxruntime/contrib_ops/cuda/bert/embed_layer_norm_impl.cu",
"notes": "The first lane distinguishes staged (word + segment) + position from (word + position) + segment by one float16 ULP."
},
"inputs": {
"inputIdsT": { "dtype": "int32", "shape": [1, 1], "data": { "kind": "values", "values": [0] } },
"segmentIdsT": { "dtype": "int32", "shape": [1, 1], "data": { "kind": "values", "values": [0] } },
"wordEmbeddingT": {
"dtype": "float16",
"shape": [1, 4],
"data": { "kind": "values", "values": [-0.9599609375, 1.0, -1.0, 0.0] }
},
"positionEmbeddingT": {
"dtype": "float16",
"shape": [1, 4],
"data": { "kind": "values", "values": [3.134765625, 2.0, 1.0, 0.5] }
},
"segmentEmbeddingT": {
"dtype": "float16",
"shape": [1, 4],
"data": { "kind": "values", "values": [0.2060546875, 3.0, 2.0, -0.25] }
},
"gammaT": { "dtype": "float16", "shape": [4], "data": { "kind": "values", "values": [1.0, 1.0, 1.0, 1.0] } },
"betaT": { "dtype": "float16", "shape": [4], "data": { "kind": "values", "values": [0.0, 0.0, 0.0, 0.0] } }
},
"outputs": {
"outputT": { "dtype": "float16", "shape": [1, 1, 4], "tolerance": 0.004, "relTolerance": 0.01 },
"embeddingSumT": {
"dtype": "float16",
"shape": [1, 1, 4],
"data": { "kind": "values", "values": [2.380859375, 6.0, 2.0, 0.25] },
"tolerance": 0,
"relTolerance": 0
}
}
},
{
"name": "f16_minimal",
"inputs": {
"inputIdsT": {
"dtype": "int32",
"shape": [2, 4],
"data": { "kind": "values", "values": [3, 10, 17, 4, 11, 18, 5, 12] }
},
"wordEmbeddingT": {
"dtype": "float16",
"shape": [20, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.13, "cosStep": 0.29, "scale": 0.9 }
},
"positionEmbeddingT": {
"dtype": "float16",
"shape": [6, 8],
"data": { "kind": "fillFloat32", "sinStep": 0.37, "cosStep": 0.11, "scale": 0.6 }
},
"gammaT": {
"dtype": "float16",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.23, "cosStep": 0.41, "scale": 0.3, "offset": 1.0 }
},
"betaT": {
"dtype": "float16",
"shape": [8],
"data": { "kind": "fillFloat32", "sinStep": 0.61, "cosStep": 0.17, "scale": 0.25 }
}
},
"outputs": { "outputT": { "dtype": "float16", "shape": [2, 4, 8], "tolerance": 0.004, "relTolerance": 0.01 } }
}
]
}