async def METHOD_NAME(
    self, input_data: Any, settings: Optional[Parameters]
) -> ResponseOutput:
    explain_parameters = dict()
    if settings is not None:
        settings_dict = settings.dict()
        if EXPLAIN_PARAMETERS_TAG in settings_dict:
            explain_parameters = settings_dict[EXPLAIN_PARAMETERS_TAG]
    loop = asyncio.get_running_loop()
    explain_call = functools.partial(
        self._explain_impl,
        input_data=input_data,
        explain_parameters=explain_parameters,
    )
    explanation = await loop.run_in_executor(self._executor, explain_call)
    # TODO: Convert alibi-explain output to v2 protocol, for now we use to_json
    return StringCodec.encode_output(
        payload=[explanation.to_json()], name="explanation"
    )