code: def feature_binning_predict(
      ctx: Context,
      role: Role,
      test_data: cpn.dataframe_input(roles=[GUEST, HOST]),
      input_model: cpn.json_model_input(roles=[GUEST, HOST]),
      transform_method: cpn.parameter(
          type=params.string_choice(["woe", "bin_idx"]),
          default=None,  # may support user-provided dict in future release
          desc="str, values to which binned data will be transformed, "
          "select from {'woe', 'bin_idx'}; "
          "note that host will not transform features "
          "to woe values regardless of setting",
      ),
      skip_metrics: cpn.parameter(
          type=bool,
          default=False,
          desc="bool, whether compute host's metrics or not",
      ),
      test_output_data: cpn.dataframe_output(roles=[GUEST, HOST]),
  ):
      predict(
          ctx,
          input_model,
          test_data,
          test_output_data,
          role,
          transform_method,
          skip_metrics,
      )
  
file_path: FATE/python/fate/components/components/hetero_feature_binning.py
imports: import logging
  from typing import List
  from fate.arch import Context
  from fate.components.core import GUEST, HOST, Role, cpn, params
  from fate.ml.feature_binning import HeteroBinningModuleHost, HeteroBinningModuleGuest
label_desc: Use image node_id 3 for calling a global function with example usage: feature_binning_predict(ctx, role, test_data, input_model, transform_method, skip_metrics, test_output_data) without return types