@@ -101,8 +101,11 @@ function fit!(mlfreg::AutoMLFlowRegression, X::DataFrame, Y::Vector)
101
101
MLF. log_metric (" bestperformance" , autoreg. model[:performance ]. mean[1 ])
102
102
# save model in mlflow
103
103
artifact_name = mlfreg. model[:artifact_name ]
104
- serialize (artifact_name, autoreg)
105
- MLF. log_artifact (artifact_name)
104
+ # use temporary directory
105
+ tmpdir = tempdir ()
106
+ artifact_location = joinpath (tmpdir, artifact_name)
107
+ serialize (artifact_location, autoreg)
108
+ MLF. log_artifact (artifact_location)
106
109
# save model in memory
107
110
mlfreg. model[:autoreg ] = autoreg
108
111
bestmodel_uri = MLF. get_artifact_uri (artifact_path= artifact_name)
@@ -125,6 +128,7 @@ function transform!(mlfreg::AutoMLFlowRegression, X::DataFrame)
125
128
126
129
try
127
130
model_artifacts = MLF. artifacts. list_artifacts (run_id= run_id)
131
+ @assert model_artifacts[0 ]. path |> string == " autoreg.bin"
128
132
catch e
129
133
@info e
130
134
throw (" Artifact $artifact_name does not exist in run_id = $run_id " )
@@ -151,8 +155,9 @@ function mlfregdriver()
151
155
Yc = fit_transform! (mlfreg, X, Y)
152
156
println (" mse = " , mean ((Y - Yc) .^ 2 ))
153
157
154
- # ## test prediction using exisiting trained model from artifacts
158
+ # # test prediction using exisiting trained model from artifacts
155
159
run_id = mlfreg. model[:run_id ]
160
+ # run_id = "d7ea4d0582bb4519a96b36efbe1eda6a"
156
161
newmfreg = AutoMLFlowRegression (Dict (:run_id => run_id))
157
162
newmfreg = AutoMLFlowRegression ()
158
163
newmfreg (; run_id= run_id)
0 commit comments