1. Livres & vidéos
  2. L’Intelligence Artificielle au service des métiers de l'IT
  3. Le prompt engineering au service des métiers de l’IT
Extrait - L’Intelligence Artificielle au service des métiers de l'IT Comprendre et maîtriser la révolution IA
Extraits du livre
L’Intelligence Artificielle au service des métiers de l'IT Comprendre et maîtriser la révolution IA
1 avis
Revenir à la page d'achat du livre

Le prompt engineering au service des métiers de l’IT

Introduction

images/04RI01.png

Au cœur de la révolution des modèles de langage se trouve une compétence clé, encore trop souvent négligée : le prompt engineering.

Bien plus qu’une simple technique de formulation, il s’agit d’une discipline à part entière, déterminante pour exploiter pleinement le potentiel des IA génératives dans les métiers de l’IT.

Ce chapitre vous plongera dans les arcanes de cette science émergente, en démystifiant ses principes et en vous dotant des méthodes pour concevoir des prompts précis, efficaces et adaptés à vos besoins opérationnels.

Nous aborderons non seulement les fondements théoriques de l’interaction homme-machine via les prompts, mais aussi leur application concrète dans des scénarios IT tels que la génération de code, documentation technique, automatisation de tâches, et bien plus encore.

Vous découvrirez comment la structure d’un prompt influence directement la pertinence des réponses d’un LLM, transformant une requête vague en une instruction actionnable. Nous explorerons également la variabilité des réponses selon les modèles (GPT-4, Claude, Gemini, etc.) et comment adapter votre approche en fonction des spécificités de chacun.

À travers des cas pratiques...

Introduction à l’ingénierie des prompts : comprendre les prompts et ce qui les influence

Le prompt engineering, également appelé « ingénierie du prompt » en français, désigne cette discipline clé dans l’utilisation des modèles de langage d’intelligence artificielle tels que Mistral AI, Llama, GPT et bien d’autres encore.

Il s’agit de l’élaboration et de la formulation soigneuse de questions ou d’instructions,  que l’on appelle des « prompts », dans le but d’exploiter pleinement les capacités des modèles d’IA. L’objectif est d’obtenir des réponses précises, pertinentes ou créatives, en guidant ces systèmes grâce à des instructions bien pensées.

images/04RI02.png

Il s’agit d’une combinaison subtile entre la créativité nécessaire pour imaginer des instructions claires et adaptées et la compréhension technique des mécanismes qui sous-tendent les modèles de langage.

Nous le verrons à travers ce chapitre, un prompt peut prendre diverses formes. Il peut s’agir d’une simple question, d’une consigne détaillée ou encore d’une série de mots soigneusement choisis. Dans tous les cas, il agit comme un déclencheur, capable d’initier un processus de réflexion ou une tâche spécifique par l’IA.

Le prompt peut être considéré comme un outil permettant d’accéder aux capacités des modèles de langage. Bien qu’il puisse paraître simple en apparence, il est en réalité puissant. Cet outil permet aux intelligences artificielles de générer des réponses précises, d’élaborer des solutions complexes, de créer des visuels ou des textes sur commande.

Pour les professionnels de l’informatique et de l’intelligence artificielle, apprendre à concevoir des prompts efficaces est devenu un art essentiel ; c’est une évolution du métier que nous devons exiger.

La courbe Google Trends présentée sur la capture d’écran ci-dessous le reflète d’ailleurs assez bien, atteignant un pic sur le terme « prompt...

Règles de base pour concevoir des prompts efficaces

L’intelligence artificielle est un outil puissant, mais son efficacité dépend grandement de la clarté et de la précision des instructions qu’elle reçoit. Utiliser l’IA sans cadre, c’est comme piloter un avion sans instruments de navigation : on risque de se perdre et de ne pas atteindre sa destination, tout du moins difficilement.

Nous vous proposons ici-bas une boîte à outils (Framework) de base permettant de constituer des prompts efficaces.

Que doit contenir votre prompt ?

La méthode REACTOR a été conçue en ce sens. Cette méthode fournit un cadre structuré pour interagir avec l’IA et optimiser ses performances, garantissant des résultats pertinents et exploitables. En appliquant chaque étape de cette méthode, correspondant à une lettre de l’acronyme, vous transformerez vos requêtes vagues en instructions précises, permettant à l’IA de comprendre vos besoins et de générer des réponses à la hauteur de vos attentes.

R pour Rôle : donnez une identité à l’IA

La première étape consiste à attribuer un rôle précis à l’IA. Cela permet de contextualiser sa réponse et d’orienter son style d’écriture. Au lieu de simplement...

Exploration des différentes catégories de prompts

Maintenant que vous avez une méthode entre les mains, voyons comment classer les prompts en diverses catégories, chacune ayant ses propres caractéristiques et domaines d’application. Voici quelques-unes des catégories les plus courantes :

images/04RI14.png

1. Prompt instructif : guider l’utilisateur avec précision

Son objectif : fournir des instructions claires et concises pour guider l’utilisateur.

Exemple 1 : « Connectez-vous au serveur SSH (Secure Shell (SSH) est un protocole de communication sécurisé. Ce protocole de connexion exige un échange de clés de chiffrement en début de connexion) en utilisant la commande ssh utilisateur@adresse_ip. Ensuite, naviguez vers le répertoire /var/www/html en utilisant la commande cd /var/www/html. Enfin, listez les fichiers présents avec la commande ls -l. »

Exemple 2 : « Écris un script Python qui lit un fichier CSV contenant des dates et des températures, calcule la moyenne des températures par mois et génère un nouveau fichier CSV avec les résultats. »

Réponse de GPT-4o :

images/04RI15.png

À noter que le code produit est accompagné d’une explication en retour.

Ce script commence par importer le module pandas, une bibliothèque puissante pour la manipulation de données en Python. Ensuite, il définit une fonction calculer_moyenne_temperature_par_mois qui prend en entrée le chemin d’un fichier CSV contenant les dates et les températures, ainsi que le chemin du fichier CSV de sortie où les résultats seront enregistrés. Cette fonction lit le fichier d’entrée, convertit les dates pour en extraire le mois, calcule la moyenne des températures pour chaque mois, puis écrit ces moyennes dans le fichier de sortie spécifié. Enfin, un exemple d’appel de la fonction est fourni, démontrant son utilisation pour générer un fichier contenant la moyenne des températures par mois.

2. Prompt questions : susciter la réflexion et l’exploration

Son objectif : encourager la réflexion et l’exploration de concepts par le questionnement. 

Exemple : « Quelle est la différence...

Méthodes de création de prompts

1. Priming : l’amorce

Le priming, ou amorce, consiste à fournir au modèle de langage une introduction ou un contexte général avant de poser une question ou de demander une tâche spécifique. Cette méthode est particulièrement utile pour orienter le modèle vers une certaine façon de penser ou pour influencer le ton, le style ou la structure de la réponse attendue.

Pour les professionnels de l’IT, le priming peut être utilisé pour s’assurer que le modèle comprend le cadre technique ou les attentes spécifiques liées à une tâche, comme la rédaction de scripts, la documentation technique ou la configuration de systèmes. En amorçant correctement le modèle, les utilisateurs peuvent réduire les risques de réponses ambiguës ou incomplètes et garantir que celles-ci s’alignent avec leurs besoins.

Cette approche est essentielle lorsqu’il s’agit de guider le modèle sur des tâches complexes nécessitant des réponses structurées ou adaptées à un domaine particulier. 

Premier exemple de prompt avec amorce :

« Tu es un expert en sécurité informatique. Ton rôle est de fournir des recommandations claires et précises pour sécuriser une API RESTful. Décris les étapes essentielles à suivre pour garantir la sécurité de cette API. »

Réponse de Gemini 1.5 Flash :

En tant qu’expert en sécurité informatique, voici les étapes essentielles pour sécuriser une API RESTful :

  • Authentification et Autorisation :

    • Implémentez OAuth 2.0 pour garantir une authentification sécurisée.

    • Assurez-vous que les utilisateurs n’ont accès qu’aux ressources pour lesquelles ils ont des autorisations spécifiques.

  • Validation des Entrées :

    • Vérifiez et nettoyez toutes les données envoyées à l’API pour éviter les attaques par injection (SQL, XSS, etc.).

  • Communication Sécurisée :

    • Utilisez HTTPS pour chiffrer toutes les communications entre le client et le serveur.

    • Implémentez des en-têtes de sécurité tels que Strict-Transport-Security....

Stockez votre créativité : les bibliothèques de prompts

L’expérience acquise dans l’art du prompt engineering constitue un actif stratégique pour les entreprises et tout professionnel de l’IT travaillant avec des modèles de langage(LLM).

Au fil des projets, vos formulations deviendront plus efficaces alliant combinaisons précises de mots, structuration et précision du contexte qui se transformeront en un patrimoine intellectuel à répéter et à valoriser. Les bibliothèques de prompts émergent alors comme la solution optimale pour pérenniser cette expertise.

Bien plus qu’un simple dépôt de textes, une bibliothèque de prompts bien conçue incarnera l’histoire de vos interactions réussies avec l’IA.

Chaque entrée capture non seulement une formulation efficace, mais aussi le contexte de son utilisation, ses variantes testées, et les enseignements tirés des itérations successives. Cette capitalisation transformera progressivement votre approche en une méthodologie reproductible et des pratiques industrialisées dans vos équipes.

La construction d’une bibliothèque pertinente repose sur plusieurs principes fondamentaux.

Elle devra tout d’abord être adaptée à vos domaines d’application (développement, data analysis, cybersécurité...).

Des métadonnées devront en compléter le contenu avec l’objectif du prompt, le modèle utilisé, la difficulté résolue. Ceci afin d‘en faciliter la réutilisation future. 

Le versioning des prompts assure quant à lui la traçabilité des améliorations successives.

L’utilité opérationnelle de ces bibliothèques dépasse largement le simple gain de productivité. Elles deviennent :

  • un accélérateur pour l’onboarding de nouveaux collaborateurs ;

  • un référentiel qualité pour les revues de code IA-assisté ;

  • un vivier d’innovation par recombinaison de patterns éprouvés.

1. L’importance des bibliothèques de prompts

Les bibliothèques de prompts jouent un rôle essentiel pour les professionnels de l’IT, car elles...

Évaluation de la performance des prompts

En tant que professionnel de l’IT, l’évaluation de la performance des prompts est une étape essentielle pour garantir la qualité et l’efficacité des interactions entre un utilisateur et un système d’intelligence artificielle. Les prompts, en tant qu’instructions ou requêtes adressées à un modèle, doivent être conçus pour maximiser la pertinence et la précision des réponses générées. Afin de mesurer objectivement ces performances, plusieurs métriques d’évaluation sont utilisées. Cette section explore les principales métriques employées et leur rôle dans l’amélioration des systèmes d’IA.

Précision

La précision est une métrique fondamentale qui mesure la proportion de réponses correctes parmi l’ensemble des réponses générées par le système. Elle se calcule selon la formule suivante :

Précision = (Nombre de réponses correctes) / (Nombre total de réponses)

Cette métrique est particulièrement utile pour évaluer la capacité d’un système à éviter les erreurs. Par exemple, un système ayant une précision élevée fournit rarement des réponses incorrectes, ce qui est crucial pour des applications critiques comme les diagnostics médicaux ou les systèmes de sécurité. 

Cependant, la précision seule peut être insuffisante dans les cas où le rappel est également...

Conclusion : le prompt engineering, compétence ou profession ?

La question de savoir si le prompt engineering est une compétence ou une profession est ouverte et, à la date de création de cet ouvrage, les avis divergent. De mon point de vue, le prompt engineering ne constitue pas une profession à part entière, mais plutôt une compétence transversale indispensable dans de nombreux métiers, en particulier dans les professions liées à l’informatique. Il s’agit de l’art de concevoir des prompts efficaces pour des modèles génératifs tels que ChatGPT, Bard, Copilot ou tout autre LLM que vous pourriez utiliser. Une compétence qui, comme nous l’avons vu, repose sur des méthodologies, des frameworks comme REACTOR et des techniques telles que le priming, le Zero-shot ou le Few-shot.

À l’instar des outils bureautiques comme Word et Excel, utilisés quotidiennement par des millions de professionnels, la maîtrise de la rédaction de prompts deviendra une compétence commune, essentielle à de nombreuses tâches. Cependant, cela ne signifie pas pour autant l’émergence d’une profession distincte dédiée uniquement à la formulation de prompts. L’idée d’un Prompt Engineer généraliste, rémunéré principalement...

Annexe : bibliothèque de prompts

Les modèles de prompts offrent un cadre structuré qui pourra être personnalisé pour des requêtes spécifiques. Cette approche est particulièrement précieuse pour les professionnels de l’informatique qui peuvent ainsi standardiser et automatiser les interactions avec les modèles d’IA pour une variété d’applications, allant de la programmation à l’analyse de données.

images/04RI20.png

L’utilisation de templates de prompts assure une cohérence lors de multiples requêtes auprès d’un modèle, minimisant les variations et les erreurs potentielles dans les interactions. De plus, ces templates facilitent le traitement automatisé de données en masse, permettant aux professionnels de l’informatique de gagner du temps et d’augmenter leur productivité. En fin de compte, l’adoption de modèles de prompts réduit l’ambiguïté et améliore l’efficacité des résultats obtenus à partir de modèles de langage.

Traduction automatisée

Contexte : développement de logiciel

Exemple de prompt : « Traduis le texte suivant de l’anglais vers le français : {texte}. »

Explication : un développeur peut utiliser ce template pour traduire rapidement la documentation technique ou les chaînes de caractères d’une interface utilisateur.

Génération de code

Contexte : développement de logiciel

Exemple de prompt : « Génère un code {langage} pour accomplir la tâche suivante : {description_de_la_tâche}. »

Explication : ce modèle permet aux développeurs de spécifier une tâche, comme la connexion à une base de données et d’obtenir un snippet de code initial pour cette tâche dans le langage de programmation de leur choix.

Analyse de logs

Contexte : administration système et sécurité

Exemple de prompt : « Identifie les erreurs dans les logs suivants et donne une brève explication pour chacune : {logs}. »

Explication : les administrateurs système et les ingénieurs de sécurité peuvent utiliser ce modèle...