docstr: Accepts recommendations for api params from DataAnalyser
  
  Args:
      input_data: data for preprocessing
      recommendations: dict with recommendations
docstr_tok: ["Accepts","recommendations","for","api","params","from","DataAnalyser","Args",":","input_data",":","data","for","preprocessing","recommendations",":","dict","with","recommendations"]
code: def accept_and_apply_recommendations(
      self,
      input_data: Union[InputData, MultiModalData],
      recommendations: Dict,
  ):
      """
      Accepts recommendations for api params from DataAnalyser
  
      Args:
          input_data: data for preprocessing
          recommendations: dict with recommendations
      """
  
      if isinstance(input_data, MultiModalData):
          for data_source_name, values in input_data.items():
              self.accept_and_apply_recommendations(
                  input_data[data_source_name],
                  recommendations[data_source_name],
              )
      else:
          if "label_encoded" in recommendations:
              self.log.info("Change preset due to label encoding")
              self.change_preset_for_label_encoded_data(
                  input_data.task, input_data.data_type
              )
  
          # update api params with recommendations obtained using meta rules
          for key in recommendations:
              self.update({key: recommendations[key]})
  
imports: import datetime
  from collections import UserDict
  from copy import deepcopy, copy
  from typing import Any, Dict, Optional, Union
  from golem.core.log import LoggerAdapter, default_log
  from golem.core.optimisers.genetic.gp_params import GPAlgorithmParameters
  from golem.core.optimisers.optimizer import GraphGenerationParams
  from golem.utilities.utilities import determine_n_jobs
  from fedot.api.api_utils.api_params_repository import ApiParamsRepository
  from fedot.api.api_utils.presets import OperationsPreset
  from fedot.core.constants import AUTO_PRESET_NAME, DEFAULT_FORECAST_LENGTH
  from fedot.core.data.data import InputData
  from fedot.core.data.multi_modal import MultiModalData
  from fedot.core.pipelines.adapters import PipelineAdapter
  from fedot.core.pipelines.pipeline_advisor import PipelineChangeAdvisor
  from fedot.core.pipelines.pipeline_composer_requirements import PipelineComposerRequirements
  from fedot.core.pipelines.pipeline_node_factory import PipelineOptNodeFactory
  from fedot.core.pipelines.verification import rules_by_task
  from fedot.core.repository.dataset_types import DataTypesEnum
  from fedot.core.repository.pipeline_operation_repository import PipelineOperationRepository
  from fedot.core.repository.tasks import Task, TaskTypesEnum, TaskParams, TsForecastingParams
label_desc: Use image node_id 3 for calling the ApiParams obj's underlying member method code with example usage: obj.accept_and_apply_recommendations(input_data, recommendations) without return types