@app.get("/recommend-blogs/{current_blog_id}") def recommend_blogs( response: Response, current_blog_id: int, num_neighbors: Optional[int] = 2) -> Union[Dict[str, str], List[BlogRecommendation]]: try: # Call the find_similar_blog function to get recommended blogs recommended_blogs = find_similar_blog(current_blog_id, num_neighbors) return recommended_blogs except BlogNotFoundException as e: response.status_code = status.HTTP_400_BAD_REQUEST return {"error": f"Blog not found for id:{current_blog_id}"} except Exception as e: response.status_code = status.HTTP_500_INTERNAL_SERVER_ERROR return {"error": "Unable to process the request"}