aclnnMlaProlog
产品支持情况
功能说明
接口功能:推理场景,Multi-Head Latent Attention前处理的计算。主要计算过程分为四路,首先对输入乘以进行下采样和RmsNorm后分为两路,第一路乘以和经过两次上采样后得到;第二路乘以后经过旋转位置编码(ROPE)得到;第三路是输入乘以进行下采样和RmsNorm后传入Cache中得到;第四路是输入乘以后经过旋转位置编码后传入另一个Cache中得到。
计算公式:
RmsNorm公式
Query的计算公式,包括下采样、RmsNorm和两次上采样
对Query进行ROPE旋转位置编码
Key的计算公式,包括下采样和RmsNorm,将计算结果存入cache
对Key进行ROPE旋转位置编码,并将结果存入cache
函数原型
每个算子分为,必须先调用“aclnnMlaPrologGetWorkspaceSize”接口获取入参并根据流程计算所需workspace大小,再调用“aclnnMlaProlog”接口执行计算。
[object Object]
[object Object]
aclnnMlaPrologGetWorkspaceSize
参数说明
[object Object]undefined
返回值
aclnnStatus:返回状态码,具体参见。[object Object] 第一段接口完成入参校验,出现以下场景时报错:
[object Object]undefined
aclnnMlaProlog
约束说明
确定性计算:
- aclnnMlaProlog默认确定性实现。
shape 格式字段含义说明
[object Object]undefined
weight_dq,weight_uq_qr,weight_dkv_kr在不转置的情况下各个维度的表示:(k,n)。
aclnnMlaProlog接口支持场景:
[object Object]在不同量化场景下,参数的dtype和shape组合需要满足如下条件:
[object Object][object Object]
调用示例
[object Object]