async def METHOD_NAME(self, model_name: str, request: Request) -> Union[Response, Dict]:
    """Explain handler.
    Args:
        model_name (str): Model name.
        request (Request): Raw request object.
    Returns:
        Dict: Explainer output.
    """
    model_ready = self.dataplane.model_ready(model_name)
    if not model_ready:
        raise ModelNotReady(model_name)
    body = await request.body()
    headers = dict(request.headers.items())
    infer_request, req_attributes = self.dataplane.decode(body=body,
                                                          headers=headers)
    response, response_headers = await self.dataplane.METHOD_NAME(model_name=model_name,
                                                              request=infer_request,
                                                              headers=headers)
    response, response_headers = self.dataplane.encode(model_name=model_name,
                                                       response=response,
                                                       headers=headers, req_attributes=req_attributes)
    if not isinstance(response, dict):
        return Response(content=response, headers=response_headers)
    return response