def transform_fn()

in src/deep_demand_forecast/inference.py [0:0]


def transform_fn(model: Predictor, request_body: Any, content_type: Any, accept_type: Any):
    request_data = json.loads(request_body)
    # TODO: customize serde
    request_list_data = ListDataset(
        [
            {
                FieldName.TARGET: request_data[FieldName.TARGET],
                FieldName.START: request_data[FieldName.START],
            }
        ],
        freq="H",
        one_dim_target=False,
    )
    forecasts, tss, agg_metrics, _ = evaluate(model, request_list_data, num_samples=1)
    response_body = {}
    response_body["forecasts"] = {}
    response_body["forecasts"]["samples"] = forecasts[0].samples.tolist()
    response_body["forecasts"]["start_date"] = str(forecasts[0].start_date)
    response_body["forecasts"]["freq"] = forecasts[0].freq
    response_body["tss"] = tss[0].values.tolist()
    response_body["agg_metrics"] = json.dumps(agg_metrics, indent=2, default=str)
    return response_body, content_type