Noo88ear's picture
πŸš€ Initial deployment of Multi-Agent Job Application Assistant
7498f2c
from __future__ import annotations
from typing import List
from .text import extract_keywords_from_text
from .consistency import coverage_score, conciseness_score
def resume_probability(resume_text: str, job_description: str, max_chars: int = 8000) -> float:
jd_k = extract_keywords_from_text(job_description or "", top_k=40)
cov = coverage_score(resume_text, jd_k)
conc = conciseness_score(resume_text, max_chars)
# Weighted combo: emphasize coverage
p = 0.7 * cov + 0.3 * conc
return float(max(0.0, min(1.0, p)))
def cover_letter_probability(letter_text: str, job_description: str, max_chars: int = 4000) -> float:
jd_k = extract_keywords_from_text(job_description or "", top_k=30)
cov = coverage_score(letter_text, jd_k)
conc = conciseness_score(letter_text, max_chars)
p = 0.6 * cov + 0.4 * conc
return float(max(0.0, min(1.0, p)))