From 9cf9604cd6db5425be77cd31d7bf0396750191cf Mon Sep 17 00:00:00 2001 From: Michael Schuster Date: Thu, 24 Oct 2024 15:11:18 +0200 Subject: [PATCH] Add comments for questions --- src/zenml/client_lazy_loader.py | 3 +++ src/zenml/orchestrators/input_utils.py | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/zenml/client_lazy_loader.py b/src/zenml/client_lazy_loader.py index e54f30ab21c..ce713e55fd9 100644 --- a/src/zenml/client_lazy_loader.py +++ b/src/zenml/client_lazy_loader.py @@ -208,6 +208,9 @@ def _inner(*args: Any, **kwargs: Any) -> Any: with contextlib.suppress(ValueError): kwargs[k] = ClientLazyLoader(**v).evaluate() + # Why do we check for `isinstance(v, ClientLazyLoader)` for the + # args but not for `kwargs` + return func(*args_, **kwargs) return _inner diff --git a/src/zenml/orchestrators/input_utils.py b/src/zenml/orchestrators/input_utils.py index 75127b7d81e..89a81b72cb0 100644 --- a/src/zenml/orchestrators/input_utils.py +++ b/src/zenml/orchestrators/input_utils.py @@ -140,6 +140,11 @@ def resolve_step_inputs( ) for name, cll_ in step.config.client_lazy_loaders.items(): value_ = cll_.evaluate() + # TODO: If we pass something as parameter here, the result is not stored + # anywhere. This means the user can not see what value was being passed + # into their step, and also not see where exactly this was coming from + # (e.g. which artifact/model version). Same thing applies to the model + # lazy loaders above if isinstance(value_, ArtifactVersionResponse): input_artifacts[name] = value_ elif isinstance(value_, RunMetadataResponse):