旋转位置编码处理的反向。
struct RopeGradParam { std::vector<int32_t> qSeqLen; bool operator==(const RopeGradParam &other) const { return this->qSeqLen == other.qSeqLen; } };
成员名称 |
描述 |
---|---|
qSeqLen |
存储unpad场景下每个batch实际seqlen的值。size不能为0。 |
参数 |
维度 |
数据类型 |
格式 |
描述 |
---|---|---|---|---|
ropeQ_grad1 |
[nTokens, hiddenSize] |
float16 |
ND |
ropeQ_grad矩阵。 |
ropeQ_grad2 |
[nTokens, hiddenSize] |
float16 |
ND |
ropeQ_grad矩阵。 |
cos |
[maxSeqLen, headDim] |
float16 |
ND |
cos矩阵,maxSeqLen为qSeqLen中的最大元素。 |
sin |
[maxSeqLen, headDim] |
float16 |
ND |
sin矩阵。 |
参数 |
维度 |
数据类型 |
格式 |
描述 |
---|---|---|---|---|
q_grad |
[nTokens, hiddenSize] |
float16 |
ND |
q_grad矩阵。 |
k_grad |
[nTokens, hiddenSize] |
float16 |
ND |
k_grad矩阵。 |