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:
admin_api_key: "your-secure-api-key-here"Accedi alla dashboard su /admin e inserisci la tua chiave API quando richiesto.
Metodi di Autenticazione
- Navigazione diretta - Vai su
/admine inserisci la chiave API - Basata su header - Includi l'header
X-API-Keynelle richieste - Modalità debug - Imposta
debug: trueper lo sviluppo (non consigliato per la produzione)
# Solo per sviluppo
debug: true # Bypassa l'autenticazioneSchede 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:
| Colonna | Descrizione |
|---|---|
| ID Utente | Identificatore dell'annotatore |
| Fase | Fase attuale del flusso di lavoro |
| Annotazioni | Numero completato |
| Tempo di Lavoro | Tempo 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:
| Colonna | Descrizione |
|---|---|
| ID | Identificatore dell'istanza |
| Anteprima Testo | Primi 100 caratteri |
| Annotazioni | Numero di annotazioni ricevute |
| Disaccordo | Punteggio di disaccordo inter-annotatore |
| Annotatori | Lista 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:
| Strategia | Descrizione |
|---|---|
random | Assegnazione casuale |
ordered | Sequenziale (dal primo all'ultimo) |
least_annotated | Priorità agli elementi con meno annotazioni |
max_diversity | Massimizza la diversità degli annotatori per elemento |
active_learning | Priorità basata sull'incertezza |
llm_based | Assegnazione 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
# 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 # righeConfigurazione Completa
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: 50Endpoint API
La dashboard di amministrazione è alimentata da endpoint REST API:
Statistiche
GET /api/admin/stats
Restituisce le statistiche generali del compito.
Annotatori
GET /api/admin/annotators
GET /api/admin/annotators/{user_id}
Elenca tutti gli annotatori o ottieni i dettagli per un utente specifico.
Istanze
GET /api/admin/instances
GET /api/admin/instances/{instance_id}
Elenca le istanze con paginazione e filtraggio.
Configurazione
GET /api/admin/config
POST /api/admin/config
Ottieni o aggiorna la configurazione del compito.
Progresso dell'Addestramento
GET /api/admin/training/stats
GET /api/admin/training/user/{user_id}
Statistiche della fase di addestramento e progresso per utente.
Apprendimento Attivo
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
# Usa variabili d'ambiente
admin_api_key: ${ADMIN_API_KEY}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
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: trueConsiderazioni 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à
# 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
- Tracciamento Comportamentale - Tracciamento dettagliato delle interazioni
- Controllo della Qualità - Verifiche di attenzione e standard gold
- Panoramica API - Endpoint API di amministrazione
Per i dettagli di implementazione, consulta la documentazione sorgente.