Skip to main content

Réduire le prompt d’une fonctionnalité de 42 à 12 ACU

Parcourez une session réelle qui a consommé 3x les ACU prévus sur une tâche de pagination, identifiez trois causes profondes et réécrivez le prompt pour économiser 70 %.
AuthorCognition
CategoryOptimisation de Devin
FeaturesAvancé
1

La session à l’origine de l’enquête

Un développeur a demandé à Devin d’ajouter une pagination à un endpoint d’API. Le prompt était court et semblait raisonnable :La session s’est conclue avec succès — les tests ont réussi, la pull request (PR) semblait correcte. Mais elle a consommé 42 ACU pour ce qui aurait dû être une tâche de ~12 ACU. Trois fois et demie le coût attendu, pour une fonctionnalité qui avait déjà un modèle fonctionnel ailleurs dans la base de code.Voici comment comprendre ce qui s’est mal passé et s’assurer que cela ne se reproduise plus.
2

Premiers pas avec Session Insights

Chaque session terminée bénéficie d’une analyse gratuite Session Insights. Cliquez sur l’icône ampoule dans la barre supérieure de toute session terminée pour l’ouvrir — aucune session Advanced requise.Pour cette session de pagination, Session Insights a signalé :
  • Issue Timeline — Des marques rouges aux 14ᵉ et 28ᵉ minutes, où Devin a complètement changé d’approche.
  • Issues Detected — « Incorrect codebase assumption: built pagination from scratch when src/utils/paginate.ts already existed » et « Wrong implementation type: used cursor-based pagination, but tests expect offset-based. »
  • Improved Prompt — Une version réécrite avec le contexte manquant renseigné, prête à être copiée.
  • ACU Usage — 42 ACU, signalés comme disproportionnés par rapport au périmètre de la tâche.
Dans de nombreux cas, cela suffit. Copiez le prompt amélioré, démarrez une nouvelle session et comparez. Mais si vous voulez une ventilation complète des coûts phase par phase, allez plus loin.
3

Obtenez un découpage phase par phase avec Advanced Devin

Cliquez sur Investigate with Devin dans le panneau Session Insights pour lancer une session Advanced Devin préchargée avec l’intégralité de l’historique de la session d’origine. Vous pouvez aussi démarrer manuellement une nouvelle session Advanced : sélectionnez la session dans la liste déroulante des sessions et décrivez ce que vous voulez analyser :Advanced Devin passe en revue chaque action de la session d’origine et identifie où Devin a passé un temps anormalement long ou adopté des approches inefficaces :
Analyse de session | Tâche : Ajouter la pagination à GET /api/users
Réel : 42 ACUs | Attendu : ~12 ACUs

Inefficacités identifiées :

1. Exploration inutile — la phase d'investigation a duré anormalement longtemps
   Devin a exploré 23 fichiers à la recherche d'un utilitaire de pagination.
   Il a construit la pagination de zéro, puis a découvert
   src/utils/paginate.ts et a dû tout refactoriser.
   Correctif : Mentionner les utilitaires existants dans le prompt.

2. Mauvaise approche — toute l'implémentation a dû être réécrite
   Devin a implémenté une pagination par curseur. Les tests ont échoué
   car l'API utilise une pagination par décalage. Il a réécrit toute
   l'implémentation de zéro.
   Correctif : Spécifier « offset-based » dans le prompt.

3. Problème d'environnement — échecs d'installation répétés
   npm install a échoué deux fois en raison d'une configuration .npmrc manquante
   pour le registre privé. Devin a réessayé avec des solutions de contournement.
   Correctif : Ajouter la configuration du registre à la configuration du dépôt.
Trois causes principales, toutes évitables avec un meilleur prompt ou une meilleure configuration du dépôt.
4

Réécrire le prompt et comparer

Vous pouvez demander à Advanced Devin de démarrer une nouvelle session avec l’invite améliorée directement — inutile de copier-coller. L’analyse produit une invite structurée qui inclut exactement le contexte qui manquait :Comparez les deux invites côte à côte :
OriginalOptimized
Pagination typeNot specified”offset-based”
Existing utilityNot mentionedsrc/utils/paginate.ts
Reference patternNone”same as GET /api/projects”
Response shapeNot specifiedExplicit schema
Testing criteria”Run the tests”Specific edge cases
ACU result42 ACUs~12 ACUs
L’invite optimisée élimine les trois causes profondes. Devin évite l’exploration de 23 fichiers, choisit le bon type de pagination du premier coup et suit un modèle éprouvé.
5

Transformez vos constats en correctifs permanents

Une simple réécriture de prompt permet d’économiser des ACU pour une session. Transformer ces constats en configuration permanente permet d’économiser des ACU sur toutes les sessions futures.Ajoutez ce contexte récurrent à Knowledge. L’analyse de la pagination a révélé deux informations dont Devin a régulièrement besoin — le type de pagination et l’emplacement de l’utilitaire. Ajoutez-les comme entrées Knowledge afin que chaque session démarre automatiquement avec ce contexte :
  • “Tous les endpoints d’API utilisent une pagination basée sur un offset. L’utilitaire partagé se trouve dans src/utils/paginate.ts. Voir GET /api/projects pour l’implémentation de référence.”
  • “Lancez les tests avec npm test. Lancez les vérifications de types avec npm run typecheck.”
Corrigez les problèmes d’espace de travail dans Repo Setup. Les 3 ACU gaspillés à cause des échecs de npm install étaient dus à l’absence d’un fichier de configuration .npmrc pour le registre privé. L’ajout de la configuration du registre dans la configuration du dépôt empêche toutes les sessions futures de rencontrer cette erreur.Analysez par lots pour trouver des schémas récurrents à l’échelle de l’équipe. Si plusieurs développeurs observent des sessions à forte consommation d’ACU, analysez-en plusieurs à la fois pour trouver les causes profondes communes :