def parse_model_input_from_input_data_traditional()

in sdk/python/foundation-models/system/inference/text-generation/llama-files/score/default/score.py [0:0]


def parse_model_input_from_input_data_traditional(input_data):
    # Format input
    if isinstance(input_data, str):
        input_data = json.loads(input_data)
    if "input_data" in input_data:
        input_data = input_data["input_data"]
    if is_hfv2:
        input = input_data
    elif isinstance(input_data, list):
        # if a list, assume the input is a numpy array
        input = np.asarray(input_data)
    elif (
        isinstance(input_data, dict)
        and "columns" in input_data
        and "index" in input_data
        and "data" in input_data
    ):
        # if the dictionary follows pandas split column format, deserialize into a pandas Dataframe
        input = pd.read_json(json.dumps(input_data), orient="split", dtype=False)
    else:
        # otherwise, assume input is a named tensor, and deserialize into a dict[str, numpy.ndarray]
        input = {
            input_name: np.asarray(input_value)
            for input_name, input_value in input_data.items()
        }
    return input