Skip to content

Gestion des utilisateurs

Configurez l'accès des utilisateurs, l'authentification et les paramètres de collaboration.

Gestion des utilisateurs

Potato offre des options flexibles de gestion des utilisateurs, de l'accès ouvert à l'authentification restreinte.

Modes d'accès

Accès ouvert

Permettez à quiconque d'annoter sans connexion :

yaml
allow_all_users: true

Accès restreint

Limitez à des utilisateurs spécifiques :

yaml
allow_all_users: false
authorized_users:
  - alice@example.com
  - bob@example.com
  - researcher@university.edu

Authentification

Connexion par e-mail

Les utilisateurs saisissent leur e-mail pour accéder à l'interface d'annotation :

yaml
allow_all_users: false
authorized_users:
  - user1@example.com
  - user2@example.com

Intégration du crowdsourcing

Pour les travailleurs Prolific ou MTurk :

yaml
# Prolific integration
allow_all_users: true
prolific_integration: true
prolific_completion_code: "ABC123"
 
# Workers authenticated via URL parameter
# https://yourserver.com/?PROLIFIC_PID=xxx

Authentification par paramètre URL

Transmettez l'identifiant utilisateur via l'URL :

yaml
url_user_id_param: user_id
# Access via: http://localhost:8000/?user_id=annotator1

Rôles utilisateur

Annotateurs

Utilisateurs réguliers qui étiquettent les données :

yaml
authorized_users:
  - annotator1@example.com
  - annotator2@example.com

Administrateurs

Utilisateurs avec accès au tableau de bord administrateur :

yaml
admin_users:
  - admin@example.com
  - lead_researcher@university.edu

Les administrateurs peuvent :

  • Voir toutes les annotations
  • Suivre la progression
  • Exporter les données
  • Gérer les utilisateurs

Attribution des tâches

Instances par utilisateur

Limitez le nombre d'éléments annotés par chaque utilisateur :

yaml
instances_per_annotator: 100

Annotations par instance

Exigez plusieurs annotateurs par élément :

yaml
annotation_per_instance: 3

Paramètres de chevauchement

Contrôlez le chevauchement des annotations :

yaml
# Each instance gets exactly 2 annotations
annotation_per_instance: 2
 
# Assign same instances to specific users for IAA calculation
overlap_users:
  - user1@example.com
  - user2@example.com
overlap_percentage: 20  # 20% of instances shared

Contrôle de qualité

Vérifications d'attention

Insérez des questions test pour vérifier l'attention :

yaml
attention_checks:
  enabled: true
  frequency: 10  # Every 10 instances
  fail_threshold: 2  # Max failures before warning

Tests de qualification

Exigez la réussite d'un test avant l'annotation principale :

yaml
qualification:
  enabled: true
  test_file: qualification_test.json
  min_score: 80  # Minimum percentage to pass

Gestion des sessions

Délai d'expiration de session

Déconnexion automatique après inactivité :

yaml
session_timeout: 3600  # seconds (1 hour)

Sauvegarde de la progression

Les annotations sont sauvegardées automatiquement, mais vous pouvez configurer :

yaml
auto_save: true
auto_save_interval: 30  # seconds

Statistiques utilisateur

Suivez les performances des annotateurs :

yaml
track_user_stats: true

Métriques disponibles :

  • Annotations complétées
  • Temps par annotation
  • Accord avec les autres
  • Performance aux vérifications d'attention

Accès via le tableau de bord administrateur à /admin.

Flux de travail multi-annotateurs

Attribution en tourniquet

Distribuez les instances de manière équitable :

yaml
assignment_strategy: round_robin

Attribution par priorité

Attribuez en fonction de l'expertise de l'annotateur :

yaml
assignment_strategy: priority
user_priorities:
  expert@example.com: high
  novice@example.com: low

Paramètres de confidentialité

Anonymiser les utilisateurs

Masquez les identités des utilisateurs dans les exports :

yaml
anonymize_users: true

Conservation des données

Configurez la durée de conservation des données :

yaml
data_retention:
  annotations: 365  # days
  user_data: 90     # days

Exemple : Configuration d'une équipe de recherche

yaml
# Restricted to research team
allow_all_users: false
 
# Team members
authorized_users:
  - researcher1@university.edu
  - researcher2@university.edu
  - student1@university.edu
  - student2@university.edu
 
# Lead researcher is admin
admin_users:
  - researcher1@university.edu
 
# Each person annotates 200 items
instances_per_annotator: 200
 
# Each item gets 2 annotations for reliability
annotation_per_instance: 2
 
# Track performance
track_user_stats: true
 
# Auto-save every 30 seconds
auto_save: true
auto_save_interval: 30

Exemple : Configuration de crowdsourcing

yaml
# Open access for crowdworkers
allow_all_users: true
 
# Prolific integration
prolific_integration: true
prolific_completion_code: "POTATO2024"
 
# Limit per worker
instances_per_annotator: 50
 
# Quality control
attention_checks:
  enabled: true
  frequency: 10
 
# Multiple annotations per item
annotation_per_instance: 3

Pour aller plus loin

Pour les détails d'implémentation, voir la documentation source.