What is the difference between register_full_backward_hook and register_backward_hook?

If i use pytorch 1.3 input_gradient in register_backward_hook is a tuple with three parameters. But if i use higher version of pytorch, then I must use register_full_backward_hook and input_gradient is a tuple with one parameters. why is that?