in dynalab/handler.py [0:0]
def deserialize(torchserve_data: list) -> list:
samples = []
for torchserve_sample in torchserve_data:
data = torchserve_sample["body"]
# In case torchserve did the deserialization for us.
if isinstance(data, dict):
samples.append(data)
elif isinstance(data, (bytes, bytearray)):
lines = data.decode("utf-8").splitlines()
for i, l in enumerate(lines):
try:
samples.append(json.loads(l))
except Exception as e:
logging.error(f"Couldn't deserialize line {i}: {l}")
logging.exception(e)
else:
logging.error(f"Unexpected payload: {data}")
return samples