Andrej Karpathy soutient l'introduction d'un nouveau terme lié à "l'ingénierie du contexte" dans le développement de logiciels d'IA utilisant des LLM. Et ce terme a longtemps semblé très nécessaire. Chaque fois que j'explique aux gens comment nous développons notre Nethermind AuditAgent, l'un des aspects clés, en plus d'utiliser l'expertise de domaine (sécurité web3) et d'utiliser les meilleurs modèles d'IA disponibles (d'OpenAI, Anthropic et Google), et des outils pour LLM, est précisément "l'ingénierie du contexte". Il y a parfois une expression "le contexte est roi", et c'est vraiment vrai. Les LLM, qu'ils soient énormes et avancés ou des LLM optimisés et petits, sont un outil puissant, mais comme tout outil, s'il est entre de mauvaises mains, vous obtiendrez des résultats beaucoup moins prometteurs que vous ne pourriez si vous travaillez avec eux correctement. Et la gestion (ou l'ingénierie) du contexte est en effet un domaine complexe et pas très bien décrit qui évolue constamment, et il a vraiment émergé comme une extension du concept d'ingénierie des prompts, qui a déjà quelques connotations négatives. Dans l'ensemble, Andrej a énuméré les principaux aspects liés à l'ingénierie du contexte (sur la deuxième capture d'écran), mais dans chaque tâche spécifique, les gens obtiennent d'excellents résultats en grande partie grâce à des essais et des erreurs, essayant chaque fois de manière monotone de sélectionner les bons éléments de contexte qui sont vraiment nécessaires à ce stade de la résolution de problèmes, en collectant des benchmarks pour chaque étape, en regardant les métriques, en divisant les ensembles de données en test, validation, et ainsi de suite. Que pensez-vous de "l'ingénierie du contexte"?
Andrej Karpathy
Andrej Karpathy25 juin 2025
+1 pour "l'ingénierie du contexte" plutôt que "l'ingénierie des invites". Les gens associent les invites à de courtes descriptions de tâches que vous donneriez à un LLM dans votre utilisation quotidienne. Alors que dans chaque application LLM de qualité industrielle, l'ingénierie du contexte est l'art et la science délicats de remplir la fenêtre de contexte avec juste les bonnes informations pour l'étape suivante. Science, car bien faire cela implique des descriptions de tâches et des explications, quelques exemples, RAG, des données connexes (possiblement multimodales), des outils, l'état et l'historique, la compression... Trop peu ou sous une forme incorrecte et le LLM n'a pas le bon contexte pour une performance optimale. Trop ou trop peu pertinent et les coûts du LLM pourraient augmenter et la performance pourrait diminuer. Bien faire cela est hautement non trivial. Et art, à cause de l'intuition directrice autour de la psychologie des LLM et des esprits des gens. En plus de l'ingénierie du contexte elle-même, une application LLM doit : - décomposer les problèmes de manière appropriée en flux de contrôle - remplir les fenêtres de contexte de manière appropriée - dispatcher des appels aux LLM du bon type et de la bonne capacité - gérer les flux UIUX de génération-vérification - beaucoup plus - garde-fous, sécurité, évaluations, parallélisme, préchargement, ... Ainsi, l'ingénierie du contexte n'est qu'un petit morceau d'une couche épaisse de logiciels non triviaux qui coordonne les appels individuels aux LLM (et bien plus) en applications LLM complètes. Le terme "wrapper ChatGPT" est fatigué et vraiment, vraiment faux.
500