code: def _int2str_keys(dikt: dict) -> dict:
      """
      Private function to traverse a dict and convert any dict's with int keys to str keys (e.g.
      `categories_per_feature` kwarg for `TabularDrift`.
  
      Parameters
      ----------
      dikt
          The dictionary.
  
      Returns
      -------
      The converted dictionary.
      """
      dikt_copy = dikt.copy()
      for k, v in dikt.items():
          if isinstance(k, int):
              dikt_copy[str(k)] = dikt[k]
              dikt_copy.pop(k)
          if isinstance(v, dict):
              dikt_copy[k] = _int2str_keys(v)
      return dikt_copy
  
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 8 for calling a global function with example usage: _int2str_keys(dikt) and returns: dikt_copy