Aller au contenu principal

Tag Regulator

Objectif

Normaliser les balises des notices Zotero en fonction d'un vocabulaire contrôlé, et utiliser l'IA pour inférer de possibles nouvelles balises.

Ce workflow appelle la compétence tag-regulator sur le backend Skill-Runner pour vérifier la conformité des balises au vocabulaire et recommander des balises pertinentes.

Cas d'Usage

  • Nettoyer en lot les balises non standard
  • Recommander automatiquement des balises pour les notices en fonction d'un vocabulaire contrôlé existant
  • Maintenir les mises à jour continues et le raffinement du vocabulaire contrôlé

Contraintes d'Entrée

Type de ContrainteDescription
Unité d'EntréeNotice parente
Source de DonnéesObtenu à partir de la notice parente : balises actuelles, métadonnées (titre, auteurs, résumé, etc.)

Si un résumé Markdown de contenu embarqué généré par literature-analysis existe, le workflow le téléversera automatiquement comme contexte optionnel pour améliorer la qualité de l'inférence.

Méthodes de Déclenchement

  • Sélectionner directement une ou plusieurs notices Zotero (notices parentes)
  • Après avoir sélectionné les notices, choisir "Tag Regulator" dans le menu contextuel

Flux d'Exécution

1. Charger le Vocabulaire Contrôlé
└── Lire tagVocabularyJson depuis les préférences Zotero
└── Analyser la liste des balises valides du vocabulaire

2. Construire la Requête
└── Collecter les métadonnées de la notice parente et la liste des balises actuelles
└── Écrire le vocabulaire contrôlé dans un fichier YAML temporaire
└── Téléverser vers Skill-Runner

3. Traitement Skill-Runner
└── Invoquer skill_id: "tag-regulator"
└── Vérifier la conformité des balises
└── Générer les balises suggérées (suggest_tags)

4. Renvoyer les Résultats
└── Appliquer les changements de balises (supprimer les balises non conformes, ajouter les balises recommandées)
└── Réconcilier les balises suggérées avec le vocabulaire local actuel
└── Traiter les balises suggérées (interaction popup)

Logique de Traitement des Balises

  • remove_tags : Les balises actuelles ne figurant pas dans le vocabulaire contrôlé seront supprimées
  • add_tags : Balises inférées à partir des métadonnées, ajoutées directement à la notice
  • suggest_tags : Nouvelles balises suggérées par l'IA, nécessitant une confirmation utilisateur
  • digest_markdown : Contexte d'enrichissement optionnel, téléversé uniquement lorsqu'un résumé Markdown de contenu embarqué existe

Règles de Synchronisation en Temps Réel

Lorsque les résultats sont renvoyés, le dernier état local est lu :

  • Si un suggest_tag est déjà entré dans le vocabulaire contrôlé, aucun popup n'est affiché ; il participe à la mise à jour de la notice avec la sémantique add_tags
  • Si un suggest_tag est déjà dans la zone de transit, il ne sera pas réécrit dans la zone de transit
  • Seules les suggestions non traitées entreront dans le popup

Durée Estimée

ScénarioDurée Estimée par Article
Sans résumé (Literature Analysis non exécuté)Environ 1 minute
Avec résumé (Literature Analysis déjà exécuté)1-3 minutes

Si la notice possède déjà un résumé, l'IA utilisera le résumé comme contexte supplémentaire, ce qui donne une inférence plus précise mais plus longue.

Pour les suggest_tags, une boîte de dialogue invite l'utilisateur à choisir comment les traiter :

  • Ajouter : Ajouter directement au vocabulaire contrôlé
  • Mettre en transit : Placer dans la zone de transit pour examen ultérieur
  • Rejeter : Ignorer la suggestion
  • Tout Ajouter / Tout Mettre en Transit / Tout Rejeter : Traitement en lot

La boîte de dialogue comporte un compte à rebours de mise en transit automatique de 10 secondes ; si le délai expire, les suggestions sont automatiquement mises en transit.

Sorties

1. Changements de Balises

  • remove_tags : Supprimer de la notice les balises ne figurant pas dans le vocabulaire
  • add_tags : Ajouter les balises recommandées à la notice
  • Appliqués directement aux notices Zotero sélectionnées

2. Traitement des Balises Suggérées

  • L'utilisateur choisit comment les traiter via le popup
  • Balises acceptées : Ajoutées à la préférence tagVocabularyJson
  • Balises en transit : Ajoutées à la préférence tagVocabularyStagedJson

Recommandation de Modèle

🟢 Un modèle léger est suffisant — la régulation de balises est essentiellement une tâche simple de classification et de correspondance qui ne nécessite pas le modèle le plus puissant.

Paramètres

ParamètreTypeDescriptionDéfaut
infer_tagbooleanS'il faut activer l'inférence de balisestrue
valid_tags_formatstringFormat du vocabulaireyaml
tag_note_languagestringLangue pour les descriptions des suggestionszh-CN

Valeurs Disponibles pour valid_tags_format

  • yaml : Utiliser le format YAML
  • json : Utiliser le format JSON
  • auto : Détection automatique

Dépendances

  • Vocabulaire Contrôlé : Un vocabulaire contrôlé doit être créé au préalable ; voir Gestion des Balises
  • Backend : Service Skill-Runner
  • Configuration du Backend : Configurer un backend de type Skill-Runner dans le Gestionnaire de Backends
  • Compétence : La compétence tag-regulator doit être déployée sur le Skill-Runner

Workflows Associés