LinkedIn : extraction de compétences basée sur LLM — 200 modifications de profil par seconde avec un modèle 80% plus petit sans perte de qualité
En production, le système gère environ 200 modifications de profil par seconde jusqu'à 100 ms par message — sur CPU, grâce à un modèle distillé 80% plus petit que l'original. Dans les tests A/B en ligne, l'amélioration de l'extraction des compétences a amélioré les métriques dans trois produits à la fois. Appariement des compétences emploi-membre : +0,87% de candidatures qualifiées, +0,40% de taux de candidatures qualifiées, +0,48% de clics d'application, +0,24% d'embauches confirmées prédites. Recherche d'emploi : +0,76% de revenus PPC, +0,15% de sessions, +0,23% d'engagement. Recommandations d'emploi : +0,46% d'embauches confirmées prédites et +0,14% de candidatures. Ces chiffres nécessitent deux mises en garde. Tout d'abord, l'échelle : sur une plateforme avec des centaines de millions de membres, les fractions de pourcentage dans l'entonnoir d'embauche sont des valeurs absolues significatives et de l'argent direct (revenus PPC). Deuxièmement, la source : tous les pourcentages proviennent des tests A/B internes de LinkedIn du blog d'ingénierie, sans audit externe ; cela dit, la ventilation détaillée des métriques et l'embauche explicitement 'prédite' (plutôt que réelle) témoignent du soin du rapport. À notre avis, la principale leçon d'ingénierie du cas est que 'LLM en production' ne signifie presque jamais 'le plus grand modèle en production'. La formule réelle de LinkedIn : un grand modèle comme enseignant, un étudiant distillé au service, infrastructure CPU au lieu de GPU — et l'intelligence du pipeline résidant dans l'appariement avec un graphique de connaissances plutôt que dans un seul transformateur géant. C'est une architecture 'LLM + graphique de connaissances' où la taxonomie fournit l'interprétabilité et le contrôle tandis que le réseau de neurones fournit la compréhension du contexte ; contre la tendance des solutions de bout en bout, un tel hybride semble conservateur, mais c'est ce qui soutient 200 événements par seconde sur CPU. Notre deuxième observation est organisationnelle : LinkedIn rapporte l'impact du pipeline ML en métriques de produit final (candidatures, embauches, revenu), pas la précision d'extraction. C'est une discipline : une équipe d'infrastructure dont la réussite est mesurée par les métriques de produit d'autres équipes est forcée de construire des boucles de rétroaction avec ces produits — ce que LinkedIn a fait en intégrant la validation des compétences dans les interfaces des recruteurs et des chercheurs d'emploi.
- Extracting skills from content to fuel the LinkedIn Skills Graph — LinkedIn Engineering Blog (Ji Yan et al.), 2023-12-13
- Building and maintaining the skills taxonomy that powers LinkedIn's Skills Graph (39K навыков, 374K алиасов, KGBert) — LinkedIn Engineering Blog (Macskássy et al.), 2023-03-21
Contexte
LinkedIn reconstruit méthodiquement le marché du travail autour des compétences plutôt que des titres et diplômes : le pari de l'entreprise est qu'une approche axée sur les compétences ouvre des pools de candidats plus larges pour les employeurs et des trajectoires professionnelles pour les professionnels que le titre seul ne peut pas transmettre. Le fondement technique de la stratégie est le Skills Graph : une taxonomie de compétences liée aux membres, aux offres d'emploi, aux cours et au contenu de la plateforme.
L'échelle de la taxonomie est décrite dans un article d'ingénierie distinct (mars 2023) : près de 39 000 compétences, 374 000 alias dans 26 locales (différentes orthographes d'une même compétence, comme 'data analysis' et 'data analytics'), et plus de 200 000 arêtes entre nœuds ; depuis février 2021, le graphique avait augmenté de presque 35 %. Les compétences forment une polyhiérarchie de 'lignées de connaissances' : par exemple, 'Offshore Construction' hérite de 'Construction' et d'Oil and Gas'. Les taxonomistes maintiennent le graphique en tandem avec ML : le modèle KGBert (basé sur l'idée KG-BERT) prédit les relations de compétences plus de 20% mieux que le système précédent par F1. À la fin de 2023, la taxonomie dépassait 41 000 compétences.
Mais le graphique en soi n'est qu'un dictionnaire. La valeur émerge quand chaque entité de la plateforme — profil, offre d'emploi, cours, publication — est correctement étiquetée avec des compétences de ce dictionnaire. En décembre 2023, l'équipe LinkedIn AI (responsable technique Ji Yan et coauteurs) a publié une plongée approfondie dans le pipeline de production qui extrait les compétences de tout le contenu de la plateforme en utilisant des encodeurs LLM — dans des contraintes de production strictes : le flux mondial des modifications de profil sur infrastructure CPU, sans GPU coûteux.
Problème
Les compétences dans les profils, les offres d'emploi et les publications sont du texte libre, dans des dizaines de langues, et souvent implicites : 'built ETL pipelines' signifie-t-il Spark ? Airflow ? SQL ? La mise en correspondance naïve du dictionnaire manque de contexte et s'noie dans les homophones, tandis que les gens nomment la même compétence de centaines de façons — d'où les 374 000 alias dans la taxonomie. Et le texte doit être lié non pas à des étiquettes abstraites mais à des nœuds spécifiques dans un graphique de 41 000 compétences — y compris l'inférence hiérarchique : 'BERT' sur un profil dit aussi quelque chose sur 'NLP' et 'Deep Learning'.
L'autre moitié du problème est les contraintes de production. Les LLM de taille complète sont trop lents et coûteux pour le flux de modification : les profils des membres sont modifiés environ 200 fois par seconde dans le monde, et chaque message doit être traité en moins de 100 millisecondes — sur l'infrastructure Samza-BEAM CPU streaming, pas sur les clusters GPU. Le retraitement hors ligne périodique de l'ensemble du corpus — des centaines de millions de profils et de publications — ajoute ses propres exigences de débit pour le pipeline.
Enfin, une erreur d'extraction n'est pas une métrique abstraite : les recommandations d'emploi, la recherche d'emploi, l'appariement des candidats et la recherche des recruteurs dépendent tous de l'étiquetage des compétences. Une compétence manquée est un candidat qui n'a jamais vu le bon emploi ; une compétence fausse est une candidature sans rapport et du temps perdu pour un recruteur. La qualité de l'extraction se convertit directement en entonnoir d'embauche de toute la plateforme.
Solution
Le pipeline d'extraction se compose de quatre étapes séquentielles. Tout d'abord, la segmentation : le texte non structuré (une offre d'emploi, un profil, un CV) est analysé dans des sections structurelles — exigences ici, responsabilités là, description de l'entreprise ailleurs. Ensuite, l'étiquetage des compétences via deux routes parallèles : la correspondance de dictionnaire basée sur les jetons par rapport à la taxonomie et l'appariement sémantique. La sémantique est gérée par un modèle à deux tours construit sur Multilingual BERT : une tour encode la phrase, l'autre une compétence de taxonomie, et le texte est appareillé aux compétences dans un espace vectoriel partagé — donc 'built data processing pipelines' trouve 'ETL' sans correspondance littérale, dans n'importe quelle langue prise en charge. La troisième étape est l'expansion : pour les compétences trouvées, le pipeline parcourt le Skills Graph et ajoute les nœuds candidats connexes de la hiérarchie. L'étape finale est le score multitâche inter-domaines : un encodeur de texte contextuel basé sur un transformateur et un encodeur d'entités (modules partagés) plus des tours séparées par type de contenu — offres d'emploi, profils, flux — notent la pertinence de chaque paire contenu-compétence.
Le mouvement clé qui a rendu tout cela possible en temps réel est la distillation de connaissances : un modèle étudiant compact entraîné à reproduire le comportement du modèle de taille complète s'est avéré 80% plus petit sans perte de performance. C'est ce modèle qui sert le flux d'environ 200 modifications de profil par seconde jusqu'à 100 ms par message — sur l'infrastructure Samza-BEAM CPU existante, dans un schéma hybride : traitement à proximité des modifications en temps réel plus des travaux hors ligne pour le retraitement complet du corpus lorsque les modèles ou la taxonomie se mettent à jour.
Une boucle séparée est la rétroaction de produit intégrée directement dans les interfaces : les recruteurs confirment ou corrigent les compétences lors de la publication d'emplois, les chercheurs d'emploi évaluent la pertinence des compétences appariées lors de la candidature, et les membres donnent des commentaires après les évaluations de compétence LinkedIn. Ces signaux s'écoulent dans la formation, fermant le cycle d'amélioration de l'extraction. Les compétences extraites alimentent le Skills Graph et chaque produit au-dessus : recommandations d'emploi, recherche d'emploi, appariement des candidats. Pour l'avenir, l'équipe a nommé les descriptions de compétences riches générées par LLM et un passage à des représentations de compétences entièrement basées sur l'intégration pour l'appariement sémantique.
Résultat
En production, le système gère environ 200 modifications de profil par seconde jusqu'à 100 ms par message — sur CPU, grâce à un modèle distillé 80% plus petit que l'original. Dans les tests A/B en ligne, l'amélioration de l'extraction des compétences a amélioré les métriques dans trois produits à la fois. Appariement des compétences emploi-membre : +0,87% de candidatures qualifiées, +0,40% de taux de candidatures qualifiées, +0,48% de clics d'application, +0,24% d'embauches confirmées prédites. Recherche d'emploi : +0,76% de revenus PPC, +0,15% de sessions, +0,23% d'engagement. Recommandations d'emploi : +0,46% d'embauches confirmées prédites et +0,14% de candidatures.
Ces chiffres nécessitent deux mises en garde. Tout d'abord, l'échelle : sur une plateforme avec des centaines de millions de membres, les fractions de pourcentage dans l'entonnoir d'embauche sont des valeurs absolues significatives et de l'argent direct (revenus PPC). Deuxièmement, la source : tous les pourcentages proviennent des tests A/B internes de LinkedIn du blog d'ingénierie, sans audit externe ; cela dit, la ventilation détaillée des métriques et l'embauche explicitement 'prédite' (plutôt que réelle) témoignent du soin du rapport.
À notre avis, la principale leçon d'ingénierie du cas est que 'LLM en production' ne signifie presque jamais 'le plus grand modèle en production'. La formule réelle de LinkedIn : un grand modèle comme enseignant, un étudiant distillé au service, infrastructure CPU au lieu de GPU — et l'intelligence du pipeline résidant dans l'appariement avec un graphique de connaissances plutôt que dans un seul transformateur géant. C'est une architecture 'LLM + graphique de connaissances' où la taxonomie fournit l'interprétabilité et le contrôle tandis que le réseau de neurones fournit la compréhension du contexte ; contre la tendance des solutions de bout en bout, un tel hybride semble conservateur, mais c'est ce qui soutient 200 événements par seconde sur CPU.
Notre deuxième observation est organisationnelle : LinkedIn rapporte l'impact du pipeline ML en métriques de produit final (candidatures, embauches, revenu), pas la précision d'extraction. C'est une discipline : une équipe d'infrastructure dont la réussite est mesurée par les métriques de produit d'autres équipes est forcée de construire des boucles de rétroaction avec ces produits — ce que LinkedIn a fait en intégrant la validation des compétences dans les interfaces des recruteurs et des chercheurs d'emploi.
Leçons
- Le LLM de production ne signifie presque jamais 'le plus grand modèle' mais un modèle distillé : la réduction de 80% de la taille sans perte de qualité a rendu le service CPU dans un budget de 100 ms possible.
- L'hybride 'LLM + graphique de connaissances' bat de bout en bout : la taxonomie fournit l'interprétabilité et l'inférence hiérarchique, le réseau de neurones fournit la compréhension du contexte et le multilingualisme.
- Signaler l'impact dans les métriques de produit final : LinkedIn cite les candidatures qualifiées (+0,87%), les revenus PPC (+0,76%) et les embauches prédites — pas seulement la précision d'extraction.
- Intégrer la rétroaction dans le produit : la validation des compétences des recruteurs, les commentaires des chercheurs d'emploi et les résultats des évaluations de compétence s'écoulent dans la formation, fermant la boucle de qualité.
- Une architecture à deux tours (texte et taxonomie dans un espace partagé) s'adapte à nouveaux types de contenu et 26 locales sans réentraîner l'ensemble du pipeline.
- Sur des plates-formes avec des centaines de millions d'utilisateurs, les fractions de pourcentage sont de l'argent sérieux : ne pas rejeter les petites victoires A/B.
- Un seul graphique de compétences comme couche de données partagée multiplie la valeur d'un pipeline ML dans de nombreux produits : recherche, recommandations, appariement, outils de recruteur.
Questions fréquentes
Comment LinkedIn extrait-il les compétences des profils et des offres d'emploi ?
Avec un pipeline à quatre étapes : segmentation du texte → étiquetage (dictionnaire plus sémantique via un Multilingual BERT à deux tours) → expansion sur le Skills Graph → notation multitâche des paires contenu-compétence. Un modèle distillé (80% plus petit) traite environ 200 modifications de profil par seconde en moins de 100 ms.
Qu'a donné la distillation de modèle à LinkedIn ?
Un modèle 80% plus petit sans perte de performance — suffisant pour servir le flux en temps réel sur l'infrastructure CPU existante (Samza-BEAM) au lieu du service GPU coûteux, plus le retraitement hors ligne de l'ensemble du corpus lors des mises à jour.
Comment l'amélioration de l'extraction des compétences a-t-elle affecté les métriques commerciales de LinkedIn ?
Dans les tests A/B en ligne : +0,87% de candidatures qualifiées et +0,24% d'embauches confirmées prédites dans l'appariement des compétences, +0,76% de revenus PPC dans la recherche d'emploi, et +0,46% d'embauches confirmées prédites dans les recommandations d'emploi. À l'échelle de la plateforme, les fractions de pourcentage constituent un impact commercial significatif.
Qu'est-ce que le Skills Graph et qui le maintient ?
Une taxonomie de plus de 41 000 compétences avec 374 000 alias dans 26 locales et plus de 200 000 arêtes hiérarchiques ('Offshore Construction' hérite de 'Construction' et d'Oil and Gas'). Les taxonomistes la maintiennent en tandem avec le modèle ML KGBert, qui prédit les relations de compétences 20% plus précisément que le système précédent.
Comment le système sait-il qu'il a correctement extrait les compétences ?
Par des boucles de rétroaction de produit : les recruteurs confirment les compétences lors de la publication d'emplois, les chercheurs d'emploi évaluent la pertinence de l'appariement lors de la candidature, et les membres donnent des commentaires après les évaluations de compétence. Ces signaux s'écoulent dans la formation du modèle.