Comment Optimiser les LLMs en Maîtrisant l’Ingénierie du Contexte
Comment Améliorer Considerablement les Modèles Linguistiques de Grande Envergure (LLMs) grâce à l'Ingénierie de Contexte L'ingénierie de contexte est la science qui consiste à fournir aux modèles linguistiques de grande envergure (LLMs) le bon contexte pour maximiser leur performance. Au-delà de la création d'un prompt système, cette approche engage une réflexion plus large sur toutes les données qui peuvent être injectées pour optimiser leurs capacités. Définition Avant d'entrer dans les détails, il est crucial de définir ce qu'est l'ingénierie de contexte. Cette discipline englobe la décision sur les données à apporter à un LLM. Il s'agit non seulement du prompt système que vous écrivez, mais aussi des autres éléments comme : Les exemples de tâches précédentes Des documents externes ou une base de données pertinente Des outils interactifs pour l'acquisition de nouvelles informations Contrairement au terme "ingénierie de prompt" qui sous-entend uniquement le réglage du prompt système, l'ingénierie de contexte considère l'intégralité des informations fournies à un LLM. Motivation L'idée de cet article émerge d'une réflexion provocante de Andrej Karpathy, un influent chercheur en IA. Karpathy a souligné l'importance de l'ingénierie de prompt, mais la notion se limite souvent à l'ajustement du prompt initial, ignorant d'autres aspects cruciaux du contexte. Techniques d'Ingénierie de Contexte Prompt en Zero-shot Le prompt en zero-shot est la méthode de base où le LLM effectue une tâche sans exemple préalable. Par exemple, on peut demander à un LLM de classifiers un texte en positif ou négatif sans lui donner des exemples spécifiques. ```plaintext Vous êtes un expert en classification de textes et vous devez classifier les textes en classe A (sentiment positif) ou classe B (sentiment négatif). Classez ce texto : {texte} ``` Cette méthode fonctionne bien pour les tâches simples, mais elle a ses limites pour des tâches plus complexes. Prompt en Few-shot Le few-shot prompting est une étape supplémentaire qui fournit au LLM des exemples de la tâche à accomplir. Cela renforce sa capacité à produire des résultats précis. ```plaintext Vous êtes un expert en classification de textes et vous devez classifier les textes en classe A (sentiment positif) ou classe B (sentiment négatif). {Texte 1} -> Classe A {Texte 2} -> Classe B Classez ce texto : {texte} ``` Les exemples sont encapsulés dans des balises <exemple> et servent de guide pour l'LLM. Cette méthode est analogue à l'apprentissage humain : si vous expliquez une tâche complexe avec des exemples, la performance du LLM est généralement meilleure. Few-shot Dynamique Le few-shot dynamique est une évolution du few-shot traditionnel. Plutôt que des exemples statiques, on sélectionne dynamiquement les exemples les plus pertinents pour chaque tâche. Par exemple, si vous avez 200 textes avec leurs labels, vous pouvez effectuer une recherche de similarité vectorielle entre le nouveau texte et ces exemples, puis ne retenir que les plus proches. ```plaintext Vous êtes un expert en classification de textes et vous devez classifier les textes en classe A (sentiment positif) ou classe B (sentiment négatif). {Texte similaire 1} -> Classe A {Texte similaire 2} -> Classe B Classez ce texto : {texte nouveau} ``` Cette technique permet de contextualiser mieux la tâche pour l'LLM, en mettant en avant les exemples les plus révélateurs. Augmentation de la Connaissance par Récupération (RAG) La RAG (Retrieval-Augmented Generation) est une technique reconnue pour enrichir les connaissances des LLMs. Imaginez un utilisateur qui pose une question basée sur des milliers de documents dans une base de données. Bien que des LLMs comme Llama 4 Scout puissent traiter jusqu'à 10 millions de tokens, il est inefficace de fournir la totalité de la base de données. La RAG agit comme suit : Recherche vectorielle : Trouver les documents les plus similaires à la question de l'utilisateur. Sélection des documents : Ne fournir que les documents les plus pertinents. Génération de réponse : Poser la question au LLM accompagnée de ces documents. Cette méthode garantit que le LLM se concentre sur les informations essentielles, augmentant ainsi sa performance. Outils (MCP) Fournir des outils aux LLMs est également un aspect crucial de l'ingénierie de contexte. Avec le protocole de contexte des modèles (MCP), introduit par Anthropic, les LLMs peuvent interagir avec des outils pour réaliser des actions. Par exemple, pour obtenir la météo en temps réel, on peut donner à l'LLM un outil tel que : python @outil def obtenir_meteo(ville): # Code pour récupérer les conditions météorologiques actuelles d'une ville return meteo En dotant l'LLM de cet outil, il peut appeler une fonction externe et fournir une réponse précise. D'autres exemples incluent des fonctions pour effectuer des recherches sur le web, des calculs mathématiques, ou des intégrations API. Points à Considérer Utilisation de la Longueur de Contexte La longueur de contexte des LLMs est un paramètre important. À partir du mois de juillet 2025, la plupart des modèles frontières peuvent traiter plus de 100 000 tokens d'entrée. Cette grande capacité offre des options multiples, mais il faut faire un compromis entre : Quantité d'exemples : Plus de données peuvent aider l'LLM à comprendre des nuances. Pertinence des données : Trop de données peuvent saturer l'LLM et diminue son efficacité. L'équilibrage se fait souvent par des tests empiriques. Par exemple, pour une tâche de classification, on mesure l'exactitude en fonction de différents prompts. Si le contexte est trop volumineux, il est possible de diviser la tâche en plusieurs prompts. Un premier prompt peut résumer un texte, suivi d'un second pour classifier ce résumé. Pourriture de Contexte La semaine dernière, j'ai découvert un article fascinant sur la "pourriture" du contexte. Il a été démontré que l'augmentation excessive de la longueur du contexte peut diminuer la performance des LLMs, même si la difficulté de la tâche reste constante. En d'autres termes : Fournir des informations non pertinentes à un LLM diminue sa capacité à réussir la tâche, même si celle-ci ne devient pas plus complexe. Il faut donc s'assurer que seules les données pertinentes soient incluses. Un contexte encombré par des informations inutiles nuira à la précision et à la vitesse de traitement du modèle. Conclusion L'ingénierie de contexte est une discipline essentielle pour optimiser les performances des LLMs. Elle englobe des techniques comme le zero-shot et le few-shot prompting, la RAG, et l'intégration d'outils externes (MCP). Chaque technique a ses avantages, mais il est crucial de veiller à ce que le contexte reste pertinent et concis. Trop d'informations non ciblées peuvent entraîner une baisse de performance, comme illustré par le phénomène de pourriture de contexte. Évaluation Professionnelle et Profil de l'Entreprise L'approche de l'ingénierie de contexte, notamment la RAG et les prompts few-shot dynamiques, est hautement saluée par les experts de l'industrie. Ces techniques permettent aux LLMs de réaliser des tâches de manière plus précise et adaptative, ce qui est crucial pour des applications complexes dans des domaines variés tels que la classification de textes, la génération créative, et l'interaction conversationnelle avancée. L'entreprise Anthropic, pionnière du protocole MCP, continu de développer des frameworks permettant une intégration fluide de ces outils, contribuant ainsi à rendre l'IA plus performante et utile. Pour des ressources supplémentaires et des mises à jour régulières, je vous invite à me suivre sur LinkedIn, X/Twitter, Medium et Threads.