code: def kfold_cross_validate_cli(
      k_fold,
      config=None,
      dataset=None,
      data_format=None,
      output_directory="results",
      random_seed=default_random_seed,
      skip_save_k_fold_split_indices=False,
      **kwargs,
  ):
      """Wrapper function to performs k-fold cross validation.
  
      # Inputs
      :param k_fold: (int) number of folds to create for the cross-validation
      :param config: (Union[str, dict], default: None) a dictionary or file path
              containing model configuration. Refer to the [User Guide]
             (http://ludwig.ai/user_guide/#model-config) for details.
      :param dataset: (string, default: None)
      :param output_directory: (string, default: 'results')
      :param random_seed: (int) Random seed used k-fold splits.
      :param skip_save_k_fold_split_indices: (boolean, default: False) Disables
              saving k-fold split indices
  
      :return: None
      """
  
      (kfold_cv_stats, kfold_split_indices) = kfold_cross_validate(
          k_fold,
          config=config,
          dataset=dataset,
          data_format=data_format,
          output_directory=output_directory,
          random_seed=random_seed,
      )
  
      # save k-fold cv statistics
      save_json(
          os.path.join(
              output_directory, "kfold_training_statistics.json"
          ),
          kfold_cv_stats,
      )
  
      # save k-fold split indices
      if not skip_save_k_fold_split_indices:
          save_json(
              os.path.join(
                  output_directory, "kfold_split_indices.json"
              ),
              kfold_split_indices,
          )
  
file_path: ludwig/ludwig/experiment.py
imports: import argparse
  import logging
  import os
  import sys
  from typing import List, Optional, Union
  import pandas
  from ludwig.api import kfold_cross_validate, LudwigModel
  from ludwig.backend import ALL_BACKENDS, Backend, initialize_backend
  from ludwig.callbacks import Callback
  from ludwig.constants import CONTINUE_PROMPT, FULL, HYPEROPT, HYPEROPT_WARNING, TEST, TRAINING, VALIDATION
  from ludwig.contrib import add_contrib_callback_args
  from ludwig.globals import LUDWIG_VERSION
  from ludwig.utils.data_utils import load_config_from_str, load_yaml, save_json
  from ludwig.utils.defaults import default_random_seed
  from ludwig.utils.print_utils import get_logging_level_registry, print_ludwig, query_yes_no
label_desc: Use image node_id 2 for calling a global function with example usage: kfold_cross_validate_cli(k_fold, config, dataset, data_format, output_directory, random_seed, skip_save_k_fold_split_indices) without return types