feat(): prediction pipeline

This commit is contained in:
gitgernit
2025-11-23 04:11:52 +03:00
parent 2e6214a5ec
commit d1c7641698
25 changed files with 224 additions and 244 deletions
+12 -11
View File
@@ -36,28 +36,29 @@ class MlApiGateway:
self,
resume_id: ResumeId,
key_skills: list[str],
suituble_vacancies: Sequence[SuitableVacancyDs],
suitable_vacancies: Sequence[SuitableVacancyDs],
) -> GenerateResumePredictionResponse:
response = await self._client.post(
"/predict_salary",
"/predict",
json={
"resume_id": resume_id,
"resume_id": str(resume_id),
"key_skills": key_skills,
"vacancies": [
{
"vacancy_id": suituble_vacancy.vacancy_id,
"from_salary": suituble_vacancy.from_salary,
"to_salary": suituble_vacancy.to_salary,
"key_skills": suituble_vacancy.key_skills,
"resume_similarity": suituble_vacancy.resume_similarity,
} for suituble_vacancy in suituble_vacancies
"vacancy_id": str(suitable_vacancy.vacancy_id),
"from_salary": str(suitable_vacancy.from_salary),
"to_salary": str(suitable_vacancy.to_salary),
"key_skills": suitable_vacancy.key_skills,
"resume_similarity": suitable_vacancy.resume_similarity,
}
for suitable_vacancy in suitable_vacancies
],
},
)
response_json = response.json()
return GenerateResumePredictionResponse(
salary_from=response_json["salary_from"],
salary_to=response_json["salary_to"],
salary_from=Decimal(str(response_json["salary_from"])),
salary_to=Decimal(str(response_json["salary_to"])),
recommended_skills=response_json["recommended_skills"],
)