diff --git a/Jenkinsfile_registry b/Jenkinsfile_registry index ce59104..49e71b5 100644 --- a/Jenkinsfile_registry +++ b/Jenkinsfile_registry @@ -1,20 +1,13 @@ pipeline { agent { - dockerfile { - additionalBuildArgs "--build-arg KAGGLE_USERNAME=${params.KAGGLE_USERNAME} --build-arg KAGGLE_KEY=${params.KAGGLE_KEY} --build-arg CUTOFF=${params.CUTOFF} -t maciejczajka" - } - } - parameters { - buildSelector( - defaultSelector: lastSuccessful(), - description: 'Which build to use for copying artifacts for predict', - name: 'BUILD_SELECTOR') + image 'maciejczajka' + args '-v /mlruns:/mlruns' } stages { stage('Script') { steps { - copyArtifacts projectName: 's444409-training/main', selector: buildParameter('BUILD_SELECTOR') + copyArtifacts projectName: 's444409-training/main' sh 'python3 ./registry.py' } } diff --git a/registry.py b/registry.py index a63491c..04efb61 100644 --- a/registry.py +++ b/registry.py @@ -1,9 +1,15 @@ import mlflow +import json +import numpy as np logged_model = '/mlruns/12/1c2b9737c0204b0ca825811c35fb6c64/artifacts/s444409' # Load model as a PyFuncModel. loaded_model = mlflow.pyfunc.load_model(logged_model) +with open(f'{logged_model}/input_example.json') as f: + data = json.load(f) + input_example = np.array([data['inputs'][0]], dtype=np.float32) + # Predict on a Pandas DataFrame. import pandas as pd -print(f'Prediction: {loaded_model.predict(pd.DataFrame(data))}') \ No newline at end of file +print(f'Prediction: {loaded_model.predict(input_example)}') \ No newline at end of file