-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathprompts.py
125 lines (116 loc) · 4.08 KB
/
prompts.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
###############################################################################
# CV
CV_PARSER_PROMPT = """
Please read the following text extracted from a CV and create a detailed output following the schema below.
The lists can have an arbitrary length based on the content of the CV.
Text extracted from a CV:
'''
{cv_text}
'''
"""
CV_SCHEMA_DEFINITION = """
{
"first_name": "First Name from CV",
"surname": "Surname from CV",
"function": "Job Title or Function",
"date_of_birth": "YYYY-MM-DD",
"city": "City of Residence",
"nationality": "Nationality",
"availability": "YYYY-MM-DD",
"drivers_license": "Yes/No",
"profile_and_ambition": "Summary of profile and career ambitions",
"highlights": [
"Key highlight 1",
"Key highlight 2",
"Key highlight 3",
"... (additional highlights)"
],
"education": [
{
"period": "Start Year - End Year",
"name_education": "Degree or Qualification",
"name_school": "Name of Institution",
"status": "Completed/In Progress"
},
"... (additional education entries)"
],
"courses": [
{
"period": "Year of Completion",
"name_education": "Course Name",
"name_school": "Institution/Platform",
"status": "Completed/Ongoing"
},
"... (additional courses)"
],
"work_experience": [
{
"period": "Start Year - End Year",
"function_name": "Job Title",
"name_employer_client": "Employer/Client Name, Location",
"bullet_points": [
"Responsibility or Achievement 1",
"Responsibility or Achievement 2",
"Responsibility or Achievement 3",
"... (additional points)"
],
"tools_tech_used": "concise list of technologies and/or tools used in this role"
},
"... (additional work experience entries)"
],
"expertise": [
{
"category": "Category Name",
"list": [
{"name": "Skill/Language Name", "basic": "", "good": "", "excellent": "X"},
"... (additional skills)"
]
},
"... (additional expertise categories)"
]
"languages": [
{"name": "Language Name", "proficiency": "Skill Level"}, # Skill Levels: Beginner, Intermediate, Advanced, Fluent, Native
"... (additional languages)"
}
"""
###############################################################################
# Job Description
JOB_DESCRIPTION_PARSER_PROMPT = """
Please read the following job description and Applicant CV.
The task is to create the best front page of the CV based on the job description.
Make this candidate be the best fit for the job description.
Job Description:
'''
{job_description}
'''
Applicant CV:
'''
{cv}
'''
"""
CV_FRONT_PAGE_SCHEMA_DEFINITION = """
{
"front_sheet": {
"candidate_name": "Full Name",
"position_sought": "Position Title",
"description": "Brief description of relevant experience.",
"key_skills": [ "list of top 3 key skills relevant to the job description" , ... ],
"education_and_qualifications": [ # only the ones relevant to the job description
{
"degree": "Degree Name",
"institution": "Institution Name",
"year": "Completion Year"
},
"... (additional education_and_qualifications entries)"
],
"location": "location of residence",
"languages": [
{
"language": "Language 1",
"proficiency_level": "Proficiency Level"
},
"... (additional languages entries)"
],
"consultant_comments": "reason why is a good fit for the job description" # be concise
}
"""