33 points par ashbyash 2025-08-04 | Aucun commentaire pour le moment. | Partager sur WhatsApp

Le vibe coding a besoin de context engineering

1. Qu’est-ce que le vibe coding ?

  • Une approche où l’IA produit du code réellement exécutable à partir de simples prompts en langage naturel.
  • Même sans connaissances en programmation ni compréhension de l’architecture, il est possible d’obtenir rapidement du « code qui fonctionne » avec un minimum de prompts, notamment pour le prototypage.
  • Avantages : forte productivité au démarrage, feedback rapide, utilisation intuitive.
  • Limites :
    • Dans les projets complexes, le développement en équipe et les environnements réels de déploiement, l’« intuition » seule ne permet pas de garder le contrôle.
    • Avec le temps, la dette technique (défauts de conception, oublis dans les contrôles d’autorisation, confusion dans le naming, difficulté de gestion, etc.) s’accumule, ce qui rend la maintenance et l’extension très fragiles.
      • (Texte original : « L’intuition ne passe pas à l’échelle, mais la structure, si. »)
  • Y Combinator, dans « How To Get The Most Out Of Vibe Coding », souligne aussi qu’il faut « transposer tel quel le processus de développement professionnel dans le LLM ».

2. Du prompt engineering au context engineering

  • Au début, le simple fait de « bien rédiger ses prompts » (Prompt Engineering) donnait déjà certains résultats, mais à mesure que la taille des projets et la complexité du travail augmentent, l’importance de l’« entrée/gestion du contexte » devient centrale.
  • Échec de contexte (Context Failure) : le LLM produit des réponses hors contexte ou passe à côté d’informations importantes → baisse de productivité et de précision.
  • Stan Polu, fondateur de Dust : il affirme que « la condition la plus importante pour qu’une IA réussisse une tâche = un contexte riche et pertinent ».
  • Qu’est-ce que le context engineering ?
    • Un ensemble de processus d’ingénierie visant à gérer l’information de manière systématique pour qu’une IA/LLM puisse travailler au bon moment, avec les bonnes informations, dans le bon format, et avec le bon contexte.
    • Si le prompt engineering ressemble à une note griffonnée sur une ligne, le context engineering se rapproche de la construction d’un système bien structuré, avec documents, règles, exemples et consignes associés.

3. Les 4 axes clés du context engineering

  1. Rédaction du contexte (Context Writing) :
    • Enregistrer et organiser l’information selon l’objectif dans un « dépôt » cohérent (Write)
  2. Sélection du contexte (Context Retrieval) :
    • Fournir uniquement les informations et le contexte les plus adaptés selon l’état d’avancement du travail (Select/Retrieve)
  3. Compression du contexte (Context Compression) :
    • Omettre ou résumer les informations inutiles afin d’optimiser l’usage des tokens (Compress)
  4. Segmentation du contexte (Context Segmentation) :
    • Séparer le contexte par tâche, rôle ou sous-processus afin de le gérer efficacement (Segment)
  • Ces quatre axes constituent la base d’une « programmation fondée sur le contexte » pour l’IA.

4. Cas pratiques : OpenAI vs Claude Code

  • OpenAI :
    • Gère le « contexte » à partir de spécifications explicites et de documentation.
    • Des critères clairs et des spécifications en Markdown deviennent à la fois les principaux livrables et la base de la collaboration.
    • Grâce à un « grader model » de vérification des réponses et à la deliberative alignment, il devient possible d’intérioriser règles et politiques comme une sorte de « mémoire musculaire du modèle ».
    • (« L’époque où la spécification devient du code », « Specification-Driven Approach »)
  • Claude Code (Anthropic) :
    • Utilise CLAUDE.md, le Model Context Protocol, des dossiers de commandes (.claude/commands), etc., pour automatiser la gestion du contexte.
    • Permet de rappeler facilement le contexte détaillé propre aux tâches répétitives, fonctions ou projets, et de prendre en charge un travail parallèle avec différentes instances de LLM (multi-agents).
    • Le point clé n’est pas l’« optimisation des prompts », mais la « curation du contexte » (context curation).

5. Extension académique/théorique (article arXiv, 12-Factor Agents)

  • Article arXiv « A Survey of Context Engineering for Large Language Models »
    • Définit le context engineering non comme une simple conception de prompts, mais comme un champ d’étude relevant de l’optimisation scientifique de l’information et de la gestion des systèmes.
    • Composants clés :
      • recherche/génération de contexte (Retrieval/Generation),
      • traitement du contexte (Processing : gestion de longueur, auto-affinage, structuration, etc.),
      • gestion du contexte (Management : hiérarchie mémoire, compression, optimisation du calcul, etc.).
    • Exemples d’implémentation majeurs :
      • Retrieval-Augmented Generation (RAG),
      • mémoire à long terme (systèmes de mémoire),
      • intégration d’outils externes (Function Calling, etc.),
      • systèmes multi-agents (prise en charge du traitement parallèle, etc.).
  • HumanLayer « 12 Factor Agents »
    • Réinterprète pour la gestion du contexte IA les principes du logiciel de type 12-factor, avec des idées comme « Own Your Context Window ».

6. La nature du context engineering et ses perspectives

  • Découverte de l’asymétrie des LLM :
    • Ils excellent dans la compréhension et le traitement de contextes complexes, mais restent limités lorsqu’il s’agit de produire un livrable final très détaillé.
    • Autrement dit, le « codage improvisé » (Vibe Coding) peut convenir aux démos et aux projets de courte durée, mais sans gestion systématique (context engineering), le risque d’échec reste élevé dans les développements durables ou à grande échelle.
  • Valeur essentielle :
    1. Réduction systématique des erreurs
      (Systematic Error Reduction : réduire de manière systématique les erreurs et imprécisions, avec répétition des vérifications/corrections selon des critères définis)
    2. Scalabilité et cohérence
      (Scalability and Consistency : la qualité ne baisse pas même quand l’échelle augmente)
    3. Systèmes d’auto-correction et de validation fondés sur l’IA
      (Self-Correcting Systems, boucle de validation automatisée)
    4. Évolution du rôle des développeurs
      (passer du codage improvisé à un rôle de concepteur de systèmes/architectures, centré sur la documentation et la conception de consignes avec une vision de long terme)
  • Conclusion :
    • À l’ère des LLM, le véritable acteur clé de la collaboration avec l’IA n’est pas le développeur qui sait écrire un « prompt brillant », mais celui qui sait concevoir et curatorier un « contexte parfait ».
    • Le context engineering est la clé qui permet à l’IA d’évoluer d’un simple générateur de code vers un véritable « partenaire de conception logicielle » fondé sur le contexte.

7. Points clés

  • Le vibe coding fondé sur l’intuition montre clairement ses limites.
  • Sans context engineering systématique, l’usage des LLM reste limité.
  • La capacité à produire des spécifications claires, de la documentation et de la curation devient une compétence essentielle pour les développeurs de demain.
  • À l’ère de l’IA, les développeurs doivent passer du rôle de « poseur de questions qui obtient des réponses » (Prompt Engineer) à celui d’« orchestrateur qui conçoit l’ensemble du contexte » (Context Engineer).

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.