Aller au contenu
¿Prefieres ver el sitio en Español?

Actualités

Sea Dragon adopte une position sur l'intelligence artificielle et les LLM comme soutien à la programmation

mai 2025

Sea Dragon adopte une position sur l'intelligence artificielle et les LLM comme soutien à la programmation

Ces dernières années, le débat technologique a été dominé par l'avancée fulgurante de ce que l'on appelle l'intelligence artificielle. En tant qu'entreprise de technologie et d'ingénierie, Sea Dragon a mené une recherche exhaustive, responsable et guidée par une rigueur d'ingénieur afin d'adopter une position éclairée à l'égard de l'intelligence artificielle.

Notre entreprise compte des spécialistes en science des données et en intelligence artificielle, titulaires de certifications et de distinctions internationales de RapidMiner, IBM et Microsoft, et nous avons fourni des services connexes à des entreprises et à des institutions. C'est pourquoi, dans le but d'informer et d'éduquer, nous devons préciser certains concepts qui sont souvent confondus dans le discours public.

La science des données est une discipline qui combine mathématiques, statistiques, programmation et analyse métier pour extraire des connaissances, des schémas et des informations destinés à la prise de décision à partir d'un ensemble de données structurées et non structurées.

L'intelligence artificielle est un vaste domaine de l'informatique visant à créer des systèmes capables d'accomplir des tâches qui simulent la cognition humaine, telles que la perception visuelle, le raisonnement ou la résolution de problèmes complexes.

L'apprentissage automatique (machine learning) est un domaine de l'informatique qui développe des algorithmes apprenant des schémas à partir d'un ensemble de données historiques, afin d'effectuer des classifications, des regroupements et des prédictions sans qu'il soit nécessaire de programmer explicitement des règles. C'est un outil utile tant pour la science des données que pour l'intelligence artificielle.

Un grand modèle de langage (LLM) est un domaine de l'intelligence artificielle fondé sur des algorithmes d'apprentissage automatique entraînés sur de grands volumes de texte. Ces modèles prédisent la séquence de mots la plus probable à partir d'une entrée, généralement appelée prompt.

L'apprentissage automatique, en tant qu'outil, nous permet de prendre des décisions en fonction de la probabilité. Si un data scientist étudie le risque de crédit d'une population à partir de données historiques, il obtiendra un résultat tel que :

« Une personne de 22 ans qui étudie et ne possède aucun patrimoine » a 96 % de probabilités de ne pas rembourser un crédit à la consommation accordé si les revenus de son garant sont égaux ou inférieurs à 1,5 fois le salaire minimum.

Avec ce résultat, il peut être recommandé de refuser un crédit à la consommation à une personne présentant ces caractéristiques.

« Une personne de 35 ans avec un emploi stable et un historique de crédit irréprochable » a moins de 5 % de probabilités de ne pas rembourser un crédit à la consommation accordé, à condition que celui-ci ne dépasse pas 5 fois le salaire de cette personne.

Avec ce résultat, il peut être recommandé d'accorder un crédit à la consommation à une personne présentant ces caractéristiques.

Ces recommandations reposent sur l'analyse de données à l'aide d'un système de classification qui peut être analysé et expliqué, et dont le niveau de confiance peut être mesuré. Un grand nombre des projets de science des données actuellement en service disposent de processus permettant de recalibrer ces modèles si les conditions pour lesquelles ils ont été entraînés changent.

Cependant, tous les projets impliquant de l'apprentissage automatique ne réussissent pas. Si c'était le cas, les sociétés de paris sportifs succomberaient face à un modèle prédictif. Le problème de l'application d'un algorithme d'apprentissage automatique à la prédiction des résultats d'un championnat sportif tient à l'énorme quantité de variables qui influencent ces résultats. Un exemple exagéré :

Prédire qu'un champion de première division remportera un match contre l'avant-avant-dernier du même championnat paraît facile, mais si l'entraîneur décide de n'aligner que des remplaçants afin de ménager son effectif en vue du premier match de la Copa Libertadores, qui se jouera en milieu de semaine, une grande partie des statistiques s'effondre : l'entraîneur n'alignera pas la même composition, et l'équipe de remplaçants a moins d'expérience. Même si le maillot est le même, vous n'avez plus les variables nécessaires pour parier sur une victoire.

Quand la variabilité des paramètres de prédiction est très élevée, le résultat n'est plus fiable. Le système prédictif a besoin que les conditions de l'événement qu'il analysera soient semblables à celles des événements avec lesquels il a été entraîné.

C'est pourquoi, à la différence du premier cas où, dans une entité responsable, la recommandation du système d'apprentissage automatique n'est prise que comme référence et est revue par un expert, dans le second cas la prédiction humaine et la prédiction automatisée sont tout aussi incertaines. Le corollaire est le suivant :

Les résultats que fournit un modèle d'apprentissage automatique ne valent que ce que valent les données avec lesquelles il a été entraîné.

Un grand modèle de langage (LLM, de l'anglais Large Language Model) est entraîné avec un algorithme d'apprentissage automatique dont la décision ne peut pas être facilement expliquée et qui n'est pas supervisé. Ces modèles fonctionnent en générant le mot le plus probable dans un contexte donné, et la probabilité est ajustée en tenant compte de paramètres que nous, utilisateurs, ignorons. Ainsi, pour une même entrée X (le prompt), il y aura de nombreuses sorties différentes, et certaines d'entre elles pourraient être erronées. C'est ce que l'on appelle une « hallucination ».

Or, les hallucinations ne peuvent pas être totalement évitées : elles ne peuvent qu'être atténuées, en temps réel, en limitant le type de travail demandé à un LLM et en rédigeant des prompts très précis, ou, au moment de l'entraînement, en accumulant et en ajoutant davantage de données, ce qui explique pourquoi ChatGPT, Claude et d'autres modèles de type industriel nécessitent des centres de données dédiés uniquement à l'entraînement.

Les modèles de langage sont devenus très doués pour dissimuler leurs failles : dans leur grande majorité, les réponses qu'ils fournissent sont rédigées de manière si cohérente qu'un groupe d'utilisateurs de ces modèles a cessé de vérifier l'exactitude du résultat. C'est une erreur, car un grand modèle de langage n'est pas capable de comprendre la logique métier ; il est seulement capable d'émuler la compréhension.

C'est pourquoi notre conclusion est la suivante : l'utilisation sans discernement de code généré par de grands modèles de langage, sans relecture humaine minutieuse, présente de sérieux dangers opérationnels et de sécurité pour les entreprises :

  • Une dette technique invisible se crée : faute de comprendre la logique métier, le code généré paraît correct mais peut contenir des failles logiques profondes ou des comportements imprévisibles.
  • La capacité de maintenir ce code se perd : lorsqu'on accepte des blocs massifs de code générés par un outil, auditer et maintenir ce code devient un processus complexe.
  • Des failles de sécurité s'ouvrent : l'entraînement de ces modèles inclut des dépôts publics contenant des erreurs et des pratiques obsolètes, qui peuvent introduire des bogues, des injections ou des vulnérabilités impossibles à détecter en production. Les personnes ayant de l'expérience dans le développement open source savent que le code disponible dans un dépôt n'est pas exempt d'erreurs, et que la raison de publier un dépôt est de permettre à un plus grand nombre de personnes compétentes de voir, d'auditer et d'améliorer le code.

En conclusion, bien que nous reconnaissions que l'intelligence artificielle est une grande révolution technologique, notre position est celle d'une ingénierie délibérée. Chez Sea Dragon, nous évitons de générer du code avec de grands modèles de langage directement sur les projets de nos clients, préférant toujours livrer un code structuré, testé et revu directement par des professionnels qualifiés qui prennent des décisions techniques fondées sur la connaissance, une architecture solide et les bonnes pratiques du secteur. La fiabilité d'un logiciel ne se construit pas avec des raccourcis, mais avec de la transparence, du discernement technique et de la responsabilité humaine dans chaque ligne de code écrite.

Cela ne signifie pas que nous n'utilisons pas l'intelligence artificielle, bien au contraire : ce serait une erreur de nier qu'il s'agit d'outils utiles, et nous pouvons nous appuyer sur les grands modèles de langage pour développer des preuves de concept et pour déléguer des tâches non critiques, mais en aucun cas ils ne feront partie intégrante des projets que nous livrons à nos clients.