@@ -195,7 +195,7 @@ def upload_and_copy_score_resources(model, files):
195
195
)
196
196
# Import math for imputation; pickle for serialized models; pandas for data management; numpy for computation
197
197
cls .pyFile .write (
198
- """\n
198
+ """\
199
199
import math
200
200
import {pickleType}
201
201
import pandas as pd
@@ -208,7 +208,8 @@ def upload_and_copy_score_resources(model, files):
208
208
if not isViya35 :
209
209
cls .pyFile .write (
210
210
"""\n
211
- import settings"""
211
+ import settings
212
+ from pathlib import Path"""
212
213
)
213
214
214
215
# For H2O models, include the server initialization, or h2o.connect() call to use an H2O server
@@ -266,26 +267,26 @@ def upload_and_copy_score_resources(model, files):
266
267
elif not isViya35 and not isH2OModel :
267
268
cls .pyFile .write (
268
269
"""\n
269
- with open(settings.pickle_path + '{modelFileName}', 'rb') as _pFile:
270
+ with open(Path( settings.pickle_path) / '{modelFileName}', 'rb') as _pFile:
270
271
_thisModelFit = {pickleType}.load(_pFile)""" .format (
271
272
modelFileName = modelFileName , pickleType = pickleType
272
273
)
273
274
)
274
275
elif not isViya35 and isBinaryModel :
275
276
cls .pyFile .write (
276
277
"""\n
277
- _thisModelFit = h2o.load_model(settings.pickle_path + '{}')""" .format (
278
+ _thisModelFit = h2o.load_model(Path( settings.pickle_path) / '{}')""" .format (
278
279
modelFileName = modelFileName
279
280
)
280
281
)
281
282
elif not isViya35 and isH2OModel and not isBinaryModel :
282
283
cls .pyFile .write (
283
284
"""\n
284
- with gzip.open(settings.pickle_path + '{modelFileName}', 'r') as fileIn, open(settings.pickle_path + '{
285
+ with gzip.open(Path( settings.pickle_path) / '{modelFileName}', 'r') as fileIn, open(Path( settings.pickle_path) / '{
285
286
modelZipFileName}', 'wb') as fileOut:
286
287
shutil.copyfileobj(fileIn, fileOut)
287
- os.chmod(settings.pickle_path + '{modelZipFileName}', 0o777)
288
- _thisModelFit = h2o.import_mojo(settings.pickle_path + '{modelZipFileName}')""" .format (
288
+ os.chmod(Path( settings.pickle_path) / '{modelZipFileName}', 0o777)
289
+ _thisModelFit = h2o.import_mojo(Path( settings.pickle_path) / '{modelZipFileName}')""" .format (
289
290
modelFileName = modelFileName ,
290
291
modelZipFileName = modelFileName [:- 4 ] + "zip" ,
291
292
)
@@ -336,22 +337,22 @@ def score{modelPrefix}({inputVarList}):
336
337
elif not isViya35 and not isH2OModel :
337
338
cls .pyFile .write (
338
339
"""
339
- with open(settings.pickle_path + '{modelFileName}', 'rb') as _pFile:
340
+ with open(Path( settings.pickle_path) / '{modelFileName}', 'rb') as _pFile:
340
341
_thisModelFit = {pickleType}.load(_pFile)""" .format (
341
342
modelFileName = modelFileName , pickleType = pickleType
342
343
)
343
344
)
344
345
elif not isViya35 and isH2OModel :
345
346
cls .pyFile .write (
346
347
"""
347
- _thisModelFit = h2o.import_mojo(settings.pickle_path + '{}')""" .format (
348
+ _thisModelFit = h2o.import_mojo(Path( settings.pickle_path) / '{}')""" .format (
348
349
modelFileName [:- 4 ] + "zip"
349
350
)
350
351
)
351
352
elif not isViya35 and isBinaryModel :
352
353
cls .pyFile .write (
353
354
"""\n
354
- _thisModelFit = h2o.load_model(settings.pickle_path + '{}')""" .format (
355
+ _thisModelFit = h2o.load_model(Path( settings.pickle_path) / '{}')""" .format (
355
356
modelFileName = modelFileName
356
357
)
357
358
)
0 commit comments