calls = [] model.register_forward_hook(lambda mod, inp, out: calls.append("hook")) model(x); print(calls) # ['hook'] model.forward(x); print(calls) # ['hook'] (the hook did not run again)