However, migrating to a keras-like approach, you can work thinking about "objects with variables inside" and then the graph will be built for you by the abstraction introduced by `tf.keras.Model`.
However, for automatic differentiation, graph is always required (as you can see from the example that uses eager)