Да, Вы правы. Входной тензор должен быть дополнен, если размер пакета больше 1, а последовательности имеют разные размеры.
Но пример генерирует входной тензор как
def inputTensor(line):
tensor = torch.zeros(len(line), 1, n_letters) # <-- (<sequence_length>, <batch_size>, <input_dim>)
for li in range(len(line)):
letter = line[li]
tensor[li][0][all_letters.find(letter)] = 1
return tensor
В RNN, LSTM и GRU Pytorch, если batch_first=True
не передано явно, 1-е измерение фактически является длиной последовательности, а 2-е измерение является размером партии.
Пример приведен только для того, чтобы показать поток, но да, я думаю, что они должны были поставить небольшую заметку об этом.