LinkedinAgent / app /models.py
Hydra-Bolt
add
3856f78
raw
history blame contribute delete
988 Bytes
from pydantic import BaseModel
from typing import List, Optional, Dict, Any
class SourcingRequest(BaseModel):
job_description: str
location: Optional[str] = None
max_candidates: int = 10
batch_size: Optional[int] = 5
class CandidateProfile(BaseModel):
name: str
headline: str
location: str
profile_url: str
company: Optional[str] = None
education: Optional[str] = None
experience_summary: Optional[str] = None
class ScoreBreakdown(BaseModel):
education_score: float
career_trajectory_score: float
company_relevance_score: float
experience_match_score: float
location_score: float
tenure_score: float
total_score: float
class CandidateWithScore(BaseModel):
profile: CandidateProfile
score_breakdown: ScoreBreakdown
outreach_message: Optional[str] = None
class SourcingResponse(BaseModel):
candidates: List[CandidateWithScore]
total_found: int
search_query: str
processing_time: float