Cuong Truong Huy
08/01/2024, 6:00 PMStefan Krawczyk
08/01/2024, 6:05 PMStefan Krawczyk
08/01/2024, 6:08 PMStefan Krawczyk
08/01/2024, 6:08 PMYijun Tang
08/01/2024, 6:20 PMparameterize
list?Stefan Krawczyk
08/01/2024, 6:28 PMStefan Krawczyk
08/01/2024, 6:34 PMYijun Tang
08/01/2024, 7:18 PMStefan Krawczyk
08/01/2024, 7:24 PM@resolve
sounds like the approach you wantStefan Krawczyk
08/01/2024, 7:28 PMfrom hamilton.function_modifiers import resolve_with_config, parameterize, source, value
@resolve_with_config(
decorate_with=lambda config_key1: parameterize(
**{f"node_name_{x}": {"s1": ..., "s2": ...} for x in config_key1}
)
)
def summation(s1: pd.Series, s2: pd.Series) -> pd.Series:
return s1 + s2
then in the driver:
from hamilton import settings
_config = {settings.ENABLE_POWER_USER_MODE:True}
# this should match the name in the lambda
_config["config_key1"] = ["sub_metric_1", "sub_metric_2"]
# Then in the driver building pass in the configuration:
.with_config(_config)
Stefan Krawczyk
08/01/2024, 7:29 PMYijun Tang
08/01/2024, 8:24 PM