def forward(self, x: Tensor) -> Tensor:
        r"""Applies Conv1d on the input tensor of shape :math:`(B, \text{seq\_in}, \text{channels\_in})`.
        The output has shape :math:`(B, \text{seq\_out}, \text{channels\_out})`, where
        .. math::
            \text{seq\_out} = \left\lfloor\frac{\text{seq\_in} + 2 \times \text{padding} - \text{dilation}
                             \times (\text{kernel\_size} - 1) - 1}{\text{stride}} + 1\right\rfloor
        """
        # make the conv2d inputs 4d
        xu = unsqueeze(dim=2)(x)
        wu = unsqueeze(dim=2)(self.weight.tensor())
        if self.bias is None:
            c2d = self.op(xu, wu)
        else:
            c2d = self.op(xu, wu, self.bias.tensor())
        # make the result 3d again
        return squeeze(dim=2)(c2d)
Applies Conv1d on the input tensor of shape :math:`(B, \text{seq\_in}, \text{channels\_in})`.
        The output has shape :math:`(B, \text{seq\_out}, \text{channels\_out})`, where
        .. math::
            \text{seq\_out} = \left\lfloor\frac{\text{seq\_in} + 2 \times \text{padding} - \text{dilation}
                             \times (\text{kernel\_size} - 1) - 1}{\text{stride}} + 1\right\rfloor
        
python/aitemplate/frontend/nn/conv1d.py