Agents & SystèmesMatchmaker
Modèle de données
Schéma de données pour le matching : profils, compétences, références, requêtes et résultats.
REF-SPEC/AG003-DB v1.0 — 2026-04-09
1. Vue d'ensemble
Le modèle de données de Matchmaker couvre le catalogue de ressources (profils, compétences, références) et la traçabilité des recherches (requêtes, résultats, scores).
2. Tables du catalogue
consultant_profiles
Profils des ressources avec embedding vectoriel.
| Colonne | Type | Description |
|---|---|---|
| id | INTEGER PK | Identifiant unique |
| consultantId | TEXT UNIQUE | Référence de la ressource |
| titre | TEXT | Intitulé du poste / rôle |
| bio | TEXT | Description libre du profil |
| secteurs | TEXT (JSON) | Secteurs d'expérience |
| embedding | TEXT (JSON) | Vecteur 1536 dimensions (Float[]) |
| embeddingUpdatedAt | TEXT | Date de dernière vectorisation |
| createdAt | TEXT | Date de création |
| updatedAt | TEXT | Dernière mise à jour |
consultant_skills
Compétences rattachées aux profils.
| Colonne | Type | Description |
|---|---|---|
| id | INTEGER PK | Identifiant unique |
| consultantId | TEXT FK | Profil rattaché |
| skill | TEXT | Nom de la compétence |
| category | TEXT | technique, fonctionnel, sectoriel, méthodologie |
| level | TEXT | débutant, confirmé, expert |
consultant_references
Missions passées avec embedding.
| Colonne | Type | Description |
|---|---|---|
| id | INTEGER PK | Identifiant unique |
| consultantId | TEXT FK | Profil rattaché |
| client | TEXT | Nom du client |
| mission | TEXT | Intitulé de la mission |
| description | TEXT | Description détaillée |
| secteur | TEXT | Secteur d'activité |
| tags | TEXT (JSON) | Tags libres |
| dateDebut | TEXT | Date de début |
| dateFin | TEXT | Date de fin |
| embedding | TEXT (JSON) | Vecteur 1536 dimensions |
| createdAt | TEXT | Date de création |
cabinet_references
Références partagées du cabinet (base commune).
| Colonne | Type | Description |
|---|---|---|
| id | INTEGER PK | Identifiant unique |
| code | TEXT | Code référence |
| titre | TEXT | Intitulé de la mission |
| client | TEXT | Nom du client |
| description | TEXT | Description détaillée |
| secteur | TEXT | Secteur d'activité |
| tags | TEXT (JSON) | Tags libres |
| consultantIds | TEXT (JSON) | Consultants impliqués |
| embedding | TEXT (JSON) | Vecteur 1536 dimensions |
3. Tables de recherche
matching_requests
Requêtes de matching sauvegardées.
| Colonne | Type | Description |
|---|---|---|
| id | INTEGER PK | Identifiant unique |
| titre | TEXT | Intitulé du besoin |
| contenu | TEXT | Description complète |
| source | TEXT | fiche_poste, appel_offres, texte_libre |
| dateDebutSouhaitee | TEXT | Début de période (optionnel) |
| dateFinSouhaitee | TEXT | Fin de période (optionnel) |
| embedding | TEXT (JSON) | Vecteur du besoin |
| createdBy | TEXT FK | Utilisateur ayant créé la recherche |
| createdAt | TEXT | Date de création |
matching_results
Résultats individuels par recherche.
| Colonne | Type | Description |
|---|---|---|
| id | INTEGER PK | Identifiant unique |
| matchingRequestId | INTEGER FK | Recherche rattachée |
| consultantId | TEXT FK | Ressource évaluée |
| scoreGlobal | INTEGER | Score pondéré 0-100 |
| scoreSemantique | INTEGER | Axe similarité sémantique |
| scoreCompetences | INTEGER | Axe compétences matchées |
| scoreRefsClient | INTEGER | Axe références sectorielles |
| scoreRefsMission | INTEGER | Axe similarité de missions |
| scoreDisponibilite | INTEGER | Axe disponibilité |
| details | TEXT (JSON) | Détails (skills matchées, refs similaires, statut dispo) |
| createdAt | TEXT | Date de création |
4. Relations
consultant_profiles ──< consultant_skills
consultant_profiles ──< consultant_references
matching_requests ──< matching_results ──> consultant_profiles