Spaces:
Running
Running
from pydantic import BaseModel, Field | |
from typing import List, Optional | |
class date(BaseModel): | |
"""Date""" | |
day: Optional[int] = Field(default=1, description="Day of month, a integer from 1 and 31, if unkown the default is 1") | |
month: Optional[int] = Field(description="Month of year, an integer from 1 to 12") | |
year: Optional[int] = Field(description="Year in yyyy format") | |
class job(BaseModel): | |
"""Job details""" | |
job_title: Optional[str] = Field(description="Job titile") | |
job_description: Optional[str] = Field(description="Information about the job and what did the candidate do in it if available.") | |
started_at: Optional[date] = Field(description="When did the candidate start this job? Retrun None if not available") | |
ended_at: Optional[date] = Field(description="When did the candidate end this job? Retrun None if not available") | |
current_job: Optional[bool] = Field(description="True if this the candidates current job, False if it's not the candidate's current job") | |
class degree(BaseModel): | |
"""degree details, which only includes Bachelor's, Master's or Phd degrees""" | |
degree_type: Optional[str] = Field(description="Degree type, which is Bachelor's, Master's or Phd") | |
major: Optional[str] = Field(description="Degree major") | |
university: Optional[str] = Field(description="Degree university") | |
graduation_date: Optional[date] = Field(description="When did the candidate graduate? Retrun None if not available") | |
class candidate(BaseModel): | |
"""personal information about the candidate""" | |
first_name: Optional[str] = Field(description="First name") | |
last_name: Optional[str] = Field(description="Last name") | |
country__phone_code: Optional[str] = Field(description="Country phone code, examples: +1 or +39") | |
phone_number: Optional[int] = Field(description="Phone number, without country phone code") | |
email: Optional[str] = Field(description="Email address") | |
country: Optional[str] = Field(description="country") | |
degrees: Optional[List[degree]] = Field(description="list of all candidate's degrees") | |
jobs: Optional[List[job]] = Field(description="Only include jobs the candidate listed in a work experience section. Return None if he hasn't listed any.") | |
skills: Optional[list[str]] = Field(description="list of candidate's skills that are relevant to the job") |