diff --git a/torch_npu/meta/_meta_registrations.py b/torch_npu/meta/_meta_registrations.py index eac66746680b9cc8e5c0129f8f5a5526b8bebacc..6f14dfb9fc36d38172b7cb86cd591f195418c798 100644 --- a/torch_npu/meta/_meta_registrations.py +++ b/torch_npu/meta/_meta_registrations.py @@ -1021,4 +1021,15 @@ def npu_swiglu_meta(x, dim=-1): @impl(m, "npu_swiglu_backward") def npu_swiglugrad_meta(y, x, dim=-1): return torch.empty_like(x) - \ No newline at end of file + + +@impl(m, "npu_swiglu_quant") +def npu_swiglu_quant_meta(x, quant_scale, quant_offset, activate_left=False, quant_mode=0): + y_size = [] + scale_size = [] + for i in range(x.dim() - 1): + y_size.append(x.size(i)) + scale_size.append(x.size(i)) + y_size.append(math.floor(x.size(x.dim() - 1) / 2)) + return (torch.empty(y_size, dtype=torch.int8, device=x.device), + torch.empty(scale_size, dtype=torch.float32, device=x.device)) \ No newline at end of file