def METHOD_NAME(
    self,
    caikit_core_model: ModuleBase,
    model_type: str,
    model_id: str,
) -> Union[Batcher, ModuleBase]:
    """Perform Batcher wrapping on the given module if configured, otherwise
    return the model as is
    """
    batch_config = get_config().runtime.batching.get(
        model_type,
        get_config().runtime.batching.get("default", {}),
    )
    log.debug2("Batch config for model type [%s]: %s", model_type, batch_config)
    batch_size = batch_config.get("size", 0)
    if batch_size > 0:
        log.info(
            "<RUN89713768I>",
            "Enabling batch size [%s] for [%s] of type [%s]",
            batch_size,
            model_id,
            model_type,
        )
        return Batcher(
            model_name=model_id,
            model=caikit_core_model,
            batch_size=batch_size,
            batch_collect_delay_s=batch_config.get("collect_delay_s"),
        )
    return caikit_core_model