code: def get_objective_evaluate(
      metric: MetricIDType,
      data: InputData,
      cv_folds: Optional[int] = None,
  ) -> PipelineObjectiveEvaluate:
      objective = MetricsObjective(metric)
      data_producer = DataSourceSplitter(cv_folds).build(data)
      objective_evaluate = PipelineObjectiveEvaluate(
          objective, data_producer
      )
      return objective_evaluate
  
imports: from datetime import timedelta
  from typing import Optional
  import numpy
  import pytest
  from golem.core.tuning.hyperopt_tuner import HyperoptTuner
  from golem.core.tuning.iopt_tuner import IOptTuner
  from golem.core.tuning.sequential import SequentialTuner
  from golem.core.tuning.simultaneous import SimultaneousTuner
  from hyperopt import tpe
  from fedot.core.constants import DEFAULT_TUNING_ITERATIONS_NUMBER
  from fedot.core.data.data import InputData
  from fedot.core.optimisers.objective import PipelineObjectiveEvaluate
  from fedot.core.optimisers.objective.data_source_splitter import DataSourceSplitter
  from fedot.core.optimisers.objective.metrics_objective import MetricsObjective
  from fedot.core.pipelines.tuning.search_space import PipelineSearchSpace
  from fedot.core.pipelines.tuning.tuner_builder import TunerBuilder
  from fedot.core.repository.metrics_repository import ClassificationMetricsEnum, MetricIDType
  from test.integration.pipelines.tuning.test_pipeline_tuning import get_not_default_search_space
  from test.unit.optimizer.test_pipeline_objective_eval import pipeline_first_test
  from test.unit.validation.test_table_cv import get_classification_data
label_desc: Use image node_id 1 for calling a global function with example usage: get_objective_evaluate(metric, data, cv_folds) and returns: objective_evaluate