code: def infer_output_name_and_type(**pipeline_args):
      """
      Infer the name and type for each output of the HuggingFace Function
      """
      assert (
          "task" in pipeline_args
      ), "Task Not Found In Model Definition"
      task = pipeline_args["task"]
      assert (
          task in INPUT_TYPE_FOR_SUPPORTED_TASKS
      ), f"Task {task} not supported in EvaDB currently"
  
      # Construct the pipeline
      try_to_import_transformers()
      from transformers import pipeline
  
      pipe = pipeline(**pipeline_args)
  
      # Run the pipeline through a dummy input to get a sample output
      input_type = INPUT_TYPE_FOR_SUPPORTED_TASKS[task]
      model_input = gen_sample_input(input_type)
      model_output = pipe(model_input)
  
      # Get a dictionary of output names and types from the output
      output_types = {}
      if isinstance(model_output, list):
          sample_out = model_output[0]
      else:
          sample_out = model_output
  
      for key, value in sample_out.items():
          output_types[key] = type(value)
  
      return input_type, output_types
  
file_path: evadb/evadb/third_party/huggingface/create.py
imports: from typing import Dict, List, Type, Union
  import numpy
  from evadb.catalog.catalog_type import ColumnType, NdArrayType
  from evadb.catalog.models.function_io_catalog import FunctionIOCatalogEntry
  from evadb.catalog.models.function_metadata_catalog import FunctionMetadataCatalogEntry
  from evadb.third_party.huggingface.model import ASRHFModel, AudioHFModel, HFInputTypes, ImageHFModel, TextHFModel
  from evadb.utils.generic_utils import try_to_import_transformers
label_desc: Use image node_id 5 for calling a global function with example usage: infer_output_name_and_type() and returns: input_type,  output_types