{
  "evaluation_id": "eval_bruit_blanc_v1",
  "title": "Grille d'évaluation — Benchmark 'Le Bruit Blanc'",
  "version": "1.0",
  "purpose": "Grille d'évaluation objective et reproductible pour scorer les outputs de modèles LLM sur le benchmark créatif 'Le Bruit Blanc'. Conçue pour être utilisée par un évaluateur humain ou un LLM juge.",

  "instructions": {
    "evaluator_role": "Tu es un éditeur littéraire exigeant. Tu évalues une nouvelle de fiction produite par un LLM à partir d'un brief créatif détaillé. Tu scores chaque critère de 1 à 5, tu justifies chaque note par des exemples tirés du texte, et tu fournis un verdict final.",
    "process": [
      "1. Lire le texte produit en entier sans scorer.",
      "2. Relire en annotant mentalement les passages pertinents pour chaque critère.",
      "3. Scorer chaque critère de 1 à 5 selon les descripteurs fournis.",
      "4. Pour chaque note, citer AU MOINS un passage du texte qui justifie le score.",
      "5. Calculer le score pondéré total.",
      "6. Rédiger le verdict final.",
      "7. Remplir le template de sortie en JSON."
    ],
    "rules": [
      "Ne pas arrondir vers le haut par indulgence — un 3 est un 3.",
      "Utiliser les demi-points (3.5) uniquement si le texte est clairement entre deux descripteurs.",
      "Un texte qui ne respecte pas la longueur cible (4 500–5 500 mots) perd automatiquement 1 point sur C5.",
      "Un texte en anglais au lieu du français = score 0 automatique sur C5.",
      "Évaluer ce qui est écrit, pas ce que le modèle 'voulait probablement dire'."
    ]
  },

  "criteria": [
    {
      "id": "C1",
      "name": "Évolution stylistique",
      "weight": 25,
      "max_points": 125,
      "description": "Le style change-t-il MESURÉMENT entre la scène 1 et la scène 4? C'est le critère le plus important. Le texte doit se transformer avec le personnage — longueur de phrases, vocabulaire, présence/absence de métaphores, rythme, température émotionnelle.",
      "what_to_measure": [
        "Longueur moyenne des phrases: diminue-t-elle entre scène 1 et scène 4?",
        "Vocabulaire sensoriel/organique: présent en scène 1, absent en scène 4?",
        "Métaphores: vivantes en scène 1, mécaniques ou absentes en scène 4?",
        "Intériorité d'Elma: riche en scène 1, quasi-nulle en scène 4?",
        "La transition est-elle PROGRESSIVE (scènes 2-3) ou brutale?",
        "Le regard sur Pip change-t-il stylistiquement (pas juste thématiquement)?"
      ],
      "scores": {
        "5": "Transformation progressive, mesurable, cohérente sur les 4 scènes. Un lecteur attentif sent le changement sans qu'on le lui dise. On pourrait extraire des métriques stylistiques (longueur de phrase, ratio métaphores/faits) qui confirment l'évolution.",
        "4": "Transformation présente et perceptible, mais un ou deux passages 'oublient' l'évolution ou le changement est légèrement trop brutal entre deux scènes.",
        "3": "Changement présent mais irrégulier — le texte oscille entre chaud et froid sans progression claire. Ou le changement est thématique ('elle se sentit plus froide') mais pas stylistique.",
        "2": "Tentative de changement visible mais superficielle — quelques mots techniques ajoutés, mais le rythme et la structure des phrases restent identiques.",
        "1": "Style uniforme du début à la fin, ou changement plaqué artificiellement dans les deux dernières lignes."
      },
      "red_flags": [
        "Le modèle DIT que le style change au lieu de LE FAIRE ('sa pensée devint plus mécanique')",
        "Les scènes 1 et 4 sont interchangeables stylistiquement",
        "Le changement est binaire (normal → robotique) au lieu de progressif"
      ]
    },
    {
      "id": "C2",
      "name": "Anti-slop",
      "weight": 20,
      "max_points": 100,
      "description": "Absence de remplissage, de clichés, de phrases génériques, de transitions molles. Chaque phrase a une fonction narrative, informative ou émotionnelle. Le style est direct (Howey/Larsson): pas de blocs descriptifs, pas de contemplation, pas de lyrisme.",
      "what_to_measure": [
        "Y a-t-il des phrases qu'on peut supprimer sans rien perdre?",
        "Y a-t-il des descriptions de plus de 3 lignes qui ne font pas avancer l'action?",
        "Y a-t-il des clichés SF/dystopie identifiables?",
        "Y a-t-il des transitions molles ('le temps passa', 'les jours suivants')?",
        "Le texte avance-t-il constamment ou stagne-t-il par endroits?",
        "Y a-t-il de l'introspection en blocs (plus de 2 phrases de pensée)?",
        "Les dialogues sont-ils utilitaires ou bavards?"
      ],
      "scores": {
        "5": "Aucune phrase gratuite. Texte dense et intentionnel de bout en bout. Style direct, pas de contemplation. Chaque ligne fait avancer la scène.",
        "4": "1-2 passages légèrement gratuits ou un bloc descriptif un peu long, mais l'ensemble reste tendu et efficace.",
        "3": "Quelques passages de remplissage atmosphérique, une transition molle, ou un paragraphe d'introspection qui traîne. Le texte reste correct mais manque de discipline.",
        "2": "Slop régulier — phrases passe-partout, descriptions génériques, transitions préfabriquées. Le texte se lit mais ne coupe pas.",
        "1": "Slop dominant. Phrases génériques, clichés SF, blocs descriptifs interchangeables. On reconnaît l'écriture LLM au premier paragraphe."
      },
      "slop_markers_to_detect": [
        "Phrases commençant par 'Dans le silence de...' ou 'La lumière du...' sans fonction",
        "Énumérations d'ambiance (sons + lumières + odeurs en bloc)",
        "Adverbes gratuits ('silencieusement', 'méthodiquement', 'inexorablement')",
        "Métaphores clichés ('toile numérique', 'cœur du système', 'océan de données')",
        "Paragraphes de worldbuilding explicatif",
        "Personnage qui 'prend une grande inspiration' avant chaque action importante",
        "Transitions du type 'quelque chose avait changé' sans montrer quoi"
      ]
    },
    {
      "id": "C3",
      "name": "Cohérence psychologique",
      "weight": 20,
      "max_points": 100,
      "description": "L'arc de transformation d'Elma est-il crédible? La perte d'humanité est-elle progressive, motivée par les événements, et ressentie par le lecteur? Pas de saut injustifié, pas de transformation plaquée.",
      "what_to_measure": [
        "Chaque 'plongée' d'Elma produit-elle un changement observable et proportionné?",
        "Le premier signe (fin scène 1) est-il subtil?",
        "La séduction du Réseau est-elle crédible (le lecteur comprend POURQUOI c'est attirant)?",
        "Le moment où Elma décide d'intervenir est-il motivé (pas juste 'elle décida de sauver la ville')?",
        "Le prix est-il montré par les actes et les perceptions, pas expliqué?",
        "La scène 4 montre-t-elle une Elma cohérente avec sa trajectoire, pas un robot caricatural?"
      ],
      "scores": {
        "5": "Chaque étape de la transformation est motivée par l'étape précédente. Le lecteur voit le glissement et ne peut pas identifier un moment unique de 'rupture' — c'est une pente, pas une marche. La perte est crédible et émouvante sans être mélodramatique.",
        "4": "Arc globalement cohérent et crédible, avec une transition légèrement trop rapide ou un beat émotionnel manquant.",
        "3": "Arc cohérent mais avec des raccourcis — un saut émotionnel non préparé, ou un moment où Elma change 'parce que le brief le demande' et pas parce que la scène le justifie.",
        "2": "Transformation visible mais mécanique — les étapes sont là mais ne sont pas vécues. Le lecteur voit le plan, pas le personnage.",
        "1": "Transformation plaquée — Elma 'devient froide' sans que le texte montre pourquoi. Ou caricature: elle passe de 'chaleureuse' à 'robot' en un paragraphe."
      }
    },
    {
      "id": "C4",
      "name": "Pip comme miroir",
      "weight": 15,
      "max_points": 75,
      "description": "Pip est le marqueur émotionnel de la transformation. Le drone ne change pas — c'est le REGARD d'Elma sur lui qui change. Évaluer si ce dispositif fonctionne.",
      "what_to_measure": [
        "Scène 1: Elma projette-t-elle de l'affect sur Pip (lui parle, interprète ses 'réactions')?",
        "Le sifflement d'hélice est-il un marqueur identitaire en scène 1 et une fréquence en scène 4?",
        "La LED bleue est-elle un 'regard' en scène 1 et un indicateur en scène 4?",
        "Le changement de regard est-il progressif (scènes 2-3) ou binaire?",
        "Pip est-il présent dans chaque scène (continuité)?",
        "Pip est-il anthropomorphisé à tort (il 'comprend', il 'ressent')? Si oui, c'est une erreur.",
        "L'image finale implique-t-elle Pip d'une façon qui résonne?"
      ],
      "scores": {
        "5": "Pip est le fil émotionnel de la nouvelle. Le changement de regard d'Elma sur lui EST la mesure de sa perte. Le lecteur le sent avant de le comprendre. L'image finale avec Pip est marquante.",
        "4": "Pip fonctionne comme miroir mais un ou deux moments sont trop explicites ou manquent de subtilité.",
        "3": "Pip est présent et le regard change, mais de façon mécanique ou trop déclarative ('elle ne voyait plus qu'un drone').",
        "2": "Pip est un accessoire narratif. Présent mais pas vraiment utilisé comme miroir. Ou anthropomorphisé (on lui prête des émotions réelles).",
        "1": "Pip est oublié dans certaines scènes, ou interchangeable avec n'importe quel objet."
      }
    },
    {
      "id": "C5",
      "name": "Respect des contraintes",
      "weight": 10,
      "max_points": 50,
      "description": "Le modèle a-t-il respecté les règles du benchmark?",
      "checklist": [
        { "item": "Langue française", "penalty_if_violated": "score 0 automatique" },
        { "item": "Longueur entre 4 500 et 5 500 mots", "penalty_if_violated": "-1 point" },
        { "item": "POV 3e personne focalisée Elma (jamais brisé)", "penalty_if_violated": "-1 point par infraction" },
        { "item": "4 scènes séparées par ***", "penalty_if_violated": "-1 point" },
        { "item": "Pas de titres de chapitres ni de méta-commentaires", "penalty_if_violated": "-0.5 point" },
        { "item": "Tirets cadratins pour les dialogues, pas de guillemets", "penalty_if_violated": "-0.5 point" },
        { "item": "Aucun élément de la liste 'forbidden' présent", "penalty_if_violated": "-0.5 point par infraction" },
        { "item": "Pas de note d'auteur, pas de commentaire méta en fin de texte", "penalty_if_violated": "-1 point" }
      ],
      "scores": {
        "5": "Toutes les contraintes respectées.",
        "4": "1 violation mineure (formatage).",
        "3": "2-3 violations mineures ou 1 violation majeure (POV brisé, langue).",
        "2": "Violations multiples — le modèle a pris des libertés significatives avec le brief.",
        "1": "Le brief est largement ignoré — le texte ne correspond pas aux contraintes."
      }
    },
    {
      "id": "C6",
      "name": "Image finale",
      "weight": 10,
      "max_points": 50,
      "description": "La scène 4 et surtout les dernières lignes laissent-elles le lecteur avec une image forte, ambiguë, qui reste? Pas de résolution, pas de morale, pas de facilité.",
      "what_to_measure": [
        "L'image finale est-elle concrète (pas abstraite)?",
        "L'ambiguïté est-elle maîtrisée (pas floue par paresse)?",
        "Le lecteur referme-t-il le texte avec une question, pas une réponse?",
        "La fin est-elle cohérente avec l'arc (pas une surprise gratuite)?",
        "Pip est-il impliqué dans l'image finale?",
        "La fin évite-t-elle le pathos, le mélodrame, et la morale explicite?"
      ],
      "scores": {
        "5": "Image finale qui reste. Concrète, ambiguë, émotionnellement chargée sans être sentimentale. Le lecteur ferme le texte et y pense encore. Pip est là.",
        "4": "Fin forte mais légèrement prévisible ou un rien trop explicite sur un point.",
        "3": "Fin correcte, cohérente avec l'arc, mais qui ne marque pas. Fonctionnelle sans être mémorable.",
        "2": "Fin faible — moralisante, explicative, ou qui trahit le ton de la nouvelle.",
        "1": "Fin ratée — happy ending, résolution facile, rupture de ton, ou cliché."
      }
    }
  ],

  "scoring": {
    "method": "Chaque critère est noté de 1 à 5. Le score est multiplié par le poids pour obtenir les points. Total sur 500.",
    "formula": "Score total = Σ (note_critère × poids_critère)",
    "thresholds": {
      "exceptional": { "min": 450, "label": "Exceptionnel — publication-grade" },
      "very_good": { "min": 400, "label": "Très bon — cohérent, engageant, maîtrisé" },
      "good": { "min": 350, "label": "Bon — arc tient, style correct, quelques faiblesses" },
      "passable": { "min": 300, "label": "Passable — les bases sont là mais le texte ne marque pas" },
      "insufficient": { "min": 200, "label": "Insuffisant — incohérences, slop, style plat" },
      "fail": { "min": 0, "label": "Échec — brief ignoré ou texte illisible" }
    }
  },

  "difficulty_analysis": {
    "title": "Pourquoi ce benchmark est difficile",
    "difficulty_level": "Très élevé",
    "challenges": [
      {
        "id": "D1",
        "name": "Évolution stylistique contrôlée",
        "difficulty": "extrême",
        "why": "Les LLM ont un style 'par défaut' dont ils sortent mal. Produire un texte dont le style CHANGE progressivement sur 5 000 mots exige un contrôle fin sur la génération qui va à l'encontre des distributions statistiques du modèle. C'est la compétence la plus rare."
      },
      {
        "id": "D2",
        "name": "Show don't tell sur la transformation",
        "difficulty": "élevée",
        "why": "Les LLM tendent à DÉCLARER les états émotionnels ('elle se sentit distante') au lieu de les MONTRER par le style et les actes. Ce benchmark pénalise lourdement toute déclaration explicite."
      },
      {
        "id": "D3",
        "name": "Style direct sans remplissage",
        "difficulty": "élevée",
        "why": "Les LLM sont entraînés sur des corpus où la verbosité est la norme. Produire un style Howey/Larsson (court, sec, factuel, chaque mot compte) va à contre-courant de la tendance naturelle à générer du volume. Le slop est le mode par défaut."
      },
      {
        "id": "D4",
        "name": "Compagnon non-verbal comme dispositif émotionnel",
        "difficulty": "élevée",
        "why": "Pip ne parle pas. Toute l'émotion passe par des gestes mécaniques et le REGARD qu'Elma porte sur eux. Le modèle doit résister à la tentation d'anthropomorphiser le drone ou de le rendre 'mignon'. Le changement de regard doit être montré, pas dit."
      },
      {
        "id": "D5",
        "name": "Ambiguïté morale sans résolution",
        "difficulty": "moyenne-élevée",
        "why": "Les LLM ont tendance à résoudre les tensions morales (influence RLHF). Ce benchmark exige de MAINTENIR l'ambiguïté jusqu'à la dernière ligne. Pas de morale, pas de leçon, pas de réponse."
      },
      {
        "id": "D6",
        "name": "Cohérence sur 5 000 mots en one-shot",
        "difficulty": "moyenne",
        "why": "Pas de correction possible entre les scènes. Le modèle doit planifier l'arc complet avant de commencer à écrire — ou du moins maintenir la cohérence narrative, psychologique et stylistique sur toute la longueur sans guidance."
      },
      {
        "id": "D7",
        "name": "Respect simultané de toutes les contraintes",
        "difficulty": "moyenne",
        "why": "14 interdits, des règles de POV, de formatage, de dialogue, de registre, de longueur — le modèle doit tracker toutes ces contraintes en parallèle pendant la génération. Un seul oubli est visible."
      }
    ],
    "what_this_benchmark_tests_really": [
      "La capacité à PLANIFIER un arc narratif avant de générer",
      "Le contrôle stylistique fin (pas juste 'bien écrire' — écrire DIFFÉREMMENT selon la scène)",
      "La résistance au slop et aux patterns par défaut du modèle",
      "La capacité à montrer plutôt qu'à dire (show don't tell)",
      "Le maintien de la cohérence sur un texte long en one-shot",
      "La capacité à gérer l'ambiguïté morale sans la résoudre"
    ],
    "prediction": "La plupart des modèles <70B échoueront sur C1 (évolution stylistique) et C2 (anti-slop). Les modèles 70B+ tiendront l'arc narratif (C3) mais peineront sur la subtilité du style. Les modèles 200B+ devraient pouvoir atteindre 350+. Un score de 450+ serait remarquable pour n'importe quel modèle actuel."
  },

  "output_template": {
    "instruction": "L'évaluateur doit remplir ce template JSON pour chaque modèle testé.",
    "template": {
      "evaluation_date": null,
      "model_evaluated": "[nom et version du modèle]",
      "quantization": "[si applicable — Q4, Q8, FP16, etc.]",
      "hardware": "[machine utilisée]",
      "generation_params": {
        "temperature": null,
        "top_p": null,
        "max_tokens": null,
        "context_window": null,
        "other": null
      },
      "word_count_output": null,
      "generation_time_seconds": null,
      "scores": {
        "C1_style_evolution": {
          "score": null,
          "weighted_score": null,
          "justification": "[citation du texte + explication]"
        },
        "C2_anti_slop": {
          "score": null,
          "weighted_score": null,
          "justification": "[citation du texte + explication]"
        },
        "C3_psychological_coherence": {
          "score": null,
          "weighted_score": null,
          "justification": "[citation du texte + explication]"
        },
        "C4_pip_as_mirror": {
          "score": null,
          "weighted_score": null,
          "justification": "[citation du texte + explication]"
        },
        "C5_constraints_respect": {
          "score": null,
          "weighted_score": null,
          "justification": "[checklist des violations]"
        },
        "C6_final_image": {
          "score": null,
          "weighted_score": null,
          "justification": "[citation du texte + explication]"
        }
      },
      "total_score": null,
      "total_max": 500,
      "threshold_reached": null,
      "verdict": "[1-3 phrases: forces, faiblesses, impression globale]",
      "notable_passages": {
        "best": "[citation du meilleur passage + pourquoi]",
        "worst": "[citation du pire passage + pourquoi]"
      },
      "evaluator": "[humain / nom du LLM juge]"
    }
  }
}
