code: def keras_callback_to_key(callback):
      """Convert a `Keras` callback instance to a string that identifies it, along with the parameters
       used to create it
  
      Parameters
      ----------
      callback: Child instance of `keras.callbacks.Callback`
          A Keras callback for which a key string describing it will be created
  
      Returns
      -------
      callback_key: String
          A string identifying and describing `callback`"""
      signature_args = parameters_by_signature(
          callback, lambda n, v: n not in ["verbose"]
      )
      string_args = [
          f"{k}={v!r}" for k, v in sorted(signature_args.items())
      ]
      callback_key = (
          f"{callback.__class__.__name__}("
          + ", ".join(string_args)
          + ")"
      )
      return callback_key
  
file_path: hyperparameter_hunter/hyperparameter_hunter/compat/keras_helper.py
imports: from hyperparameter_hunter.settings import G
  from hyperparameter_hunter.utils.general_utils import to_snake_case, subdict
  from inspect import signature, _empty
  from types import MethodType
  from typing import List, Tuple
label_desc: Use image node_id 1 for calling a global function with example usage: keras_callback_to_key(callback) and returns: callback_key