Да, вы должны отсоединить его. Отключение тензора удаляет его из вычислительного графа, поэтому он больше не отслеживается в отношении вычислений градиента, а это именно то, что вам нужно. Поскольку предыдущий токен можно рассматривать как константу, определяющую начальную точку, он будет отброшен через один временной шаг. Однако, если вы не отсоедините его, он все равно будет зависать, поскольку он отслеживается в вычислительном графе, который потребляет ненужную память.
Реально, накладные расходы памяти, как правило, довольно малы, поэтому вы могли бы только заметить это если у вас много временных шагов и вы используете верхний предел использования памяти графическим процессором. Просто расцените это как микрооптимизацию.
Есть случаи, когда вам абсолютно необходимо отсоединить тензор, чтобы избежать нежелательного обратного распространения, но это обычно происходит, когда один и тот же вход используется в двух разных моделях, поскольку обратное потребление потребляет график по умолчанию, и если два разных обратного распространения пытаются go по одному и тому же пути, он больше не будет доступен и завершится неудачей.