def fast_layer_norm(
    hidden_states: torch.Tensor,
    normalized_shape: Tuple[int, ...],
    weight: torch.Tensor,
    bias: torch.Tensor,
    eps: float,
):
    r"""
    Applies PyTorch Layernorm (see https://pytorch.org/docs/stable/generated/torch.nn.LayerNorm.html)
    on the input (hidden states).

    Args:
        hidden_states(torch.Tensor) : the input tensor to apply normalization.
        normalized_shape (int or list) or torch.Size) input shape from an
            expected input of size.
        weight (torch.Tensor): the weight to apply normalization.
        bias (torch.Tensor): an additive bias for normalization.
        eps (float): a value added to the denominator for numerical stability.

    """

    return FastLayerNorm.apply_function(
        hidden_states, normalized_shape, weight, bias, eps
    )

    Applies PyTorch Layernorm (see https://pytorch.org/docs/stable/generated/torch.nn.LayerNorm.html)
    on the input (hidden states).

    Args:
        hidden_states(torch.Tensor) : the input tensor to apply normalization.
        normalized_shape (int or list) or torch.Size) input shape from an
            expected input of size.
        weight (torch.Tensor): the weight to apply normalization.
        bias (torch.Tensor): an additive bias for normalization.
        eps (float): a value added to the denominator for numerical stability.

    
intel_extension_for_pytorch/llm/functional/fusions.py