Spaces:
Sleeping
Sleeping
Update src/agent.py
Browse files- src/agent.py +12 -8
src/agent.py
CHANGED
|
@@ -16,7 +16,11 @@ from fastapi.exceptions import RequestValidationError
|
|
| 16 |
from sqlalchemy.orm import Session
|
| 17 |
|
| 18 |
from .database import get_db, create_tables, CandidateEvaluation, Feedback
|
| 19 |
-
from .models import
|
|
|
|
|
|
|
|
|
|
|
|
|
| 20 |
from .feedback_system import AdaptiveFeedbackSystem
|
| 21 |
from .reinforcement_learning import ReinforcementLearningSystem
|
| 22 |
from .advanced_learning import AdvancedLearningSystem
|
|
@@ -295,7 +299,7 @@ class FitScoreFeedbackAgent:
|
|
| 295 |
def _register_endpoints(self):
|
| 296 |
"""Register all API endpoints"""
|
| 297 |
|
| 298 |
-
@self.app.get("/")
|
| 299 |
async def root():
|
| 300 |
"""Root endpoint"""
|
| 301 |
return {
|
|
@@ -317,7 +321,7 @@ class FitScoreFeedbackAgent:
|
|
| 317 |
]
|
| 318 |
}
|
| 319 |
|
| 320 |
-
@self.app.get("/health")
|
| 321 |
async def health_check():
|
| 322 |
"""Health check endpoint"""
|
| 323 |
return {
|
|
@@ -329,7 +333,7 @@ class FitScoreFeedbackAgent:
|
|
| 329 |
|
| 330 |
|
| 331 |
|
| 332 |
-
@self.app.post("/fitscore/simple")
|
| 333 |
async def calculate_fitscore_simple(
|
| 334 |
request: FitScoreRequest,
|
| 335 |
db: Session = Depends(get_db)
|
|
@@ -378,7 +382,7 @@ class FitScoreFeedbackAgent:
|
|
| 378 |
except Exception as e:
|
| 379 |
raise HTTPException(status_code=500, detail=f"Error calculating FitScore: {str(e)}")
|
| 380 |
|
| 381 |
-
@self.app.post("/fitscore/calculate")
|
| 382 |
async def calculate_fitscore(
|
| 383 |
request: CandidateRequest,
|
| 384 |
db: Session = Depends(get_db)
|
|
@@ -434,7 +438,7 @@ class FitScoreFeedbackAgent:
|
|
| 434 |
except Exception as e:
|
| 435 |
raise HTTPException(status_code=500, detail=f"Error calculating FitScore: {str(e)}")
|
| 436 |
|
| 437 |
-
@self.app.post("/fitscore/feedback")
|
| 438 |
async def submit_feedback(
|
| 439 |
request: FeedbackRequest,
|
| 440 |
db: Session = Depends(get_db)
|
|
@@ -467,7 +471,7 @@ class FitScoreFeedbackAgent:
|
|
| 467 |
except Exception as e:
|
| 468 |
raise HTTPException(status_code=500, detail=f"Error submitting feedback: {str(e)}")
|
| 469 |
|
| 470 |
-
@self.app.post("/fitscore/recalculate")
|
| 471 |
async def recalculate_fitscore(
|
| 472 |
candidate_id: str,
|
| 473 |
job_id: str,
|
|
@@ -534,7 +538,7 @@ class FitScoreFeedbackAgent:
|
|
| 534 |
except Exception as e:
|
| 535 |
raise HTTPException(status_code=500, detail=f"Error recalculating FitScore: {str(e)}")
|
| 536 |
|
| 537 |
-
@self.app.get("/fitscore/compare/{candidate_id}/{job_id}")
|
| 538 |
async def compare_results(
|
| 539 |
candidate_id: str,
|
| 540 |
job_id: str,
|
|
|
|
| 16 |
from sqlalchemy.orm import Session
|
| 17 |
|
| 18 |
from .database import get_db, create_tables, CandidateEvaluation, Feedback
|
| 19 |
+
from .models import (
|
| 20 |
+
FitScoreRequest, CandidateRequest, FeedbackRequest,
|
| 21 |
+
FitScoreResponse, FeedbackResponse, RecalculateResponse,
|
| 22 |
+
ComparisonResponse, HealthResponse, RootResponse
|
| 23 |
+
)
|
| 24 |
from .feedback_system import AdaptiveFeedbackSystem
|
| 25 |
from .reinforcement_learning import ReinforcementLearningSystem
|
| 26 |
from .advanced_learning import AdvancedLearningSystem
|
|
|
|
| 299 |
def _register_endpoints(self):
|
| 300 |
"""Register all API endpoints"""
|
| 301 |
|
| 302 |
+
@self.app.get("/", response_model=RootResponse)
|
| 303 |
async def root():
|
| 304 |
"""Root endpoint"""
|
| 305 |
return {
|
|
|
|
| 321 |
]
|
| 322 |
}
|
| 323 |
|
| 324 |
+
@self.app.get("/health", response_model=HealthResponse)
|
| 325 |
async def health_check():
|
| 326 |
"""Health check endpoint"""
|
| 327 |
return {
|
|
|
|
| 333 |
|
| 334 |
|
| 335 |
|
| 336 |
+
@self.app.post("/fitscore/simple", response_model=FitScoreResponse)
|
| 337 |
async def calculate_fitscore_simple(
|
| 338 |
request: FitScoreRequest,
|
| 339 |
db: Session = Depends(get_db)
|
|
|
|
| 382 |
except Exception as e:
|
| 383 |
raise HTTPException(status_code=500, detail=f"Error calculating FitScore: {str(e)}")
|
| 384 |
|
| 385 |
+
@self.app.post("/fitscore/calculate", response_model=FitScoreResponse)
|
| 386 |
async def calculate_fitscore(
|
| 387 |
request: CandidateRequest,
|
| 388 |
db: Session = Depends(get_db)
|
|
|
|
| 438 |
except Exception as e:
|
| 439 |
raise HTTPException(status_code=500, detail=f"Error calculating FitScore: {str(e)}")
|
| 440 |
|
| 441 |
+
@self.app.post("/fitscore/feedback", response_model=FeedbackResponse)
|
| 442 |
async def submit_feedback(
|
| 443 |
request: FeedbackRequest,
|
| 444 |
db: Session = Depends(get_db)
|
|
|
|
| 471 |
except Exception as e:
|
| 472 |
raise HTTPException(status_code=500, detail=f"Error submitting feedback: {str(e)}")
|
| 473 |
|
| 474 |
+
@self.app.post("/fitscore/recalculate", response_model=RecalculateResponse)
|
| 475 |
async def recalculate_fitscore(
|
| 476 |
candidate_id: str,
|
| 477 |
job_id: str,
|
|
|
|
| 538 |
except Exception as e:
|
| 539 |
raise HTTPException(status_code=500, detail=f"Error recalculating FitScore: {str(e)}")
|
| 540 |
|
| 541 |
+
@self.app.get("/fitscore/compare/{candidate_id}/{job_id}", response_model=ComparisonResponse)
|
| 542 |
async def compare_results(
|
| 543 |
candidate_id: str,
|
| 544 |
job_id: str,
|