File size: 599 Bytes
000d0bb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import joblib
import numpy as np
import os

# Load model and columns
model_path = os.path.join("src", "model", "carbon_model.pkl")
columns_path = os.path.join("src", "model", "model_columns.pkl")

model = joblib.load(model_path)
model_columns = joblib.load(columns_path)

def predict_footprint(user_input: dict):
    input_vector = np.zeros(len(model_columns))

    for feature, value in user_input.items():
        if feature in model_columns:
            index = model_columns.index(feature)
            input_vector[index] = value

    return model.predict([input_vector])[0]