Alain Buu for L'OreÌal
L’Oréal en pilote avancé sur l’IA générative appliquée au code
L’Oréal a démarré en décembre 2023 un pilote autour du développement logiciel assisté par l’IA générative avec trois solutions en test : GitHub Copilot, Gemini Code Assist et L’Oréal GPT. Plusieurs étapes clés du développement sont concernées. Les gains réels restent à mesurer précisément.
Mistral AI propose désormais lui aussi un modèle d’intelligence artificielle générative dédié au code : Codestral. Pourquoi cet intérêt pour le développement logiciel après la génération de texte ? Car le marché potentiel est vaste. Laurent Carrié, global head of Tech Factory chez L’Oréal, rappelle que le métier de développeur est en effet un des premiers concernés par l’IA générative.
« Les entreprises réfléchissent aux bons cas d’usage pour nombre de métiers comme le marketing ou les ressources humaines. Pour le monde du développement, la question ne se pose pas. Elle ne se pose plus. C’est terminé. Ne citons que Github Copilot. Il atteint deux millions d’utilisateurs quotidiens », lance-t-il.
De l’IA depuis l’idéation jusqu’à la maintenance logicielle
Les LLMs (grands modèles de langage) interviennent aux différentes étapes de la conception : idéation, développement, test, déploiement, maintenance & support. Aux entreprises membres de l’IMA, Laurent Carrié l’assure, « il faut y aller. Vous n’aurez pas le choix ». Mais dans le même temps, il insiste sur la nécessité de traiter également les questions sur les gains, le coût ou sur les risques.
Pour le représentant de L’Oréal, ces technologies génératives peuvent donc dès à présent contribuer aux multiples phases du cycle de développement, en idéation, lors des sprints de design, pour la création des maquettes et des premières interfaces. « Les grands standards du marché, Figma par exemple, intègrent déjà ces fonctions d’IA. », selon Laurent Carrié.
Les fournisseurs d’IDE (environnement de développement) ne sont pas en reste. Ils proposent, via des plugins, d’interagir avec des modèles génératifs, généralistes ou spécialisés. Des LLMs sont par exemple experts du Cobol, très présent encore dans les banques. Que ce soit sur les tests et à présent aussi sur le déploiement, l’IA générative a fait son nid.
Conscient de ces possibilités, L’Oréal a engagé en 2023 sa démarche IA générative appliquée au développement. « Sur le design, nous commençons tout juste. Pour les tests, nous nous faisons encore une religion », témoigne Laurent Carrié. C’est plutôt sur le coding, le déploiement et la maintenance que L’Oréal a consacré ses premiers efforts.
Du développement front-office influencé par le conversationnel
Les impacts de la GenAI ne se situent pas uniquement au niveau du back-office. « Nous commençons à réfléchir à changer la façon de faire nos applications », confie le responsable. Cette évolution, à concrétiser, sera tirée par l’adoption de nouvelles interfaces conversationnelles.
L’Oréal a d’ailleurs commencé à intégrer ces transformations au niveau du front-office au travers d’un assistant beauté (Beauty Genius) basé sur l’IA générative.
Avant de lancer ses propres expérimentations pour ses besoins internes, la Tech Factory L’Oréal a procédé à une analyse bénéfices/risques associés au code assisté.
« Nous avons aussi essayé de déterminer à qui allaient les bénéfices », raconte Laurent Carrié. Pourquoi cette remarque ? Car, à l’image d’autres grands groupes, L’Oréal externalise une bonne partie de ses développements auprès de partenaires (éditeurs, ESN, freelances, etc.).
Par conséquent, si l’IA générative appliquée au logiciel est source de gains de productivité, « nous considérons que les gains vont majoritairement aux prestataires de services informatiques ou aux éditeurs ». Pour ses développeurs internes, le bénéfice sur la productivité est moins prégnant, ajoute Laurent Carrié.
Sur la qualité du code, et la génération de la documentation en revanche, L’Oréal devrait être le bénéficiaire direct. La valeur est, elle, partagée entre les développeurs (performance, efficacité, etc.) et l’entreprise. La « coding expérience », enfin, concerne essentiellement les utilisateurs du développement assisté.
Propriété intellectuelle : L’Oréal assure ses arrières
Mais les bénéfices identifiés sont contrebalancés par des risques, dont celui du shadow IT (comme pour le low-code/no-code). Autre problématique pour L’Oréal : la propriété intellectuelle. « Nous avons beaucoup travaillé sur ce sujet avec nos équipes du légal. Ne serait-ce que pour Github Copilot, nous avons consacré trois mois à l’analyse des contrats pour évaluer la manière d’encadrer le risque. »
L’application de Microsoft a en effet été entraînée essentiellement grâce au code publié sur Github public. Or ce code peut, dans certains cas, être attaché à des licences d’utilisation, avertit Laurent Carrié.
« Je considère qu’il est de notre devoir de maîtriser nos risques sans nous reposer intégralement sur notre partenaire », même si Microsoft s’engage à assurer une protection juridique sur cet aspect de la propriété intellectuelle.
La cybersécurité constitue un autre point de vigilance. « Ces outils peuvent proposer des morceaux de code qui ne sont pas systématiquement les meilleurs ». Et comme pour le texte, le code peut être le fruit d’hallucinations des modèles.
Thèmes « importants pour L’Oréal » : la durabilité et l’éthique. Dans ce domaine aussi, il y a des risques à surveiller. Est-il toujours rationnel, pour générer des centaines de lignes de code, de faire tourner des puces Nvidia ? « La consommation énergétique n’est pas anodine. Ne faisons pas l’impasse sur ces enjeux », conseille le dirigeant.
Pour analyser ses expérimentations, L’Oréal s’appuie sur des tableaux de pilotage de l’ensemble de la pratique DevOps. Avec eux, le groupe monitore l’ensemble de ses activités de développement.
Dans la GenAI, le groupe de cosmétiques a fait le choix du « buy », en cohérence avec sa politique « buy first ». Les deux solutions principales testées sont Github Copilot et Gemini Code Assist. Un choix justifié par une stack Data bâtie sur les technologies Google. À ces outils du marché s’ajoute une alternative : L’Oréal GPT.
Les licences Copilot se destinent avant tout aux équipes Tech qui travaillent dans Github. Gemini est plus axé Data et sur les développeurs ou data engineers chargés des services GCP. Quant à l’instance privée L’Oréal GPT, elle compte pour utilisateurs des citizen developers et data scientists pour l’écriture de « petits bouts de code », en Python par exemple, ou pour des macros Excel.
Tous les développeurs ne basculent pas sur la GenAI
Malgré la disponibilité de ces applications, « une partie des développeurs ne les utilise pas », constate Laurent Carrié. De fait, 46 % des développeurs sont actifs sur Copilot.
« Je ne dirais pas qu’une réticence s’exprime. Néanmoins, à date, une partie de la population concernée ne voit pas l’intérêt ou la valeur dans l’usage de ces outils », relève le responsable, qui nuance donc les chiffres et le discours commercial des fournisseurs.
Afin de mesurer quantitativement les apports de ces assistants, L’Oréal a recours à deux méthodes : les monitorings DevOps et des enquêtes. Ces dernières peuvent s’avérer plus complexes à réaliser du fait de la part d’externes parmi les développeurs.
L’analyse a cependant fourni plusieurs enseignements. Il y a environ 50 % d’utilisateurs actifs de la GenAI. Et le gain de productivité estimé varie de 5 % à 60 % selon le projet, le profil du développeur ou la technologie. Précisions qu’à ce jour, il s’agit d’un gain perçu par les utilisateurs.
De nouveau, le global head of Tech Factory nuance la communication des éditeurs, très généreuse sur le bonus de productivité généré. « Nous sommes plus près de la réalité, je pense », considère-t-il, tout en notant que les profils d’utilisateurs sont très hétérogènes.
Mais si les gains de productivité doivent être relativisés, c’est aussi du fait du temps véritablement consacré par un développeur à l’écriture de code. D’après la littérature, le code représente de 40 à 50 % du temps de travail. Le gain de productivité est par conséquent à minorer pour se situer plutôt aux alentours de 10 à 15 %.
Un atout pour la migration de code, mais avec des limites
Quant aux usages principaux, par ordre décroissant, ils portent sur l’autocomplétion, la génération de fonction (ou de code), l’inspiration de code et enfin la documentation.
L’Oréal applique aussi la GenAI à la migration de code, par exemple pour monter de version sur un framework. L’entreprise a pu gagner une trentaine de jours sur de tels projets.
Un écueil est à noter néanmoins. La migration de code ne peut pas toujours se faire sur la dernière version d’un framework. Les modèles n’étant pas à jour. « Il faut tenir compte de ces limites. Les LLMs ne sont pas toujours à jour des dernières nouveautés », avertit Laurent Carrié.
Les utilisateurs ont également été sondés pour mesurer leur satisfaction en termes d’expérience.
« Il y a une certaine satisfaction, même si elle n’est pas au niveau qui est le nôtre pour nos produits », déclare le représentant de L’Oréal. Cela peut notamment s’expliquer par le « niveau d’acceptance » vis-à-vis des résultats fournis par l’outil. Une grande part des propositions n’est pas retenue. Ce bilan fluctue cependant significativement selon le langage de programmation. Sur Python, ce « taux d’acceptance » grimpe à 25,7 %. Il n’atteint en revanche que 18,5 % pour du Java.
Des modèles locaux sur PC à l’étude
En conclusion, Laurent Carrié témoigne donc d’une adoption réelle de l’assistance au code, bien que celle-ci ne soit pas aussi élevée que ce qu’avancent les éditeurs. Idem pour les gains de productivité.
Autre constat attendu et vérifié : « l’usage et la productivité varient selon les profils des développeurs ». Et concernant la qualité du code, L’Oréal se pose « encore beaucoup de questions. Nous n’avons pas assez de recul, notamment sur les failles de sécurité. Nous monitorons, c’est essentiel pour suivre de tels outils. »
Toutes les interrogations ne sont donc pas résolues. Et nombre de nouvelles émergent. Comme de savoir comment se répartir les gains de productivité entre L’Oréal et ses partenaires.
Enfin, l’entreprise commence à étudier une autre piste : des assistants locaux installés sur les PC des développeurs, de manière à réduire l’empreinte environnementale par rapport au recours à des modèles basés sur le cloud.
« Des modèles de petite taille et très spécialisés sur des langages existent. Nous testons et comparons les performances pour déterminer si ces solutions peuvent être privilégiées pour des fonctions très spécialisées dans le développement », conclut Laurent Carrié.
Cette option peut aussi présenter un avantage économique par rapport aux licences des grands éditeurs comme Microsoft et Google, en particulier pour des profils ou des tâches ciblés qui ne nécessiteraient pas une licence pleine.