Priorité/Sévérité :
Moyenne
Plateforme :
Discourse b66fca70d0e3d12ef930398289fac5269cd240c7
Description :
Le plugin officiel "Automation" dispose d’un script "Trier les messages avec l’IA" (Triage posts using AI). Ce script a la possibilité de signaler des messages.
Le type de signalement généré par l’automatisation (ainsi que les actions associées) peut être configuré via le paramètre "Type de signalement" (Flag type) du script :
- "Ajouter le message à la file d’attente de révision" (Add post to review queue) : entraîne des signalements avec la raison "Nécessite une approbation" (Needs Approval)
- "Signaler comme spam" (Flag as spam) : entraîne des signalements avec la raison "Spam"
Étant donné que la fonctionnalité distincte de détection de spam par l’IA de Discourse fournit déjà une détection de spam de haute qualité, le script "Trier les messages avec l’IA" sera souvent utilisé pour des tâches sans rapport avec le spam. Dans ce cas, les options "Ajouter le message à la file d’attente de révision" seront les plus appropriées.
Lorsque le paramètre "Type de signalement" d’une automatisation est défini sur l’une des options "Ajouter le message à la file d’attente de révision", les éléments de révision générés par les signalements qu’il déclenche ne sont pas visibles par les modérateurs. La charge de révision de ces signalements incombera uniquement aux administrateurs du forum, même s’il s’agit d’une tâche de modération.
Étapes reproductibles :
- Connectez-vous à un forum avec un compte administrateur.
- Ouvrez la page d’administration Discourse AI > Personas (
/admin/plugins/discourse-ai/ai-personas) - Cliquez sur le bouton "+ Nouveau persona" (+ New persona).
La page de configuration du persona s’ouvrira. - Ajoutez un contenu arbitraire aux champs "Nom" (Name) et "Description" (Description) sur la page de configuration du persona.
- Définissez une invite (prompt) dans le champ "Invite système" (System prompt) qui sera appropriée pour déclencher l’automatisation sur un message de test. Par exemple :
On vous donnera un morceau de texte, et votre tâche est de déterminer s'il contient la chaîne de caractères `foobarbazquxpippoplutopaperino`. Si le message contient cette chaîne, répondez `true`. Si le message ne contient pas cette chaîne, répondez `false`. Votre réponse doit consister uniquement du texte `true` ou du texte `false`, et rien d'autre. - Sélectionnez un modèle dans le menu "Modèle de langage par défaut" (Default language model) (par exemple, "CDCK Hosted Small LLM").
- Cliquez sur le bouton "Soumettre" (Submit) en bas de la page.
- Si ce n’est pas déjà fait, activez le plugin intégré "Automation".
- Naviguez vers la page "Automatisations" (Automations) du plugin (
/admin/plugins/automation/automation). - Cliquez sur le bouton "+ Ajouter une automatisation" (+ Add automation).
La page "Sélectionner un script" (Select a script) s’ouvrira. - Ajoutez un nom arbitraire au champ "Nom" (Name) sur la page de configuration de l’automatisation.
- Sélectionnez le script "Trier les messages avec l’IA" (Triage posts using AI).
La page de configuration de l’automatisation s’ouvrira. - Sélectionnez "Message créé/modifié" (Post created/edited) dans le menu Quand/Quoi… > Déclencheur (When/What… > Trigger).
- Sélectionnez le persona que vous avez créé via les étapes précédentes dans le menu Options du script > Persona (Script options > Persona).
- Tapez
truedans le champ Options du script > Rechercher du texte (Script options > Search for text). - Cochez la case Options du script > Signaler le message (Script options > Flag post).
- Sélectionnez Ajouter le message à la file d’attente de révision (Add post to review queue) dans le menu Options du script > Type de signalement (Script options > Flag type).
- Facultativement, effectuez des ajustements aux autres paramètres de l’automatisation afin de faciliter le test.
- Cliquez sur le bouton "Mettre à jour l’automatisation" (Update automation) en bas de la page de configuration de l’automatisation.
Vous serez redirigé vers la page "Automatisations". - Réglez le commutateur "Activer l’automatisation" (Enable automation) pour l’automatisation nouvellement créée sur la position "activé" (on).
- Rédigez un message ou un MP qui déclenchera l’automatisation.
ⓘ Avec l’invite système d’exemple fournie ci-dessus, cela serait réalisé en incluant le textefoobarbazquxpippoplutopaperinodans le message. - Publiez le message ou le MP.
- En utilisant le compte administrateur, naviguez vers la file d’attente de révision (
/review).
L’automatisation a généré un signalement "Nécessite une approbation" pour le message de test. - Connectez-vous à un forum avec un compte non-administrateur qui dispose des permissions de modérateur.
- Naviguez vers la file d’attente de révision (
/review).
L’élément de révision généré par le signalement "Nécessite une approbation" de l’automatisation n’est pas visible pour le compte modérateur. Même si vous naviguez directement vers l’URL de l’élément de révision avec ce compte, vous n’obtiendrez qu’une page 404.
Contexte supplémentaire :
Le défaut ne se produit pas si je sélectionne plutôt Signaler comme spam et masquer le message (Flag as spam and hide post) dans le menu Options du script > Type de signalement.
Bien que cela offre une solution de contournement, cela entraîne une mauvaise expérience pour le personnel de modération dans le cas d’utilisation où le script est utilisé pour trier des messages pour des raisons autres que la détection de spam. Nous nous attendons à ce qu’un signalement ait une raison "Spam" uniquement dans le cas où il est suspecté d’être du spam.
Les signalements "Nécessite une approbation" générés par la fonctionnalité "Approuver sauf groupes autorisés" (Approve unless allowed groups) sont visibles par les modérateurs. Cela me porte à croire que le manque de visibilité des signalements provenant du script "Trier les messages avec l’IA" est causé par un bogue plutôt que par une conception intentionnelle (inexplicable).
Je ne crois pas qu’il y ait de raison valable de masquer ces éléments de révision aux modérateurs, mais s’il y en a une, ce comportement devrait au moins être rendu optionnel.
Je suis en mesure de reproduire le défaut sur le forum forum.arduino.cc.