ArthurLin's picture
Update cal_sim.py
3bb5a78 verified
raw
history blame contribute delete
859 Bytes
from sentence_transformers import util
def compute_similarity(resume_embeds, jd_embeds):
expected_sections = ["Experience & Achievements", "Skills & Competencies", "Culture Fit", "Personal Traits", "Education"]
similarity_scores = {}
for section in expected_sections:
if section in resume_embeds and section in jd_embeds:
similarity_scores[section] = float(util.cos_sim(resume_embeds[section], jd_embeds[section]))
else:
resume_values = list(resume_embeds.values())
jd_values = list(jd_embeds.values())
if len(resume_values) == len(jd_values):
resume_section_idx = expected_sections.index(section)
similarity_scores[section] = float(util.cos_sim(resume_values[resume_section_idx], jd_values[resume_section_idx]))
return similarity_scores