RopeOperation
功能
旋转位置编码处理。
约束
hiddenSizeQ必须是hiddenSizeK的整数倍且满足hiddenSizeQ = headDim * headNum。
定义
struct RopeParam {
int32_t rotaryCoeff = 4;
};
成员
成员名称 |
描述 |
|---|---|
rotaryCoeff |
rope,旋转系数,对半旋转是2,支持配置2、4或headDim / 2。 |
输入
参数 |
维度 |
数据类型 |
格式 |
|---|---|---|---|
q |
[ntokens, hiddenSizeQ] |
float16 |
ND |
k |
[ntokens, hiddenSizeK] |
float16 |
ND |
cos |
[ntokens, headDim] / [ntokens, headDim / 2] |
float16 |
ND
|
sin |
[ntokens, headDim] / [ntokens, headDim/ 2] |
float16 |
ND
|
seqLen |
[batch] |
uint32/int32 |
ND |
输出
参数 |
维度 |
数据类型 |
格式 |
|---|---|---|---|
ropeQ |
[ntokens, hiddenSizeQ] |
float16 |
ND |
ropeK |
[ntokens, hiddenSizeK] |
float16 |
ND |