code: def KerasOpenVINOModel(
      model,
      input_spec=None,
      precision="fp32",
      thread_num=None,
      device="CPU",
      config=None,
      logging=True,
      **kwargs,
  ):
      """
      Create a OpenVINO model from Keras.
  
      :param model: Keras model to be converted to OpenVINO for inference or
                    path to Openvino saved model.
      :param input_spec: A (tuple or list of) tf.TensorSpec or numpy array defining
                         the shape/dtype of the input
      :param precision: Global precision of model, supported type: 'fp32', 'fp16',
                        defaults to 'fp32'.
      :param thread_num: a int represents how many threads(cores) is needed for
                         inference. default: None.
      :param device: (optional) A string represents the device of the inference. Default to 'CPU'.
                     'CPU', 'GPU' and 'VPUX' are supported for now.
      :param config: The config to be inputted in core.compile_model.
      :param logging: whether to log detailed information of model conversion. default: True.
      :param **kwargs: will be passed to model optimizer function.
      :return: KerasOpenVINOModel model for OpenVINO inference.
      """
      from .tf.model import KerasOpenVINOModel
  
      return KerasOpenVINOModel(
          model=model,
          input_spec=input_spec,
          precision=precision,
          thread_num=thread_num,
          device=device,
          config=config,
          logging=logging,
          **kwargs,
      )
  
imports: from bigdl.nano.utils.common import invalidInputError
label_desc: Use image node_id 3 for calling a global function with example usage: KerasOpenVINOModel(model, input_spec, precision, thread_num, device, config, logging) and returns: KerasOpenVINOModel