ClikaRT::ops::gather
function
gather()
Axis-wise gather: read input at positions given by index along dim.
out[i][j][k] = x[index[i][j][k]][j][k] for dim = 0 (likewise for any other dim; only that axis's coordinate is replaced). The output takes index's shape and input's dtype. Index tensors are Int32 or Int64 on every backend; entries must lie in [0, x's dim extent).
Parameters
input: the source.dim: the axis the indices address (negative wraps).index: integer positions, same rank asinput.
Throws
ClikaRT::Error: (INVALID_ARGUMENT) whendimis out of range or the index dtype is notInt32/Int64(code_name()carries the reason).
Returns: a new tensor shaped like index, dtype of input.
// one logit per row: [B, V] gathered by [B, 1] ids -> [B, 1]
auto picked = ClikaRT::ops::gather(logits, 1, ids);
Declared in ClikaRT/compute/ops.h, line 2427