Spaces:
Runtime error
Runtime error
# imports | |
import os | |
import re | |
from typing import List | |
from sentence_transformers import SentenceTransformer | |
import joblib | |
from agents.agent import Agent | |
class RandomForestAgent(Agent): | |
name = "Random Forest Agent" | |
color = Agent.MAGENTA | |
def __init__(self): | |
""" | |
Initialize this object by loading in the saved model weights | |
and the SentenceTransformer vector encoding model | |
""" | |
self.log("Random Forest Agent is initializing") | |
self.vectorizer = SentenceTransformer('sentence-transformers/all-MiniLM-L6-v2') | |
self.model = joblib.load('random_forest_model.pkl') | |
self.log("Random Forest Agent is ready") | |
def price(self, description: str) -> float: | |
""" | |
Use a Random Forest model to estimate the price of the described item | |
:param description: the product to be estimated | |
:return: the price as a float | |
""" | |
self.log("Random Forest Agent is starting a prediction") | |
vector = self.vectorizer.encode([description]) | |
result = max(0, self.model.predict(vector)[0]) | |
self.log(f"Random Forest Agent completed - predicting ${result:.2f}") | |
return result |