Add RotaryEmbeddings(23) - CPU (#24980)
### Description
<!-- Describe your changes. -->
Add ONNX RotaryEmbedding(23) following
https://github.com/onnx/onnx/blob/main/docs/Operators.md#RotaryEmbedding.
The PR uses contrib op RotaryEmbedding implementation under the hood.
The main difference between this op and the contrib op is that the
`position_ids` in ONNX RotaryEmbedding is optional. When it's not
provided, `cos_cache` and `sin_cache` should be 3d.
### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
Fix #24556
Reference #23507