The policy adopted throughout the potentials package is that if a single-point calculation fails it returns nan energy and zero forces. The latter effectively makes the training ignore this points and forces the training to proceed. We should make this a user-defined option instead.
This could be implemented by returning nan forces as well and using the (already existing) ignore_nan option in BoltzmannKLDivLoss so that the user may control the behavior (crash due to nan or ignore) through the loss options.