Okay, so there are two flavors of saved_model: “vanilla” and “keras”.
Vanilla only has the basic TensorFlow constructs (functions, variables).
The “keras” flavored ones also have all the metadata required to rebuild the keras objects.
It can’t automatically uncompile the low-level representation up into a higher-level keras representation.
tf.keras.models.load_model should be printing a warning that there’s no keras metadata available in that saved_model. IIRC, future versions of tensorflow will fail if you use tf.keras.models.load_model on a saved_model that doesn’t have it.
Use tf.saved_model.load. It will return the same _UserObect. Inspect that that to find your functions. does it have a .signatures attirbute?