SonFox2920 commited on
Commit
c2d2fca
·
verified ·
1 Parent(s): 32cfe13

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +28 -4
app.py CHANGED
@@ -517,30 +517,54 @@ with tab1:
517
  "- Ưu tiên **tiềm năng phát triển hơn kinh nghiệm**, đề cao tinh thần khởi nghiệp.",
518
  "- Không phù hợp với ứng viên **chỉ tìm kiếm sự ổn định hoặc phúc lợi cao ngay từ đầu**.",
519
  "- Tiêu chí đánh giá: 40% năng lực chuyên môn, 30% phù hợp văn hóa, 20% khả năng học hỏi & đổi mới, 10% điểm cộng & điểm trừ đặc biệt.",
 
520
  "### MÔ TẢ CÔNG VIỆC:",
521
  f"{jd.strip()}" if jd and jd.strip() else None,
 
522
  "### CÁC YẾU TỐ QUAN TRỌNG KHI ĐÁNH GIÁ CV:",
523
  "- **Năng lực chuyên môn:** Kinh nghiệm làm việc với nhà cung cấp, xử lý chứng từ, theo dõi tiến độ mua hàng, làm việc với đơn vị logistics.",
524
  "- **Phù hợp văn hóa A Plus:** Cẩn thận & minh bạch, tư duy linh hoạt & chủ động, phù hợp mô hình cung ứng tinh gọn.",
525
  "- **Khả năng học hỏi & đổi mới:** Chủ động học hỏi, thích ứng với thay đổi, tư duy cải tiến & tối ưu công việc.",
526
  "- **Điểm cộng & điểm trừ:** Các điểm mạnh nổi bật (ngoại ngữ, phân tích dữ liệu, ERP...) và rủi ro tiềm ẩn/điểm yếu lớn.",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
527
  "### HƯỚNG DẪN ĐÁNH GIÁ:",
528
  "1. Phân tích kỹ CV và so sánh với từng yêu cầu trong JD.",
529
- "2. Đối với mỗi tiêu chí, đưa ra điểm số từ 0-10 dựa trên mức độ phù hợp.",
530
  "3. Đưa ra nhận xét khách quan, nêu rõ điểm mạnh và điểm cần cải thiện.",
531
  "4. Xem xét các tiêu chí như **độ nhảy việc, tốc độ thăng tiến, khả năng làm việc với nhiều đối tác**.",
532
- "5. Áp dụng **10 điểm cộng & 10 điểm trừ** khi phân tích CV.",
533
  "6. Nếu có thông tin từ form ứng tuyển hoặc nhận xét của nhà tuyển dụng, hãy kết hợp vào phân tích.",
534
  "7. Vui lòng trả về kết quả đánh giá **CHÍNH XÁC theo định dạng JSON**.",
 
535
  f"### NỘI DUNG CV CỦA ỨNG VIÊN {name}: {cv_text.strip()}" if cv_text and cv_text.strip() else None,
536
  review_text if review_text.strip() else None,
537
  form_data_text if form_data_text.strip() else None,
538
  additional_info_text if additional_info_text.strip() else None,
539
  ]
540
-
541
  # Filter out None values
542
  prompt = " ".join([component for component in prompt_components if component is not None])
543
-
544
  try:
545
  response = get_gemini_response(prompt, cv_text)
546
  main_CV_score = round((response["nang_luc_chuyen_mon"]*0.4 + response["phu_hop_van_hoa"]*0.3 + response["kha_nang_hoc_hoi"]*0.2 + response["diem_cong_diem_tru"]*0.1), 2)
 
517
  "- Ưu tiên **tiềm năng phát triển hơn kinh nghiệm**, đề cao tinh thần khởi nghiệp.",
518
  "- Không phù hợp với ứng viên **chỉ tìm kiếm sự ổn định hoặc phúc lợi cao ngay từ đầu**.",
519
  "- Tiêu chí đánh giá: 40% năng lực chuyên môn, 30% phù hợp văn hóa, 20% khả năng học hỏi & đổi mới, 10% điểm cộng & điểm trừ đặc biệt.",
520
+
521
  "### MÔ TẢ CÔNG VIỆC:",
522
  f"{jd.strip()}" if jd and jd.strip() else None,
523
+
524
  "### CÁC YẾU TỐ QUAN TRỌNG KHI ĐÁNH GIÁ CV:",
525
  "- **Năng lực chuyên môn:** Kinh nghiệm làm việc với nhà cung cấp, xử lý chứng từ, theo dõi tiến độ mua hàng, làm việc với đơn vị logistics.",
526
  "- **Phù hợp văn hóa A Plus:** Cẩn thận & minh bạch, tư duy linh hoạt & chủ động, phù hợp mô hình cung ứng tinh gọn.",
527
  "- **Khả năng học hỏi & đổi mới:** Chủ động học hỏi, thích ứng với thay đổi, tư duy cải tiến & tối ưu công việc.",
528
  "- **Điểm cộng & điểm trừ:** Các điểm mạnh nổi bật (ngoại ngữ, phân tích dữ liệu, ERP...) và rủi ro tiềm ẩn/điểm yếu lớn.",
529
+
530
+ "### HƯỚNG DẪN CHẤM ĐIỂM:",
531
+ "1. **Năng lực chuyên môn (40%)**",
532
+ " - 5 – Xuất sắc: Đã có kinh nghiệm thực tế, làm việc hiệu quả, chủ động xử lý vấn đề.",
533
+ " - 3-4 – Có kinh nghiệm: Đã làm trong lĩnh vực liên quan nhưng cần rèn luyện thêm.",
534
+ " - 1-2 – Chưa có kinh nghiệm: Thiếu kiến thức hoặc chưa từng làm công việc tương tự.",
535
+
536
+ "2. **Phù hợp văn hóa (30%)**",
537
+ " - 5 – Xuất sắc: Tinh thần trách nhiệm cao, linh hoạt, chủ động, phù hợp hoàn toàn với mô hình A Plus.",
538
+ " - 3-4 – Phù hợp tương đối: Có tinh thần làm việc tốt nhưng cần kiểm chứng thêm.",
539
+ " - 1-2 – Chưa phù hợp: Thiếu sự chủ động, khó thích nghi với văn hóa công ty.",
540
+
541
+ "3. **Khả năng học hỏi & đổi mới (20%)**",
542
+ " - 5 – Rất tốt: Luôn chủ động học hỏi, tiếp thu nhanh công nghệ và quy trình mới.",
543
+ " - 3-4 – Ổn: Có khả năng học hỏi nhưng cần thời gian thích nghi.",
544
+ " - 1-2 – Yếu: Ít chủ động học tập, khó tiếp thu thay đổi.",
545
+
546
+ "4. **Điểm cộng & điểm trừ (10%)**",
547
+ " - Điểm cộng (Thêm điểm nếu có kỹ năng đặc biệt như ngoại ngữ, ERP, phân tích dữ liệu, v.v.).",
548
+ " - Điểm trừ (Trừ điểm nếu có hạn chế lớn như không linh hoạt, thiếu kinh nghiệm thực tế, v.v.).",
549
+
550
  "### HƯỚNG DẪN ĐÁNH GIÁ:",
551
  "1. Phân tích kỹ CV và so sánh với từng yêu cầu trong JD.",
552
+ "2. Đối với mỗi tiêu chí, đưa ra điểm số từ 1-5 dựa trên mức độ phù hợp.",
553
  "3. Đưa ra nhận xét khách quan, nêu rõ điểm mạnh và điểm cần cải thiện.",
554
  "4. Xem xét các tiêu chí như **độ nhảy việc, tốc độ thăng tiến, khả năng làm việc với nhiều đối tác**.",
555
+ "5. Áp dụng **điểm cộng & điểm trừ** khi phân tích CV.",
556
  "6. Nếu có thông tin từ form ứng tuyển hoặc nhận xét của nhà tuyển dụng, hãy kết hợp vào phân tích.",
557
  "7. Vui lòng trả về kết quả đánh giá **CHÍNH XÁC theo định dạng JSON**.",
558
+
559
  f"### NỘI DUNG CV CỦA ỨNG VIÊN {name}: {cv_text.strip()}" if cv_text and cv_text.strip() else None,
560
  review_text if review_text.strip() else None,
561
  form_data_text if form_data_text.strip() else None,
562
  additional_info_text if additional_info_text.strip() else None,
563
  ]
564
+
565
  # Filter out None values
566
  prompt = " ".join([component for component in prompt_components if component is not None])
567
+
568
  try:
569
  response = get_gemini_response(prompt, cv_text)
570
  main_CV_score = round((response["nang_luc_chuyen_mon"]*0.4 + response["phu_hop_van_hoa"]*0.3 + response["kha_nang_hoc_hoi"]*0.2 + response["diem_cong_diem_tru"]*0.1), 2)