Each recommender will implement a common interface. We need to define this interface in python so everyone can implement it, something like:
class Recommender:
getRecommenderId(): # return the ID of this implementation for tracking
raise NotImplementedError()
getRecommendation(id): # return a list of IDs of recommended articles
raise NotImplementedError()
getRecommendationFromText(text): # process text and return list of IDs of recommended
articles
raise NotImplementedError()
Each recommender will implement a common interface. We need to define this interface in python so everyone can implement it, something like: