kerplunk-ai-prompts 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/kerplunk/ai/prompts/templates/analysis/interview.rb +2 -0
- data/lib/kerplunk/ai/prompts/templates/analysis/interview_question.rb +3 -0
- data/lib/kerplunk/ai/prompts/templates/analysis/resume.rb +2 -0
- data/lib/kerplunk/ai/prompts/templates/generation/interview_questions.rb +2 -0
- data/lib/kerplunk/ai/prompts/templates/generation/job_description.rb +21 -19
- data/lib/kerplunk/ai/prompts/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7cb321c8aa762f4ce47ce293762e256112d2d0ac350db7849666be98baf8e742
|
4
|
+
data.tar.gz: 221eb691f623ae5fd1aeb14fc176d4fc49e9a79eb9266dff037aa7e1e1ccc1d0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 063fcf674a13531ee028fc7bcd20d8f479aab291973323c172f7d090c6385604b85eca01030a547ee1162a5694231a029784493688c5091010afce2ddc170540
|
7
|
+
data.tar.gz: 4d66de228c3d8a3e5b77e73562a7202c4f176a6734c19609832c0aab468f6cfb3150f623a5444d7aaefbc9e7279952fdffa59408e68b84691ab5a68597b4c53e
|
@@ -23,6 +23,8 @@ module Kerplunk
|
|
23
23
|
question_answer_prompts = question_models.collect(&:question_prompt)
|
24
24
|
|
25
25
|
<<~PROMPT
|
26
|
+
Respond with a RAW JSON object only. Do not include any explanatory text outside the JSON. The JSON object should have a single key "description" with a value that is a string containing valid HTML for the job description.
|
27
|
+
|
26
28
|
You are an expert recruiter. You are performing the interview of a candidate to effectively evaluate them for a new role at #{organization_name}.
|
27
29
|
|
28
30
|
=== Nonnegotiables for the interview analysis
|
@@ -18,6 +18,9 @@ module Kerplunk
|
|
18
18
|
transcript = "<NOTRANSCRIPT />" if transcript.nil? || transcript.empty?
|
19
19
|
|
20
20
|
<<~PROMPT
|
21
|
+
Respond with a RAW JSON object only. Do not include any explanatory text outside the JSON. The JSON object should have a single key "description" with a value that is a string containing valid HTML for the job description.
|
22
|
+
|
23
|
+
|
21
24
|
You are an expert recruiter. You are performing the interview of a candidate to effectively evaluate them for their #{question_type} skills. Please provide a score from 1 to 100. Please provide three high-level bullet pointed comments about how the candidate did on the question as the `commentary` key.
|
22
25
|
|
23
26
|
Please ensure the following:
|
@@ -19,6 +19,8 @@ module Kerplunk
|
|
19
19
|
raise ArgumentError, "resume_text is required" if resume_text.nil? || resume_text.empty?
|
20
20
|
|
21
21
|
<<~PROMPT
|
22
|
+
Respond with a RAW JSON object only. Do not include any explanatory text outside the JSON. The JSON object should have a single key "description" with a value that is a string containing valid HTML for the job description.
|
23
|
+
|
22
24
|
You are an expert recruiter. You are performing the interview of a candidate to effectively evaluate them for a new role at #{organization_name}. Please analyze the resume added after `====`. Please provide a score from 1 to 100.
|
23
25
|
|
24
26
|
=== The Job Title
|
@@ -12,6 +12,8 @@ module Kerplunk
|
|
12
12
|
raise ArgumentError, "description is required" if description.nil? || description.empty?
|
13
13
|
|
14
14
|
<<~PROMPT
|
15
|
+
Respond with a RAW JSON object only. Do not include any explanatory text outside the JSON. The JSON object should have a single key "description" with a value that is a string containing valid HTML for the job description.
|
16
|
+
|
15
17
|
You are an expert recruiter. You are performing the interview of a candidate to effectively evaluate them on all fronts: personal skills, technical skills, job-specific skills, soft-skills, and the “x-factor”. The interview should start off with a few questions about the candidate, then go to exactly 5 questions regarding the job posting listed below after ###, and then finally please ask a few questions to help assess personality and cultural fit (you can be creative here). These questions should aim to be simple, effective, empathetic, non-biased, and descriptive enough to be used in further prompts when analyzing the results of the interview.
|
16
18
|
|
17
19
|
Please output the questions in a JSON array. Please make sure that there are 2-3 personal questions, exactly 5 questions regarding the job posting (at least 1 technical question should be about an example scenario), and 2-3 questions to assess personality and cultural fit.
|
@@ -18,7 +18,7 @@ module Kerplunk
|
|
18
18
|
def self.generate_prompt(
|
19
19
|
job_title,
|
20
20
|
industry,
|
21
|
-
organization_name_requirement
|
21
|
+
organization_name_requirement,
|
22
22
|
organization_name,
|
23
23
|
organization_size,
|
24
24
|
job_location,
|
@@ -28,39 +28,41 @@ module Kerplunk
|
|
28
28
|
raise ArgumentError, "job_title is required" if job_title.nil? || job_title.empty?
|
29
29
|
raise ArgumentError, "industry is required" if industry.nil? || industry.empty?
|
30
30
|
|
31
|
-
if organization_name_requirement
|
32
|
-
|
31
|
+
organization_name_requirement_text = if organization_name_requirement
|
32
|
+
"Please ensure the job description includes the organization name."
|
33
33
|
else
|
34
34
|
organization_name = "an organization"
|
35
|
-
|
35
|
+
"Please ensure the job description does not include the organization name."
|
36
36
|
end
|
37
|
+
|
37
38
|
<<~PROMPT
|
38
|
-
|
39
|
+
Respond with a RAW JSON object only. Do not include any explanatory text outside the JSON. The JSON object should have a single key "description" with a value that is a string containing valid HTML for the job description.
|
40
|
+
|
41
|
+
You are an expert recruiter creating a job description for "#{job_title}" for #{organization_name}. They are a key player in the "#{industry}" industry with a staff size of "#{organization_size} employees" and are seeking top-tier talent.
|
39
42
|
|
40
43
|
Please ensure the description:
|
41
|
-
-
|
42
|
-
-
|
43
|
-
-
|
44
|
-
-
|
45
|
-
-
|
46
|
-
- Always
|
47
|
-
-
|
44
|
+
- Is grammatically correct
|
45
|
+
- Is not offensive
|
46
|
+
- Does not contain any profanity
|
47
|
+
- Is not superficial
|
48
|
+
- Maintains a consistent tone
|
49
|
+
- Always includes bullet points in the following sections: Responsibilities, Qualifications, Benefits, and Requirements
|
50
|
+
- Is formatted with valid HTML, not Markdown or newline characters
|
48
51
|
#{organization_name_requirement_text}
|
49
52
|
|
50
|
-
If
|
53
|
+
If you are unable to generate the description, please try again. Check your output and rerun the prompt if you are not satisfied with the results.
|
51
54
|
|
52
|
-
|
55
|
+
Example JSON output structure:
|
53
56
|
{
|
54
|
-
description: ""
|
57
|
+
"description": "<p>Job description HTML content goes here...</p>"
|
55
58
|
}
|
56
59
|
|
57
|
-
|
58
|
-
#{job_location}
|
60
|
+
Job Location: #{job_location}
|
59
61
|
|
60
|
-
|
62
|
+
Current Description:
|
61
63
|
#{job_description}
|
62
64
|
|
63
|
-
|
65
|
+
Full Job Listing JSON - Please consider the categories and subcategories carefully:
|
64
66
|
#{raw_string}
|
65
67
|
PROMPT
|
66
68
|
end
|