cdcvd Fariddvp commited on
Commit
6d7e8c7
1 Parent(s): c7ff85c

Update app.py (#2)

Browse files

- Update app.py (1293d45b8b2c9d826d4aeddf1546ae013686d159)


Co-authored-by: Divanpour <Fariddvp@users.noreply.huggingface.co>

Files changed (1) hide show
  1. app.py +40 -14
app.py CHANGED
@@ -31,26 +31,52 @@ def extract_text_from_pdf(pdf_file):
31
 
32
  def evaluate_with_gpt(pdf_file, job_description):
33
  resume_text = extract_text_from_pdf(pdf_file)
34
-
35
- prompt = f"""به عنوان یک تحلیلگر با تجربه سیستم ردیابی متقاضی (ATS)، نقش شما شامل ارزیابی رزومه در برابر شرح شغل است.
36
- رزومه:{resume_text}
37
- شرح شغل:{job_description}
38
- """
39
 
40
- response = openai.ChatCompletion.create(
41
- model="gpt-4o",
42
- messages=[
43
- {"role": "system", "content": "You are a helpful assistant."},
44
- {"role": "user", "content": prompt}
45
- ]
46
- )
 
 
 
 
 
 
 
47
 
48
- return response.choices[0].message['content']
 
 
 
 
 
 
 
 
 
 
 
49
 
50
  def evaluate_with_gemma(pdf_file, job_description):
51
  resume_text = extract_text_from_pdf(pdf_file)
52
 
53
- prompt = f"Evaluate the following resume against the job description. Resume: {resume_text} Job Description: {job_description}"
 
 
 
 
 
 
 
 
 
 
 
 
 
54
 
55
  outputs = gemma_pipe(prompt, max_new_tokens=256)
56
  return outputs[0]["generated_text"].strip()
 
31
 
32
  def evaluate_with_gpt(pdf_file, job_description):
33
  resume_text = extract_text_from_pdf(pdf_file)
 
 
 
 
 
34
 
35
+ # اینجا شما لیست کلمات کلیدی مورد نظر خود را تعیین می‌کنید
36
+ keywords = "وضعیت خدمت سربازی، سن، محل سکونت، محدوده حقوق پرداختی، میزان سابقه کار مدیریتی، میزان سابقه کار مرتبط با گروه شغلی مشابه، میزان سابقه کار در صنعت، میزان تحصیلات، مهارت زبان، مهارت های نرم افزاری"
37
+
38
+ prompt = f"""
39
+ به عنوان یک تحلیلگر با تجربه سیستم ردیابی متقاضی (ATS)، نقش شما شامل ارزیابی رزومه نسبت به شرح شغل و کلمات کلیدی مشخصی است.
40
+ لطفاً رزومه فرد را با در نظر گرفتن کلمات کلیدی تعیین شده مطابقت دهید و درصد تطابق را بر اساس معیارهای کلیدی و همچنین تعداد کلمات کلیدی گمشده و منطبق محاسبه کنید.
41
+
42
+ ارزیابی را بر اساس دقیقا این کلمات کلیدی {keywords} محاسبه کن.
43
+ شرح شغل: {job_description}
44
+ رزومه: {resume_text}
45
+
46
+ من پاسخ را در یک رشته با ساختار زیر می‌خواهم:
47
+ {{"تطابق شرح شغل با رزومه فرد ":"%"، "تعداد کلمات کلیدی غیر منطبق ":""، "تعداد کلمات کلیدی منطبق ":""}}
48
+ """
49
 
50
+ try:
51
+ response = openai.ChatCompletion.create(
52
+ model="gpt-4o",
53
+ messages=[
54
+ {"role": "system", "content": "You are a helpful assistant."},
55
+ {"role": "user", "content": prompt}
56
+ ],
57
+ temperature=0
58
+ )
59
+ return response.choices[0].message['content']
60
+ except Exception as e:
61
+ return f"Error during resume evaluation: {e}"
62
 
63
  def evaluate_with_gemma(pdf_file, job_description):
64
  resume_text = extract_text_from_pdf(pdf_file)
65
 
66
+ # اینجا شما لیست کلمات کلیدی مورد نظر خود را تعیین می‌کنید
67
+ keywords = "وضعیت خدمت سربازی، سن، محل سکونت، محدوده حقوق پرداختی، میزان سابقه کار مدیریتی، میزان سابقه کار مرتبط با گروه شغلی مشابه، میزان سابقه کار در صنعت، میزان تحصیلات، مهارت زبان، مهارت های نرم افزاری"
68
+
69
+ prompt = f"""
70
+ به عنوان یک تحلیلگر با تجربه سیستم ردیابی متقاضی (ATS)، نقش شما شامل ارزیابی رزومه نسبت به شرح شغل و کلمات کلیدی مشخصی است.
71
+ لطفاً رزومه فرد را با در نظر گرفتن کلمات کلیدی تعیین شده مطابقت دهید و درصد تطابق را بر اساس معیارهای کلیدی و همچنین تعداد کلمات کلیدی گمشده و منطبق محاسبه کنید.
72
+
73
+ ارزیابی را بر اساس دقیقا این کلمات کلیدی {keywords} محاسبه کن.
74
+ شرح شغل: {job_description}
75
+ رزومه: {resume_text}
76
+
77
+ من پاسخ را در یک رشته با ساختار زیر می‌خواهم:
78
+ {{"تطابق شرح شغل با رزومه فرد ":"%"، "تعداد کلمات کلیدی غیر منطبق ":""، "تعداد کلمات کلیدی منطبق ":""}}
79
+ """
80
 
81
  outputs = gemma_pipe(prompt, max_new_tokens=256)
82
  return outputs[0]["generated_text"].strip()