code: def _save_optimizer_config(
      optimizer: Union["tf.keras.optimizers.Optimizer", type]
  ) -> dict:
      """
      Function to save tensorflow or pytorch optimizers.
  
      Parameters
      ----------
      optimizer
          The optimizer to save.
  
      Returns
      -------
      Optimizer config dict.
      """
      if isinstance(optimizer, type):
          return {"class_name": optimizer.__name__}
      else:
          return save_optimizer_config_tf(optimizer)
  
imports: import logging
  import os
  import shutil
  import warnings
  from functools import partial
  from pathlib import Path
  from typing import Callable, Optional, Tuple, Union, Any, Dict, TYPE_CHECKING
  import dill
  import numpy
  import toml
  from transformers import PreTrainedTokenizerBase
  from alibi_detect.saving._typing import VALID_DETECTORS
  from alibi_detect.saving.loading import _replace, validate_config, STATE_PATH
  from alibi_detect.saving.registry import registry
  from alibi_detect.utils._types import supported_models_all, supported_models_tf, supported_models_torch, supported_models_sklearn
  from alibi_detect.base import Detector, ConfigurableDetector, StatefulDetectorOnline
  from alibi_detect.saving._tensorflow import save_detector_legacy, save_model_config_tf, save_optimizer_config_tf
  from alibi_detect.saving._pytorch import save_model_config_pt, save_device_pt
  from alibi_detect.saving._sklearn import save_model_config_sk
label_desc: Use image node_id 12 for calling a global function with example usage: _save_optimizer_config(optimizer) and returns: dict, save_optimizer_config_tf