From 207687b5719e98e27bbc1e674c6bc297ab86b865 Mon Sep 17 00:00:00 2001 From: Luozhu <70309026+LuozhuZhang@users.noreply.github.com> Date: Sat, 12 Oct 2024 17:11:19 +0800 Subject: [PATCH] Update logger.py --- embodied/core/logger.py | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/embodied/core/logger.py b/embodied/core/logger.py index a88ee184..0a4468ca 100644 --- a/embodied/core/logger.py +++ b/embodied/core/logger.py @@ -24,22 +24,15 @@ def __init__(self, step, outputs, multiplier=1): @timer.section('logger_add') def add(self, mapping, prefix=None): - mapping = dict(mapping) - # print('logger add:', len(mapping)) - assert len(mapping) <= 1000, list(mapping.keys()) - for key in mapping.keys(): - assert len(key) <= 200, (len(key), key[:200] + '...') + mapping = {k: (str(v) if isinstance(v, np.ndarray) and np.issubdtype(v.dtype, str) else np.asarray(v)) + for k, v in mapping.items()} step = int(self.step) * self.multiplier for name, value in mapping.items(): name = f'{prefix}/{name}' if prefix else name - if isinstance(value, np.ndarray) and np.issubdtype(value.dtype, str): - value = str(value) - if not isinstance(value, str): - value = np.asarray(value) - if len(value.shape) not in (0, 1, 2, 3, 4): - raise ValueError( - f"Shape {value.shape} for name '{name}' cannot be " - "interpreted as scalar, vector, image, or video.") + if len(value.shape) not in (0, 1, 2, 3, 4): + raise ValueError( + f"Shape {value.shape} for name '{name}' cannot be " + "interpreted as scalar, vector, image, or video.") self._metrics.append((step, name, value)) def scalar(self, name, value):