add resume

This commit is contained in:
ivankirpichnikov
2025-11-22 02:17:18 +03:00
parent a207e5a217
commit d9a3c39980
33 changed files with 1157 additions and 97 deletions
@@ -0,0 +1,21 @@
from decimal import Decimal
from typing import Any
from template_project.application.common.entity import Entity, to_entity
from template_project.application.common.enums import ExperienceType
@to_entity
class Vacancy(Entity[Any]):
position: str
from_salary: Decimal
to_salary: Decimal
experience_type: ExperienceType
description: str
key_skills: list[str]
@to_entity
class VacancyEmbedding(Entity[Any]):
vacancy_id: Any
vector: list[float]
@@ -0,0 +1,13 @@
from abc import abstractmethod
from typing import Protocol
class VacancyEmbeddingVectorGenerator(Protocol):
@abstractmethod
async def generate(
self,
position: str,
description: str,
key_skills: list[str],
) -> list[float]:
raise NotImplementedError