diff --git a/debug/accuracy_tools/msprobe/core/config_check/utils/hyperparameter_parser.py b/debug/accuracy_tools/msprobe/core/config_check/utils/hyperparameter_parser.py index 6cb540ee49951652b6094f80229da099cfc5afdf..a524504c47455aca41c2f587b3f7160922930742 100644 --- a/debug/accuracy_tools/msprobe/core/config_check/utils/hyperparameter_parser.py +++ b/debug/accuracy_tools/msprobe/core/config_check/utils/hyperparameter_parser.py @@ -96,9 +96,13 @@ class YamlParser(Parser): new_prefix = prefix + Const.SEP + key if prefix else key self.recursive_parse_parameters(value, new_prefix) elif isinstance(parameters, list): - for value in parameters: - self.recursive_parse_parameters(value, prefix) - elif isinstance(parameters, (int, str, bool)): + if all(isinstance(x, (int, float, str, bool))for x in parameters): + self.hyperparameters.update({prefix: parameters}) + else: + for idx, value in enumerate(parameters): + new_prefix = prefix + Const.SEP + str(idx) if prefix else str(idx) + self.recursive_parse_parameters(value, new_prefix) + elif isinstance(parameters, (int, float, str, bool)): self.hyperparameters.update({prefix: parameters})