Skip to content

improve error message of get_parsed_content #4401

@wyli

Description

@wyli

Is your feature request related to a problem? Please describe.
when the config component can't be instantiated due to typos,
the error message should show some details of the failed component.

currently the message is not straightforward, for example:

from monai.bundle import ConfigParser
config = {"transform": {"_target_": "Compose", "transforms_wrong_key": []}}
parser = ConfigParser(config=config)
parser.get_parsed_content("transform", instantiate=True, eval_expr=True)

# Traceback (most recent call last):
#   File "test.py", line 4, in <module>
#     parser.get_parsed_content("transform", instantiate=True, eval_expr=True)
#   File "/Users/Documents/MONAI/monai/bundle/config_parser.py", line 237, in get_parsed_content
#     return self.ref_resolver.get_resolved_content(id=id, **kwargs)
#   File "/Users/Documents/MONAI/monai/bundle/reference_resolver.py", line 182, in get_resolved_content
#     return self._resolve_one_item(id=id, **kwargs)
#   File "/Users/Documents/MONAI/monai/bundle/reference_resolver.py", line 162, in _resolve_one_item
#     self.resolved_content[id] = item.instantiate() if kwargs.get("instantiate", True) else item
#   File "/Users/Documents/MONAI/monai/bundle/config_item.py", line 284, in instantiate
#     return instantiate(modname, **args)
#   File "/Users/Documents/MONAI/monai/utils/module.py", line 217, in instantiate
#     return component(**kwargs)
# TypeError: __init__() got an unexpected keyword argument 'transforms_wrong_key'

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions