pub struct IRotaryEmbeddingLayer { /* private fields */ }Expand description
IRotaryEmbeddingLayer
Layer that implements Rotary Position Embedding (RoPE) (https://arxiv.org/abs/2104.09864).
Do not inherit from this class, as doing so will break forward-compatibility of the API and ABI.
Implementations§
Source§impl IRotaryEmbeddingLayer
impl IRotaryEmbeddingLayer
Sourcepub fn setInterleaved(self: Pin<&mut IRotaryEmbeddingLayer>, interleaved: bool)
pub fn setInterleaved(self: Pin<&mut IRotaryEmbeddingLayer>, interleaved: bool)
Set whether the input is in interleaved format, i.e., whether the 2-d vectors rotated are taken from adjacent 2 elements in the hidden dimension. The default value is false.
See [getInterleaved]
Sourcepub fn getInterleaved(self: &IRotaryEmbeddingLayer) -> bool
pub fn getInterleaved(self: &IRotaryEmbeddingLayer) -> bool
Get whether the input is in interleaved format. The default value is false.
See [setInterleaved]
Sourcepub fn setRotaryEmbeddingDim(
self: Pin<&mut IRotaryEmbeddingLayer>,
rotaryEmbeddingDim: i32,
) -> bool
pub fn setRotaryEmbeddingDim( self: Pin<&mut IRotaryEmbeddingLayer>, rotaryEmbeddingDim: i32, ) -> bool
Set the number of hidden dimensions participating in RoPE. The default value is 0, representing H, i.e., all hidden dimensions in each head. Must be non-negative and even.
See [getRotaryEmbeddingDim]
Sourcepub fn getRotaryEmbeddingDim(self: &IRotaryEmbeddingLayer) -> i32
pub fn getRotaryEmbeddingDim(self: &IRotaryEmbeddingLayer) -> i32
Get the number of hidden dimensions participating in RoPE. The default value is 0, representing H, i.e., all hidden dimensions in each head.
See [setRotaryEmbeddingDim]