code: def __init__(
      self,
      step: Step,
      inputs: List[DataPlaceholder],
      outputs: List[DataPlaceholder],
      targets: List[DataPlaceholder],
      fit_func: Optional[Callable],
      compute_func: Callable,
      fit_compute_func: Optional[Callable],
      trainable: bool,
  ):
      self._step = step
      self._inputs = inputs
      self._outputs = outputs
      self._targets = targets
      self.fit_func = (
          fit_func  # at present, fit is the same for all step calls
      )
      self.compute_func = compute_func
      self.fit_compute_func = fit_compute_func
      self.trainable = trainable
  
imports: import inspect
  import warnings
  from typing import Any, Callable, Dict, List, Optional, Union, TYPE_CHECKING
  from baikal._core.data_placeholder import DataPlaceholder, is_data_placeholder_list
  from baikal._core.utils import listify, make_name, make_repr
label_desc: Use image node_id 1 to create a new Node object  with example: obj = Node(step, inputs, outputs, targets, fit_func, compute_func, fit_compute_func, trainable)