66from .meta import _model_meta
77from .write_fastapi import _choose_version
88
9- def vetiver_pin_write (board , model : VetiverModel , versioned : bool = True ):
9+
10+ def vetiver_pin_write (board , model : VetiverModel , versioned : bool = True ):
1011 """
1112 Pin a trained VetiverModel along with other model metadata.
12-
13+
1314 Parameters
1415 ----------
1516 board:
@@ -20,16 +21,18 @@ def vetiver_pin_write(board, model: VetiverModel, versioned: bool=True):
2021 Whether or not the pin should be versioned
2122 """
2223 if not board .allow_pickle_read :
23- raise NotImplementedError # must be pickle-able
24+ raise NotImplementedError # must be pickle-able
2425
2526 board .pin_write (
2627 model .model ,
27- name = model .model_name ,
28- type = "joblib" ,
29- description = model .description ,
30- metadata = {"required_pkgs" : model .metadata .get ("required_pkgs" ),
31- "ptype" : None if model .ptype == None else model .ptype ().json ()},
32- versioned = versioned
28+ name = model .model_name ,
29+ type = "joblib" ,
30+ description = model .description ,
31+ metadata = {
32+ "required_pkgs" : model .metadata .get ("required_pkgs" ),
33+ "ptype" : None if model .ptype == None else model .ptype ().json (),
34+ },
35+ versioned = versioned ,
3336 )
3437
3538 # to do: Model card
@@ -45,15 +48,15 @@ def vetiver_pin_write(board, model: VetiverModel, versioned: bool=True):
4548def vetiver_pin_read (board , name : str , version : str = None ) -> VetiverModel :
4649 """
4750 Read pin and populate VetiverModel
48-
51+
4952 Parameters
5053 ----------
5154 board:
5255 A pin board, created by `pins.board_folder()` or another `board_` function.
5356 name: string
5457 Pin name
5558 version: str
56- Retrieve a specific version of a pin.
59+ Retrieve a specific version of a pin.
5760
5861 Returns
5962 --------
@@ -62,26 +65,35 @@ def vetiver_pin_read(board, name: str, version: str = None) -> VetiverModel:
6265 Notes
6366 -----
6467 If reading a board from RSConnect, the `board` argument must be in "username/modelname" format.
65-
68+
6669 """
6770
68- raise DeprecationWarning ("vetiver_pin_read is now a classmethod VetiverModel.from_pin()" )
71+ warnings .warn (
72+ "vetiver_pin_read will be removed in v1.0.0. Use classmethod VetiverModel.from_pin() instead" ,
73+ DeprecationWarning ,
74+ )
6975
70- version = version if version is not None else _choose_version (board .pin_versions (name ))
76+ version = (
77+ version if version is not None else _choose_version (board .pin_versions (name ))
78+ )
7179
7280 model = board .pin_read (name , version )
7381 meta = board .pin_meta (name )
7482
75- v = VetiverModel (model = model ,
76- model_name = name ,
77- description = meta .description ,
78- metadata = _model_meta (user = meta .user ,
79- version = version ,
80- url = meta .user .get ("url" ), # None all the time, besides Connect
81- required_pkgs = meta .user .get ("required_pkgs" )
83+ v = VetiverModel (
84+ model = model ,
85+ model_name = name ,
86+ description = meta .description ,
87+ metadata = _model_meta (
88+ user = meta .user ,
89+ version = version ,
90+ url = meta .user .get ("url" ), # None all the time, besides Connect
91+ required_pkgs = meta .user .get ("required_pkgs" ),
8292 ),
83- ptype_data = json .loads (meta .user .get ("ptype" )) if meta .user .get ("ptype" ) else None ,
84- versioned = True
85- )
86-
93+ ptype_data = json .loads (meta .user .get ("ptype" ))
94+ if meta .user .get ("ptype" )
95+ else None ,
96+ versioned = True ,
97+ )
98+
8799 return v
0 commit comments