Hey @DonghunP
With the screenshot shared I am thinking the model should look something like this
class CustomModel(nn.Module):
    def __init__(self):
        super().__init__()
        self.projection = nn.Sequential(
            nn.Linear(64, 128),
            nn.Tanh(),
            nn.Linear(128, 128),
            nn.Tanh(),
        )
        self.LSTM = nn.LSTM(input_size=128,
                            hidden_size=512,
                            num_layers=2)
    def forward(self, x):
        pro = self.projection(x)
        output = self.LSTM(pro)
        return output

With an input of shape (seq_leng, batch_size, 64) the model would first transform the input vectors with the help of the projection layer, and then send that to the LSTM layer. Here the hidden_size of the LSTM layer would be 512 as there are 512 units in each LSTM cell and the num_layers would be 2. The num_layers is the number of layers stacked on top of each other.
Hope this makes sense to you!