Skillia
← Retour aux articles

Toutes les fois où j'ai sur-engineeré pour rien

J'ai construit des agents complexes pour des tâches qu'un simple prompt aurait résolues. Voici comment j'ai appris à choisir.

Ma première réaction quand j'ai découvert les agents IA : "Je vais tout automatiser."

Génération d'emails ? Agent. Résumé de documents ? Agent. Reformulation de texte ? Agent.

J'ai passé des semaines à construire des systèmes avec des boucles, des outils, de l'orchestration. Des trucs "propres" avec gestion d'erreurs et retry automatique.

Et puis j'ai regardé les coûts. Et la latence. Et la complexité de maintenance.

La plupart de ces agents auraient pu être un prompt de 10 lignes.

Le piège de la sophistication

Le truc qui m'a eu : les agents, c'est cool. Ça fait "vrai" ingénieur IA. Un prompt simple, ça fait amateur.

Sauf que le but c'est de résoudre un problème, pas d'impressionner.

Chip Huyen résume bien : "C'est facile de créer quelque chose de cool avec les LLMs, mais très difficile de le rendre prêt pour la production."

Mes agents "cools" plantaient en prod. Mes prompts "basiques" tournaient sans problème.

Les vrais coûts d'un agent

Un agent, c'est une boucle. Observer, réfléchir, agir, répéter.

Chaque itération = un appel LLM. Parfois plusieurs.

Pour une tâche simple comme générer un email de relance, mon agent faisait :

  1. Analyser le contexte (1 appel)
  2. Décider du ton (1 appel)
  3. Générer un brouillon (1 appel)
  4. Vérifier la qualité (1 appel)
  5. Finaliser (1 appel)

5 appels LLM pour un email. Latence totale : 8 secondes. Coût : 5x plus qu'un prompt direct.

Un prompt bien écrit faisait la même chose en 1 appel, 1.5 seconde.

Quand j'aurais dû utiliser un prompt

Avec le recul, la règle est simple.

Prompt simple si :

  • Tu sais exactement ce que tu veux en sortie
  • Le premier essai est généralement bon
  • Pas besoin d'accéder à des fichiers ou APIs

Exemples : traduction, reformulation, génération de texte formaté, résumé, extraction d'infos d'un document qu'on fournit.

Ethan Mollick dit que "pour la plupart des usages, avoir une conversation avec l'IA représente 80% de la création de bons prompts." Pas besoin de sur-ingéniérer.

Quand l'agent se justifie vraiment

Il y a des cas où l'agent est la bonne réponse.

Agent si :

  • La tâche est floue ou exploratoire
  • Tu as besoin d'interagir avec l'environnement (fichiers, code, APIs)
  • Les erreurs font partie du process et l'agent doit s'adapter

Exemples : déboguer du code, développer une feature complète, analyser un codebase inconnu.

La différence clé ? L'incertitude. Si tu sais pas combien d'étapes ça va prendre, ni quel chemin emprunter, un agent peut explorer. Si le chemin est clair, un prompt suffit.

Mon test en 30 secondes

Avant de construire quoi que ce soit, je me pose 4 questions :

  1. Je peux décrire précisément le résultat attendu ? → Oui = prompt
  2. La tâche nécessite plusieurs étapes imprévisibles ? → Oui = agent
  3. J'ai besoin d'outils externes (fichiers, APIs) ? → Oui = agent
  4. Les erreurs sont probables et doivent être gérées ? → Oui = agent

Si je réponds "non" aux questions 2, 3 et 4 : prompt. Sinon : agent.

Simple, mais ça m'aurait évité des semaines de travail inutile.


Le bon outil pour le bon problème.

Un prompt pour ce qui est prévisible. Un agent pour ce qui demande de l'exploration. Savoir faire la différence, c'est ce qui fait qu'une solution tient en prod.


Sources :