CANN/ops-transformer注意力融合算子
AttentionWorkerCombine【免费下载链接】ops-transformer本项目是CANN提供的transformer类大模型算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-transformer产品支持情况产品是否支持Ascend 950PR/Ascend 950DT×Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√Atlas 200I/500 A2 推理产品×Atlas 推理系列产品×Atlas 训练系列产品×功能说明算子功能将多个计算单元处理的注意力token数据进行融合结合专家权重对结果进行加权输出最终的注意力融合结果并更新层ID。参数说明参数名输入/输出/属性描述数据类型数据格式schedule_context输入包含调度上下文信息。INT8NDexpert_scales输入表示专家权重。FLOATNDlayer_id输入当前的模型层ID。INT32NDy输出最终的注意力合并结果。FLOAT16BFLOAT16NDnext_layer_id输出下一个要处理的层ID。INT32NDhidden_size属性token_data的隐藏维度大小用于确定输出y的第二维大小。必要属性。Int-token_dtype属性指定schedule_context中token数据的原始精度类型0表示FLOAT161表示BFLOAT16。Int-need_schedule属性指定是否等待token数据填充完成后再执行0表示不等待1表示等待。Int-约束说明schedule_context为1D的Tensor。expert_scales为2D的Tensor[BatchSize, K]。y为2D的Tensor[BatchSize, HiddenSize]即第二维由属性hidden_size确定。layer_id和next_layer_id为1D的Tensor。调用说明调用方式样例代码说明图模式调用test_geir_attention_worker_combine.cpp通过算子IR构图方式调用AttentionWorkerCombine算子。【免费下载链接】ops-transformer本项目是CANN提供的transformer类大模型算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-transformer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考