P

Self Refine : Définition et Exemples

Le Self Refine est une technique où un modèle de langage génère une réponse initiale, puis l'évalue et l'améliore de manière itérative sans intervention humaine, produisant ainsi un résultat de qualité supérieure.

Définition complète

Le Self Refine est une approche d'amélioration itérative dans laquelle un grand modèle de langage (LLM) joue simultanément le rôle de générateur, de critique et de réviseur. Au lieu de se contenter d'une seule réponse, le modèle produit d'abord un brouillon initial, puis l'analyse pour identifier ses faiblesses, et enfin le reformule en tenant compte de ses propres retours. Ce cycle peut se répéter plusieurs fois jusqu'à atteindre un niveau de qualité satisfaisant.

Cette technique s'inspire directement du processus d'écriture humain : on rédige rarement un texte parfait du premier jet. On relit, on identifie les passages faibles, on reformule, on restructure. Le Self Refine reproduit ce mécanisme cognitif en le formalisant dans un prompt structuré. La clé réside dans la capacité du modèle à prendre du recul sur sa propre production et à appliquer des critères d'évaluation explicites.

Concrètement, un prompt Self Refine se décompose en trois phases distinctes : la génération initiale, le feedback (où le modèle critique sa propre sortie selon des critères définis), et la révision (où il produit une version améliorée en intégrant ce feedback). Chaque phase peut être gérée dans un prompt séparé ou enchaînée dans un même échange. L'avantage majeur est qu'aucun modèle supplémentaire ni donnée d'entraînement additionnelle n'est nécessaire.

Le Self Refine a été formalisé dans un article de recherche de 2023 par Madaan et al. et a démontré des améliorations significatives sur des tâches variées comme la génération de code, le raisonnement mathématique, la rédaction et le dialogue. Cette technique est devenue un pilier du prompt engineering avancé et se combine naturellement avec d'autres approches comme le Chain of Thought ou les systèmes multi-agents.

Étymologie

Le terme "Self Refine" vient de l'anglais et signifie littéralement "auto-affiner" ou "se raffiner soi-même". Il a été popularisé par l'article académique "Self-Refine: Iterative Refinement with Self-Feedback" publié en 2023 par Aman Madaan et ses collaborateurs de Carnegie Mellon University. Le choix du terme souligne l'autonomie du processus : c'est le modèle lui-même qui se corrige, sans supervision externe.

Exemples concrets

Améliorer la qualité d'un email professionnel

Étape 1 : Rédige un email professionnel pour demander un report de deadline à un client.

Étape 2 : Maintenant, critique cet email selon ces critères : ton (professionnel mais empathique), clarté de la demande, proposition de solution alternative, longueur appropriée. Liste chaque point faible.

Étape 3 : Réécris l'email en corrigeant chaque point faible identifié.

Optimiser du code Python

Génère une fonction Python qui trie une liste de dictionnaires par plusieurs clés.

Maintenant, évalue ce code selon : lisibilité, performance, gestion des cas limites et respect des conventions PEP 8. Identifie chaque problème.

Produis une version améliorée qui corrige tous les problèmes identifiés, en expliquant chaque modification.

Affiner une argumentation dans un essai

Rédige un paragraphe argumentatif sur l'impact de l'IA générative dans l'éducation.

Évalue ce paragraphe : la thèse est-elle claire ? Les arguments sont-ils étayés par des exemples concrets ? Y a-t-il des biais ou des généralisations abusives ? Le paragraphe anticipe-t-il les contre-arguments ?

Réécris le paragraphe en intégrant toutes les améliorations suggérées.

Usage pratique

Pour appliquer le Self Refine, structurez votre prompt en trois étapes explicites : génération, critique avec des critères précis, puis révision. Définissez toujours les critères d'évaluation à l'avance (clarté, pertinence, ton, exhaustivité) pour guider efficacement la phase de feedback. Vous pouvez répéter le cycle critique-révision deux à trois fois pour des tâches complexes, mais au-delà, les gains marginaux diminuent généralement.

Concepts liés

Chain of ThoughtReflexionConstitutional AICritique prompting

FAQ

Quelle est la différence entre Self Refine et demander simplement « améliore ta réponse » ?
Le Self Refine structure le processus d'amélioration avec des critères d'évaluation explicites et une phase de critique formelle avant la révision. Demander vaguement d'améliorer une réponse ne donne pas au modèle de direction claire, ce qui produit souvent des changements superficiels. Avec le Self Refine, le modèle sait exactement quoi évaluer et quoi corriger, ce qui mène à des améliorations ciblées et mesurables.
Combien d'itérations de Self Refine faut-il faire pour obtenir un bon résultat ?
En pratique, une à deux itérations suffisent pour la plupart des tâches. La première itération capture les améliorations les plus significatives, la deuxième affine les détails. Au-delà de trois itérations, le modèle tend à faire des modifications mineures voire à dégrader certains aspects de la réponse. Pour des tâches critiques comme la génération de code, deux itérations avec des critères différents à chaque fois donnent généralement les meilleurs résultats.
Le Self Refine fonctionne-t-il avec tous les modèles de langage ?
Le Self Refine nécessite un modèle suffisamment capable pour évaluer de manière critique sa propre production. Les modèles les plus performants (Claude, GPT-4, Gemini) excellent dans cet exercice car ils peuvent identifier des nuances subtiles dans leurs réponses. Les modèles plus petits peuvent bénéficier de la technique, mais la qualité du feedback interne sera limitée par leurs capacités. Dans ce cas, il est parfois plus efficace d'utiliser un modèle plus puissant uniquement pour la phase de critique.

Voir aussi

Recevez de nouveaux prompts chaque semaine

Rejoignez notre newsletter.