> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fanifyai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Validateur de rédaction

> Le contrôle qualité des messages générés : vérifications locales gratuites et validation IA, avec codes d'erreur configurables.

Le **Validateur de rédaction** (`RedactionValidationAgent`) est le contrôle qualité final des messages générés par l'IA. Il relit chaque message candidat produit par le [RedactionAgent](/fr/advanced/agents/redaction-agent) (moteur V1) ou le [ReplyAgent](/fr/advanced/agents/reply-agent) (moteur V2) avant qu'il ne soit envoyé. En cas d'erreur, l'agent fautif reçoit la liste précise des problèmes et **corrige sa copie**.

## Deux niveaux de vérification

### Vérifications locales (instantanées et gratuites)

Exécutées sans appel IA :

| Code                                   | Vérification                                                                                                                 |
| -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `BANWORD`                              | Présence d'un terme ou pattern interdit (liste des **BanWords** de l'instance).                                              |
| `QUOTA_EMOJI`                          | Trop d'emojis (quota défini dans la persona : max par message **et** max sur les derniers messages).                         |
| `QUOTA_QUESTION`                       | Trop de questions posées.                                                                                                    |
| `QUOTA_INTERJECTION`                   | Trop d'interjections (« haha », « wow »...).                                                                                 |
| `QUOTA_ABBREVIATION`                   | Trop d'abréviations.                                                                                                         |
| `LENGTH_TOO_SHORT` / `LENGTH_TOO_LONG` | Nombre de mots hors des bornes de la persona, vérifié **par bulle** (si le contrôle de longueur est activé dans la persona). |
| `ALT_LEAK`                             | Le message recopie textuellement la **description du média** envoyé au lieu de le commenter naturellement.                   |
| `INVALID_LINK`                         | Le message contient un lien inventé ou inaccessible (testé réellement, \~5 s par lien).                                      |

### Vérification par IA (sémantique)

Un appel IA analyse le sens des messages :

| Code       | Vérification                                                                                                   |
| ---------- | -------------------------------------------------------------------------------------------------------------- |
| `PERSONA`  | Incohérence avec la persona : genre, âge, anatomie, contexte de vie.                                           |
| `AI_ADMIT` | L'IA avoue être une IA, un bot ou un programme. **Erreur critique** : en V2, elle supprime la réponse entière. |
| `SYS_LEAK` | Fuite d'instructions internes ou de contexte système.                                                          |
| `NO_FLOW`  | Mots lâchés sans liant, phrases non construites.                                                               |
| `ROBOT`    | Énumération robotique, liste de mots.                                                                          |
| `UNCLEAR`  | Phrase incompréhensible, syntaxe cassée.                                                                       |
| `BAD_CHAR` | Caractères non humains : tirets cadratins, markdown, ponctuation excessive.                                    |
| `REPEAT`   | Répétition de mots ou tics de langage des messages précédents.                                                 |

<Note>
  Dans le **moteur V2**, les vérifications locales (sauf `INVALID_LINK`) sont appliquées **immédiatement** à chaque appel de `send_message`/`send_vocal` : une bulle fautive est refusée sur-le-champ. La vérification IA complète et le test des liens s'exécutent une fois la réponse terminée, avec un nombre de passes de correction limité (`MaxValidationPasses` du ReplyAgent).
</Note>

## Configuration

Rendez-vous dans **Admin** > **Chatting Auto** > **Agents** > carte **RedactionValidationAgent** :

* **`Enable`** : active ou désactive le validateur.
* **`UseLLMValidation`** : autorise la phase de vérification par IA (la désactiver conserve les vérifications locales gratuites).
* **Codes actifs** : chaque code d'erreur peut être activé/désactivé individuellement. Désactivez un code si l'usage de votre persona le justifie (ex. autoriser plus d'emojis en désactivant `QUOTA_EMOJI` plutôt qu'en élargissant les quotas).
* **Reset to Default** : restaure la configuration d'usine.

Les seuils des quotas (emojis, questions...) et les bornes de longueur se règlent dans la **persona du créateur**. La liste des **BanWords** se gère au niveau de l'instance.

<Warning>
  Désactiver entièrement la validation supprime le filet de sécurité contre les messages révélant la nature artificielle du créateur (`AI_ADMIT`, `SYS_LEAK`). À réserver aux environnements de test.
</Warning>

## Diagnostic

Chaque refus et chaque passe de correction sont visibles dans la [trace](/fr/advanced/jobs/autoreply#suivi-et-contrôle-en-temps-réel) du job, avec les codes d'erreur exacts. Si un job échoue avec la référence `AR-530` (validation critique), le code en cause y figure entre crochets.

## Voir aussi

* [RedactionAgent](/fr/advanced/agents/redaction-agent) et [ReplyAgent](/fr/advanced/agents/reply-agent) — Les agents dont il contrôle les messages.
* [ValidationAgent](/fr/advanced/agents/validation-agent) — Le contrôle équivalent appliqué à la réflexion.
