import torch
import torch.nn as nn

class Model(nn.Module):
    def __init__(self, target):
        super(Model, self).__init__()
        self.target = nn.Parameter(target)

    def forward(self, x: torch.Tensor) -> torch.Tensor:
        dot = torch.sum(x * self.target, dim=-1)
        mse = torch.mean((x - self.target) ** 2, dim=-1)
        return torch.tanh(dot - mse)

batch_size = 128
input_dim = 1024

def get_inputs():
    x = torch.randn(batch_size, input_dim)
    return [x]

def get_init_inputs():
    target = torch.randn(input_dim)
    return [target]