keras/src/optimizers/base_optimizer.py/BaseOptimizer/add_variable
class BaseOptimizer:    def add_variable(
        self,
        shape,
        initializer="zeros",
        dtype=None,
        aggregation="mean",
        name=None,
    ):
        self._check_super_called()
        initializer = initializers.get(initializer)
        with backend.name_scope(self.name, caller=self):
            variable = backend.Variable(
                initializer=initializer,
                shape=shape,
                dtype=dtype,
                trainable=False,
                aggregation=aggregation,
                name=name,
            )
        self._track_variable(variable)
        return variable