Admin-Dashboard
Annotationsfortschritt überwachen, Annotatoren verwalten und Einstellungen in Echtzeit konfigurieren.
Potato 2.0 enthält ein umfassendes Admin-Dashboard zur Überwachung des Annotationsfortschritts, zur Verfolgung der Annotatorenleistung und zur Verwaltung der Aufgabenkonfiguration in Echtzeit.
Zugang zum Dashboard
API-Key-Authentifizierung
Konfigurieren Sie einen Admin-API-Key in Ihrer Konfiguration:
admin_api_key: "your-secure-api-key-here"Rufen Sie das Dashboard unter /admin auf und geben Sie Ihren API-Key ein, wenn Sie dazu aufgefordert werden.
Authentifizierungsmethoden
- Direkte Navigation – Navigieren Sie zu
/adminund geben Sie den API-Key ein - Header-basiert –
X-API-Key-Header in Anfragen einschließen - Debug-Modus – Mit
debug: trueöffnen Anfragen vom Rechner des Servers selbst die Admin-Seiten ohne Schlüssel
Der Debug-Modus öffnet die Admin-Seiten ohne Schlüssel nur für Anfragen vom Rechner des Servers selbst, also von einer Loopback-Adresse ohne X-Forwarded-For-, X-Real-IP- oder Forwarded-Header. Ein Tunnel oder Reverse Proxy auf demselben Rechner, der keinen Weiterleitungs-Header hinzufügt, lässt jeden Aufrufer lokal erscheinen. Aktivieren Sie debug deshalb nie auf einem produktiv eingesetzten Server:
# Development only
debug: true # Admin pages open without a key for requests from this machineDashboard-Tabs
Übersichts-Tab
Übergeordnete Metriken für Ihre Annotationsaufgabe:
- Gesamtnutzer – Anzahl registrierter Annotatoren
- Gesamtannotationen – Abgeschlossene Annotationen insgesamt
- Abschlussrate – Prozentualer Anteil annotierter Daten
- Aktive Sitzungen – Derzeit aktive Annotatoren
- Aufgabenkonfiguration – Zusammenfassung der aktuellen Einstellungen
Annotatoren-Tab
Detaillierte Informationen zu jedem Annotator:
| Spalte | Beschreibung |
|---|---|
| Benutzer-ID | Annotator-Kennung |
| Phase | Aktuelle Workflow-Phase |
| Annotationen | Anzahl abgeschlossener Annotationen |
| Arbeitszeit | Gesamte aufgewendete Zeit |
| Geschwindigkeit | Annotationen pro Stunde |
| Letzte Aktivität | Jüngste Aktion |
Funktionen:
- Nach beliebiger Spalte sortieren
- Nach Phase oder Aktivität filtern
- Annotatordaten exportieren
- Einzelne Annotatordetails anzeigen
Instanzen-Tab
Annotationsinstanzen durchsuchen und verwalten:
| Spalte | Beschreibung |
|---|---|
| ID | Instanzkennung |
| Textvorschau | Erste 100 Zeichen |
| Annotationen | Anzahl erhaltener Annotationen |
| Uneinigkeit | Inter-Annotator-Uneinigkeitswert |
| Annotatoren | Liste der Benutzer, die annotiert haben |
Funktionen:
- Paginierung (25, 50 oder 100 pro Seite)
- Sortierung nach Annotationen, Uneinigkeit usw.
- Filterung nach Annotationsanzahl
- Vollständige Instanzdetails anzeigen
Konfiguration-Tab
Einstellungen in Echtzeit ändern, ohne neu zu starten:
- Max. Annotationen pro Nutzer – Anzahl der Elemente, die jeder Nutzer annotieren kann, begrenzen
- Max. Annotationen pro Element – Zielannotationen pro Instanz
- Zuweisungsstrategie – Wie Instanzen Nutzern zugewiesen werden
Änderungen werden sofort wirksam.
Zuweisungsstrategien
Konfigurieren Sie im Dashboard, wie Instanzen zugewiesen werden:
| Strategie | Beschreibung |
|---|---|
random | Zufällige Zuweisung |
ordered | Sequenziell (erste bis letzte) |
least_annotated | Elemente mit wenigsten Annotationen priorisieren |
max_diversity | Annotator-Vielfalt pro Element maximieren |
active_learning | Unsicherheitsbasierte Priorisierung |
llm_based | LLM-gesteuerte Zuweisung |
Zeitanalysen
Das Dashboard verfolgt detaillierte Zeitdaten:
- Gesamte Arbeitszeit – Summe aller Annotationssitzungen
- Durchschnittliche Zeit pro Annotation – Mittlere Zeit pro Element
- Annotationen pro Stunde – Durchsatzrate
- Sitzungsdauer – Zeit pro Login-Sitzung
Zeitdaten werden aus dem Verhaltens-Tracking und Seiteninteraktionsereignissen abgeleitet.
Konfiguration
Grundeinrichtung
# Enable admin dashboard
admin_api_key: "your-secure-api-key"Vollständige Konfiguration
admin_api_key: "your-secure-api-key"
# How long a session may sit idle before the server clears it.
# The clock restarts on every request, so it bounds inactivity,
# not the length of a shift. Default 480.
session_timeout_minutes: 480
# Editable from the Configuration tab while the server runs
assignment_strategy: least_annotated
max_annotations_per_user: 100
max_annotations_per_item: 3API-Endpunkte
Das Admin-Dashboard wird von REST-API-Endpunkten betrieben:
Statistiken
GET /api/admin/stats
Gibt allgemeine Aufgabenstatistiken zurück.
Annotatoren
GET /api/admin/annotators
GET /api/admin/annotators/{user_id}
Alle Annotatoren auflisten oder Details zu einem bestimmten Nutzer abrufen.
Instanzen
GET /api/admin/instances
GET /api/admin/instances/{instance_id}
Instanzen mit Paginierung und Filterung auflisten.
Konfiguration
GET /api/admin/config
POST /api/admin/config
Aufgabenkonfiguration abrufen oder aktualisieren.
Trainingsfortschritt
GET /api/admin/training/stats
GET /api/admin/training/user/{user_id}
Trainingsphase-Statistiken und Fortschritt je Nutzer.
Active Learning
GET /api/admin/active-learning/status
GET /api/admin/active-learning/metrics
Status des Active-Learning-Modells und Leistungsmetriken.
Überwachungsfunktionen
Erkennung verdächtiger Aktivitäten
Das Dashboard kann potenziell problematisches Verhalten markieren:
- Sehr schnelle Annotationsgeschwindigkeiten
- Ungewöhnliche Sitzungsmuster
- Konsistente Antwortmuster
- Fehlende Annotationen
Qualitätsmetriken
Qualitätsindikatoren für Annotationen verfolgen:
- Inter-Annotator-Übereinstimmung
- Verteilung der Zeit pro Annotation
- Balance der Label-Verteilung
- Leistung in der Trainingsphase
Sicherheits-Best-Practices
API-Key-Verwaltung
# Use environment variables
admin_api_key: ${ADMIN_API_KEY}export ADMIN_API_KEY="your-secure-key"Zugriffskontrolle
- Starke, einzigartige API-Keys verwenden
- Keys regelmäßig rotieren
- Admin-Endpunkte nicht öffentlich zugänglich machen
- HTTPS in der Produktion verwenden
Audit-Logging
Das Dashboard verfolgt Admin-Aktionen:
- Konfigurationsänderungen
- Nutzerverwaltungsaktionen
- Datenexporte
- Zugriffsversuche
Beispielkonfiguration
annotation_task_name: "Sentiment Analysis"
task_dir: "."
port: 8000
# Admin dashboard
admin_api_key: ${ADMIN_API_KEY}
session_timeout_minutes: 480
# Data and annotation configuration
data_files:
- "data/reviews.json"
item_properties:
id_key: id
text_key: text
annotation_schemes:
- annotation_type: radio
name: sentiment
description: "How does this review read?"
labels:
- Positive
- Negative
- Neutral
# Assignment settings (editable from the Configuration tab)
assignment_strategy: least_annotated
max_annotations_per_user: 100
max_annotations_per_item: 3
output_annotation_dir: "output/"
export_annotation_format: jsonl
user_config:
allow_all_users: trueLeistungsüberlegungen
Große Datensätze
Bei Datensätzen mit Tausenden von Instanzen:
- Paginierung nutzen (Instanzen-Tab)
- Lazy Loading aktivieren
- Datenbankbackend für bessere Leistung erwägen
Viele Annotatoren
Bei Aufgaben mit vielen gleichzeitigen Annotatoren:
- Angemessene Aktualisierungsintervalle festlegen
- Serverressourcen überwachen
- Datenbankbackend für Skalierbarkeit nutzen
# For large-scale deployments
database:
type: mysql
host: localhost
database: potato_db
username: ${DB_USER}
password: ${DB_PASSWORD}Fehlerbehebung
Dashboard nicht erreichbar
- Sicherstellen, dass der API-Key in der Konfiguration gesetzt ist
- URL
/adminüberprüfen - Sicherstellen, dass der API-Key exakt übereinstimmt
- Konfiguration auf Tippfehler prüfen
Langsames Laden des Dashboards
- Seitengröße reduzieren
- Aktualisierungsintervall erhöhen
- Datenbankbackend in Betracht ziehen
- Serverressourcen prüfen
Statistiken werden nicht aktualisiert
- Sicherstellen, dass Auto-Refresh aktiviert ist
- Aktualisierungsintervall-Einstellung prüfen
- Seite manuell neu laden
- Auf JavaScript-Fehler prüfen
Weiterführende Informationen
- Verhaltens-Tracking – Detailliertes Interaktions-Tracking
- Qualitätskontrolle – Aufmerksamkeitschecks und Gold-Standards
- API-Übersicht – Admin-API-Endpunkte
Implementierungsdetails finden Sie in der Quelldokumentation.