CVMatcher est un projet permettant de récupérer des CV et des offres d’emploi afin de générer un score de compatibilité (matchmaking) entre les deux.
Le projet utilise le modèle Mistral pour effectuer l’analyse et la correspondance.
- Extraction d’informations structurées depuis des CV.
- Extraction d’informations clés depuis des fiches de poste.
- Calcul d’un score de compatibilité entre CV et offres.
- Génération d’un rapport détaillant les correspondances (compétences, expériences, langues, diplômes).
cv_matcher/
│── main.py # Point d'entrée de l'application
│── environment.yml # Configuration de l'environnement Conda
│── requirements.txt # Dépendances Python
│── config/ # Gestion de la configuration et des variables
│── services/ # Logique métier (appel à Mistral, calcul de score, etc.)
│── models/ # Définitions des modèles (CV, offres)
│── utils/ # Fonctions utilitaires (PDF → texte, JSON, mapping…)
│── prompt/ # Prompts utilisés avec Mistral
-
Anaconda ou Miniconda doit être installé sur votre système.
👉 Installer Anaconda
👉 Installer Miniconda -
Avoir une clé API Mistral valide.
Créez un fichier.envà la racine du projet avec le contenu suivant :MISTRAL_API_KEY='VotreCléAPI'
.env, l’application ne fonctionnera pas.
Depuis la racine du projet cvmatcher, exécutez :
conda env create -f environment.yml
conda activate CvMatcherToujours depuis la racine du projet :
python main.pyVous devrez renseigner les liens/chemins du CV (PDF) et de l’offre (fichier texte).
Voici un éxemple de l'utilisation de l'app :
Les résultats seront générés et stockés dans le dossier data/ avec les sous-dossiers :
prompts_data/→ données préparées pour l’appel aux modèles Mistralraw_data/→ données brutes récupérées (CV, offres)
✍️ Auteur : Samuel Hanein
📧 Contact : samuelhanein@gmail.com
