code: def PoolFunctionField(default: str = "max") -> Field:
      return schema_utils.ReductionOptions(
          default=default,
          description=(
              "Pooling function to use. `max` will select the maximum value. Any of `average`, `avg`, or "
              "`mean` will compute the mean value"
          ),
          parameter_metadata=ENCODER_METADATA["conv_params"][
              "pool_function"
          ],
      )
  
imports: from dataclasses import Field
  from typing import List, Optional, TYPE_CHECKING
  from ludwig.api_annotations import DeveloperAPI
  from ludwig.constants import AUDIO, SEQUENCE, TEXT, TIMESERIES
  from ludwig.schema import common_fields
  from ludwig.schema import utils
  from ludwig.schema.encoders.base import BaseEncoderConfig
  from ludwig.schema.encoders.utils import register_encoder_config
  from ludwig.schema.metadata import ENCODER_METADATA
  from ludwig.schema.utils import ludwig_dataclass
label_desc: Use image node_id 3 for calling a global function with example usage: PoolFunctionField(default) and returns: schema_utils