Skip to content

Gestion des utilisateurs

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

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.