Mycchaka Kleinbort
01/23/2023, 9:39 AMMycchaka Kleinbort
01/23/2023, 9:42 AM@asset
def features_v1(data:pd.DataFrame)-catboost.Pool:
...
@asset
def features_v2(data:pd.DataFrame)-catboost.Pool:
...
@asset
def features_v3(data:pd.DataFrame)-catboost.Pool:
...
def build_ml_pipeline(features:catboost.Pool, version:str):
x = f'''
@asset
def model_{version}(features):
...
@asset
def predictions_{version}(model_{version}):
...
@asset
def model_{version}(model_{version}):
...
'''
exec(x)
for i, feat in enumerate([features_v1, features_v2, features_v3]):
build_ml_pipeline(feat, f'v{i}')
'''
Rohil Badkundri
01/23/2023, 7:17 PMmy_model
and statically partitioning that asset, where each partition corresponds to a different version of the same model
2. Using an Asset Factory approach — you have some function that returns an AssetsDefinition (for a particular model) and you call this function multiple times programmatically to generate your assetsRohil Badkundri
01/23/2023, 7:17 PMStaticPartitionMapping
between feature/model partitionsyuhan
01/30/2023, 7:42 PMsandy
01/31/2023, 12:22 AM