Looking at Making new layers and models via subclassing I see that the derived class:
class VariationalAutoEncoder(keras.Model): ...
does not accept the ‘inputs’ keyword argument. I wondered why that is? I see that the code https://github.com/keras-team/keras/blob/v2.6.0/keras/utils/generic_utils.py#L1137
forbids it, but then, why would inputs and outputs need to be defined for the plain tf.keras.Model, but not for a derived class?