@@ -293,7 +293,8 @@ def get_training_set_from_view(self, training_view: str, features: Union[List[Fe
293293 r = make_request (self ._FS_URL , Endpoints .TRAINING_SET_FROM_VIEW , RequestType .POST , self ._basic_auth , { "view" : training_view },
294294 { "features" : features , "start_time" : start_time , "end_time" : end_time })
295295 sql = r ["sql" ]
296- tvw = r ["training_view" ]
296+ tvw = TrainingView (** r ["training_view" ])
297+ features = [Feature (** f ) for f in r ["features" ]]
297298
298299 # Link this to mlflow for model deployment
299300 if self .mlflow_ctx and not return_sql :
@@ -528,16 +529,19 @@ def get_training_set_from_deployment(self, schema_name: str, table_name: str):
528529
529530 r = make_request (self ._FS_URL , Endpoints .TRAINING_SET_FROM_DEPLOYMENT , RequestType .GET , self ._basic_auth ,
530531 { "schema" : schema_name , "table" : table_name })
531- metadata = r ['metadata' ]
532532
533+ metadata = r ['metadata' ]
533534 sql = r ['sql' ]
534- features = r [ 'features' ]
535+
535536 tv_name = metadata ['name' ]
536537 start_time = metadata ['training_set_start_ts' ]
537538 end_time = metadata ['training_set_end_ts' ]
538539
540+ tv = TrainingView (** r ['training_view' ]) if 'training_view' in r else None
541+ features = [Feature (** f ) for f in r ['features' ]]
542+
539543 if self .mlflow_ctx :
540- self .link_training_set_to_mlflow (features , start_time , end_time , tv_name )
544+ self .link_training_set_to_mlflow (features , start_time , end_time , tv )
541545 return self .splice_ctx .df (sql )
542546
543547 def remove_feature (self , name : str ):
@@ -551,14 +555,23 @@ def remove_feature(self, name: str):
551555 """
552556 make_request (self ._FS_URL , Endpoints .FEATURES , RequestType .DELETE , self ._basic_auth , { "name" : name })
553557
554- def get_training_set_features (self , training_set : str = None ):
558+ def get_deployments (self , schema_name : str = None , table_name : str = None , training_set : str = None ):
555559 """
556- Returns a list of all features from an available Training Set, as well as details about that Training Set
560+ Returns a list of all (or specified) available deployments
557561 :param schema_name: model schema name
558562 :param table_name: model table name
559563 :param training_set: training set name
560564 :return: List[Deployment] the list of Deployments as dicts
561565 """
566+ return make_request (self ._FS_URL , Endpoints .DEPLOYMENTS , RequestType .GET , self ._basic_auth ,
567+ { 'schema' : schema_name , 'table' : table_name , 'name' : training_set })
568+
569+ def get_training_set_features (self , training_set : str = None ):
570+ """
571+ Returns a list of all features from an available Training Set, as well as details about that Training Set
572+ :param training_set: training set name
573+ :return: TrainingSet as dict
574+ """
562575 r = make_request (self ._FS_URL , Endpoints .TRAINING_SET_FEATURES , RequestType .GET , self ._basic_auth ,
563576 { 'name' : training_set })
564577 r ['features' ] = [Feature (** f ) for f in r ['features' ]]
@@ -798,6 +811,7 @@ def link_training_set_to_mlflow(self, features: Union[List[Feature], List[str]],
798811
799812 self .mlflow_ctx ._active_training_set : TrainingSet = ts
800813 ts ._register_metadata (self .mlflow_ctx )
814+
801815
802816 def set_feature_store_url (self , url : str ):
803817 self ._FS_URL = url
0 commit comments