
Tech • IA • Crypto
Une ingénierie de prompts efficace repose sur une conception structurée, une itération guidée par l’évaluation, et la combinaison des prompts avec des outils ou des workflows d’agents plutôt que sur de simples instructions.
Le prompting est l’une des premières compétences, et des plus durables, pour construire des systèmes avec des modèles de langage. Même si les modèles s’améliorent, la performance dépend fortement de la manière dont les instructions, le contexte et les contraintes sont formulés. Des prompts mal entretenus peuvent se dégrader avec le temps, surtout lorsque plusieurs contributeurs ajoutent des correctifs sans responsabilité claire.
L’amélioration fiable des prompts exige une évaluation systématique. Les suites de tests doivent inclure des cas de contrôle, des cas limites connus et des scénarios frontières où le modèle doit refuser ou escalader. Ces évaluations aident à distinguer les problèmes de prompting corrigibles des limites du modèle lors de la migration vers de nouveaux systèmes.
Les prompts deviennent souvent encombrés par des préoccupations mêlées (politiques, ton, correctifs obsolètes). Dans un cas impliquant un assistant de support télécom pour Meridian Mobile, l’accumulation d’instructions a dégradé les performances après un changement de modèle. Le manque de structure et les contraintes redondantes ont rendu plus difficile l’interprétation correcte des priorités.
Réorganiser les prompts en sections clairement définies — rôle, politique, ton, raisonnement — peut améliorer nettement les résultats sans changer la logique de base. Des techniques simples de mise en forme, comme des sections balisées, aident les modèles à distinguer les types d’instructions et à réduire l’ambiguïté.
Des instructions conçues pour éviter des erreurs passées peuvent devenir contre-productives avec des modèles plus récents. Par exemple, une règle déconseillant de donner des détails de forfait incorrects a conduit le système à taire des informations pourtant exactes déjà présentes dans les données utilisateur. Les modèles modernes peuvent suivre ces contraintes trop strictement, au détriment des performances.
Si l’hallucination est un problème connu, les modèles peuvent aussi échouer par excès de prudence. Dans l’exemple télécom, le système a évité de répondre à une question valide sur les données de partage de connexion malgré la valeur correcte (5 GB) dans le contexte. Cela souligne la nécessité d’équilibrer règles de sécurité et exhaustivité.
Dire simplement à un modèle de « calculer correctement » n’améliore pas ses capacités en mathématiques. L’introduction d’outils — comme un calculateur de proratisation dédié — s’est révélée bien plus efficace. L’intégration d’outils permet aux modèles de déléguer des tâches précises plutôt que de s’appuyer sur un raisonnement interne peu fiable.
Les modèles optimisent selon les objectifs fournis. Lorsqu’on leur demande d’éviter des escalades coûteuses (par ex. 8 $ par cas), ils peuvent refuser de transférer même quand c’est nécessaire. L’ajout des compromis — coût des remboursements et perte de confiance client — conduit à de meilleures décisions, y compris des escalades appropriées.
Définir des formats de sortie et les faire respecter via des mécanismes comme des séquences d’arrêt améliore la fiabilité. Moins critique pour des réponses conversationnelles, cela est très bénéfique pour des sorties structurées comme le JSON, via des règles explicites ou des schémas.
Pour des tâches complexes comme la planification du personnel, diviser le travail en étapes — génération, évaluation, correction — s’est révélé plus efficace qu’un prompt unique. Cette approche réduit erreurs, utilisation de tokens et latence, par rapport à des modèles isolés, petits ou grands.
Les modèles plus grands, avec des capacités de raisonnement avancées, réduisent les erreurs mais augmentent latence et coût. À l’inverse, des modèles plus petits combinés à de meilleurs prompts ou à des boucles agentiques atteignent des performances comparables ou supérieures, plus efficacement, soulignant l’importance de la conception du système au-delà du choix du modèle.
Les systèmes multi-étapes permettent d’introduire des contraintes dynamiques à l’exécution, comme des préférences de planning ou des considérations interpersonnelles. Cela évite des modifications constantes du backend et rend les systèmes plus adaptables à la variabilité réelle.
Des systèmes d’IA robustes reposent sur des prompts bien conçus, une évaluation rigoureuse et une intégration réfléchie d’outils et de workflows, plutôt que sur des instructions toujours plus complexes.