Skip to content
هذه الصفحة غير متوفرة بلغتك بعد. يتم عرض النسخة الإنجليزية.

Dashboard di Amministrazione

Monitora il progresso delle annotazioni, gestisci gli annotatori e configura le impostazioni in tempo reale.

Dashboard di Amministrazione

Potato 2.0 include una dashboard di amministrazione completa per monitorare il progresso delle annotazioni, tenere traccia delle prestazioni degli annotatori e gestire la configurazione del compito in tempo reale.

Accesso alla Dashboard

Autenticazione con Chiave API

Configura una chiave API di amministrazione nella tua configurazione:

yaml
admin_api_key: "your-secure-api-key-here"

Accedi alla dashboard su /admin e inserisci la tua chiave API quando richiesto.

Metodi di Autenticazione

  1. Navigazione diretta - Vai su /admin e inserisci la chiave API
  2. Basata su header - Includi l'header X-API-Key nelle richieste
  3. Modalità debug - Imposta debug: true per lo sviluppo (non consigliato per la produzione)
yaml
# Solo per sviluppo
debug: true  # Bypassa l'autenticazione

Schede della Dashboard

Scheda Panoramica

Metriche di alto livello per il tuo compito di annotazione:

  • Utenti Totali - Numero di annotatori registrati
  • Annotazioni Totali - Totale delle annotazioni completate
  • Tasso di Completamento - Percentuale di dati annotati
  • Sessioni Attive - Annotatori attualmente attivi
  • Configurazione Compito - Riepilogo delle impostazioni attuali

Scheda Annotatori

Informazioni dettagliate su ciascun annotatore:

ColonnaDescrizione
ID UtenteIdentificatore dell'annotatore
FaseFase attuale del flusso di lavoro
AnnotazioniNumero completato
Tempo di LavoroTempo totale trascorso
VelocitàAnnotazioni per ora
Ultima AttivitàAzione più recente

Funzionalità:

  • Ordina per qualsiasi colonna
  • Filtra per fase o attività
  • Esporta i dati degli annotatori
  • Visualizza i dettagli del singolo annotatore

Scheda Istanze

Sfoglia e gestisci le istanze di annotazione:

ColonnaDescrizione
IDIdentificatore dell'istanza
Anteprima TestoPrimi 100 caratteri
AnnotazioniNumero di annotazioni ricevute
DisaccordoPunteggio di disaccordo inter-annotatore
AnnotatoriLista degli utenti che hanno annotato

Funzionalità:

  • Paginazione (25, 50 o 100 per pagina)
  • Ordina per annotazioni, disaccordo, ecc.
  • Filtra per numero di annotazioni
  • Visualizza i dettagli completi dell'istanza

Scheda Configurazione

Modifica le impostazioni in tempo reale senza riavviare:

  • Annotazioni Massime per Utente - Limita quanti elementi può annotare ciascun utente
  • Annotazioni Massime per Elemento - Annotazioni target per istanza
  • Strategia di Assegnazione - Come vengono assegnate le istanze agli utenti

Le modifiche hanno effetto immediato.

Strategie di Assegnazione

Configura come vengono assegnate le istanze dalla dashboard:

StrategiaDescrizione
randomAssegnazione casuale
orderedSequenziale (dal primo all'ultimo)
least_annotatedPriorità agli elementi con meno annotazioni
max_diversityMassimizza la diversità degli annotatori per elemento
active_learningPriorità basata sull'incertezza
llm_basedAssegnazione guidata da LLM

Analisi dei Tempi

La dashboard tiene traccia dei dati temporali dettagliati:

  • Tempo Totale di Lavoro - Somma di tutte le sessioni di annotazione
  • Tempo Medio per Annotazione - Tempo medio per elemento
  • Annotazioni per Ora - Tasso di produzione
  • Durata della Sessione - Tempo per sessione di login

I dati temporali derivano dal tracciamento comportamentale e dagli eventi di interazione con la pagina.

Configurazione

Impostazione di Base

yaml
# Abilita la dashboard di amministrazione
admin_api_key: "your-secure-api-key"
 
# Opzionale: personalizza le impostazioni di amministrazione
admin:
  session_timeout: 3600  # secondi
  max_export_size: 10000  # righe

Configurazione Completa

yaml
admin_api_key: "your-secure-api-key"
 
admin:
  # Impostazioni di sessione
  session_timeout: 3600
 
  # Limiti di esportazione
  max_export_size: 10000
 
  # Aggiornamento della dashboard
  auto_refresh: true
  refresh_interval: 30  # secondi
 
  # Impostazioni predefinite di paginazione
  default_page_size: 50

Endpoint API

La dashboard di amministrazione è alimentata da endpoint REST API:

Statistiche

text
GET /api/admin/stats

Restituisce le statistiche generali del compito.

Annotatori

text
GET /api/admin/annotators
GET /api/admin/annotators/{user_id}

Elenca tutti gli annotatori o ottieni i dettagli per un utente specifico.

Istanze

text
GET /api/admin/instances
GET /api/admin/instances/{instance_id}

Elenca le istanze con paginazione e filtraggio.

Configurazione

text
GET /api/admin/config
POST /api/admin/config

Ottieni o aggiorna la configurazione del compito.

Progresso dell'Addestramento

text
GET /api/admin/training/stats
GET /api/admin/training/user/{user_id}

Statistiche della fase di addestramento e progresso per utente.

Apprendimento Attivo

text
GET /api/admin/active-learning/status
GET /api/admin/active-learning/metrics

Stato del modello di apprendimento attivo e metriche di prestazione.

Funzionalità di Monitoraggio

Rilevamento di Attività Sospette

La dashboard può segnalare comportamenti potenzialmente problematici:

  • Velocità di annotazione molto elevate
  • Pattern di sessione insoliti
  • Pattern di risposta costanti
  • Annotazioni mancanti

Metriche di Qualità

Tieni traccia degli indicatori di qualità delle annotazioni:

  • Accordo inter-annotatore
  • Distribuzione del tempo per annotazione
  • Bilanciamento della distribuzione delle etichette
  • Prestazioni della fase di addestramento

Best Practice di Sicurezza

Gestione della Chiave API

yaml
# Usa variabili d'ambiente
admin_api_key: ${ADMIN_API_KEY}
bash
export ADMIN_API_KEY="your-secure-key"

Controllo degli Accessi

  • Usa chiavi API forti e univoche
  • Ruota le chiavi periodicamente
  • Non esporre gli endpoint di amministrazione pubblicamente
  • Usa HTTPS in produzione

Registro di Audit

La dashboard tiene traccia delle azioni di amministrazione:

  • Modifiche alla configurazione
  • Azioni di gestione degli utenti
  • Esportazioni dei dati
  • Tentativi di accesso

Configurazione di Esempio

yaml
task_name: "Sentiment Analysis"
task_dir: "."
port: 8000
 
# Dashboard di amministrazione
admin_api_key: ${ADMIN_API_KEY}
 
admin:
  session_timeout: 7200
  auto_refresh: true
  refresh_interval: 60
  default_page_size: 50
 
# Configurazione dati e annotazione
data_files:
  - "data/reviews.json"
 
item_properties:
  id_key: id
  text_key: text
 
annotation_schemes:
  - annotation_type: radio
    name: sentiment
    labels:
      - Positive
      - Negative
      - Neutral
 
# Impostazioni di assegnazione (modificabili dalla dashboard)
assignment:
  strategy: least_annotated
  max_annotations_per_user: 100
  max_annotations_per_item: 3
 
output_annotation_dir: "output/"
output_annotation_format: "json"
allow_all_users: true

Considerazioni sulle Prestazioni

Dataset di Grandi Dimensioni

Per dataset con migliaia di istanze:

  • Usa la paginazione (scheda istanze)
  • Abilita il caricamento lazy
  • Considera un backend database per prestazioni migliori

Molti Annotatori

Per compiti con molti annotatori concorrenti:

  • Imposta intervalli di aggiornamento appropriati
  • Monitora le risorse del server
  • Usa un backend database per la scalabilità
yaml
# Per deployment su larga scala
database:
  type: mysql
  host: localhost
  database: potato_db
  user: ${DB_USER}
  password: ${DB_PASSWORD}

Risoluzione dei Problemi

Impossibile Accedere alla Dashboard

  • Verifica che la chiave API sia impostata nella configurazione
  • Controlla che l'URL sia /admin
  • Assicurati che la chiave API corrisponda esattamente
  • Controlla eventuali errori di battitura nella configurazione

Dashboard Lenta nel Caricamento

  • Riduci le dimensioni della pagina
  • Aumenta l'intervallo di aggiornamento
  • Considera un backend database
  • Controlla le risorse del server

Statistiche Non Aggiornate

  • Verifica che l'aggiornamento automatico sia abilitato
  • Controlla l'impostazione dell'intervallo di aggiornamento
  • Aggiorna manualmente la pagina
  • Controlla eventuali errori JavaScript

Ulteriori Letture

Per i dettagli di implementazione, consulta la documentazione sorgente.