[WebNN] Fix bug in RotaryEmbedding#24516
Conversation
The input shape should be reshaped or transposed to [batch_size, sequence_length, num_heads, head_size]
onnxruntime/core/providers/webnn/builders/impl/rotaryEmbedding_op_builder.cc
Outdated
Show resolved
Hide resolved
onnxruntime/core/providers/webnn/builders/impl/rotaryEmbedding_op_builder.cc
Outdated
Show resolved
Hide resolved
onnxruntime/core/providers/webnn/builders/impl/rotaryEmbedding_op_builder.cc
Show resolved
Hide resolved
onnxruntime/core/providers/webnn/builders/impl/rotaryEmbedding_op_builder.cc
Outdated
Show resolved
Hide resolved
|
@fdwr, thanks for your comments! Fixed and PTAL again, thanks! |
|
/azp run ONNX Runtime Web CI Pipeline,Windows GPU CI Pipeline,Linux Android Emulator QNN CI Pipeline,Windows GPU WebGPU CI Pipeline,Windows OpenVINO CI Pipeline |
|
/azp run Linux CPU CI Pipeline,Linux CPU Minimal Build E2E CI Pipeline,Linux GPU CI Pipeline,Linux GPU TensorRT CI Pipeline,Linux OpenVINO CI Pipeline,Linux QNN CI Pipeline,MacOS CI Pipeline,Windows ARM64 QNN CI Pipeline,Windows CPU CI Pipeline |
|
/azp run Windows GPU CUDA CI Pipeline,Windows GPU DML CI Pipeline,Windows GPU Doc Gen CI Pipeline,Win_TRT_Minimal_CUDA_Test_CI |
|
/azp run Windows GPU TensorRT CI Pipeline,onnxruntime-binary-size-checks-ci-pipeline,orttraining-linux-ci-pipeline,orttraining-linux-gpu-ci-pipeline,orttraining-ortmodule-distributed,Windows x64 QNN CI Pipeline,Big Models |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Azure Pipelines successfully started running 2 pipeline(s). |
|
Azure Pipelines successfully started running 3 pipeline(s). |
1 similar comment
|
Azure Pipelines successfully started running 3 pipeline(s). |
|
Remaining 5 failures are unrelated and infrastructure related.
|
This PR fixes incorrect input/output shape, according to [DML EP's implementation](https://github.com/microsoft/onnxruntime/blob/main/onnxruntime/core/providers/dml/DmlExecutionProvider/src/Operators/DmlOperatorRotaryEmbedding.cpp#L142C47-L142C94), we should ensure the input shape to be [batch_size, sequence_length, num_heads, head_size].
This PR fixes incorrect input/output shape, according to DML EP's implementation, we should ensure the input shape to be [batch_size, sequence_length, num_heads, head_size].