RituJoshi/RecommendationSystem
0
1# FASTAPI BACKEND2from fastapi import FastAPI, HTTPException3from pydantic import BaseModel4from recommender import SHLRecommender5 6app = FastAPI(title="SHL Assessment Recommender API")7 8# Global recommender instance9recommender = None10from fastapi import FastAPI11 12app = FastAPI()13 14@app.get("/")15def read_root():16 return {"status": "ok"}17 18 19# Model loader at app startup20@app.on_event("startup")21def load_model():22 global recommender23 try:24 recommender = SHLRecommender()25 print("✅ SHLRecommender loaded successfully.")26 except Exception as e:27 print(f"❌ Failed to load SHLRecommender: {e}")28 29# Input model30class Query(BaseModel):31 query: str32 33# Health check endpoint34@app.get("/health")35def health_check():36 return {"status": "healthy"}37 38# Recommendation endpoint39@app.post("/recommend")40def recommend(query_data: Query):41 try:42 if recommender is None:43 raise ValueError("Recommender not initialized")44 45 recommendations = recommender.get_recommendations(query_data.query)46 return {"recommended_assessments": recommendations}47 except Exception as e:48 raise HTTPException(status_code=500, detail=str(e))49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 