% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/operations.R
\name{ggml_rope_multi}
\alias{ggml_rope_multi}
\title{Multi-RoPE for Vision Models (Graph)}
\usage{
ggml_rope_multi(
  ctx,
  a,
  b,
  c = NULL,
  n_dims,
  sections = c(0L, 0L, 0L, 0L),
  mode = 0L,
  n_ctx_orig = 0L,
  freq_base = 10000,
  freq_scale = 1,
  ext_factor = 0,
  attn_factor = 1,
  beta_fast = 32,
  beta_slow = 1
)
}
\arguments{
\item{ctx}{GGML context}

\item{a}{Input tensor}

\item{b}{Position tensor (int32)}

\item{c}{Optional frequency factors tensor (NULL for default)}

\item{n_dims}{Number of dimensions to apply rotation to}

\item{sections}{Integer vector of length 4 specifying dimension sections for MRoPE}

\item{mode}{RoPE mode}

\item{n_ctx_orig}{Original context length the model was trained on}

\item{freq_base}{Base frequency for RoPE (default 10000 for most models)}

\item{freq_scale}{Frequency scale factor (1.0 = no scaling)}

\item{ext_factor}{YaRN extension factor (0.0 to disable)}

\item{attn_factor}{Attention scale factor (typically 1.0)}

\item{beta_fast}{YaRN parameter for fast dimensions}

\item{beta_slow}{YaRN parameter for slow dimensions}
}
\value{
Tensor with multi-dimensional RoPE applied
}
\description{
Creates a graph node for multi-dimensional RoPE (MRoPE) used in vision transformers.
Supports separate rotation for different positional dimensions (e.g., height, width, time).
}
\seealso{
Other rope: 
\code{\link{ggml_rope_ext_inplace}()},
\code{\link{ggml_rope_multi_inplace}()}
}
\concept{rope}
