Skip to content
此页面尚未提供您所选语言的版本,当前显示英文版本。

Admin-Dashboard

Annotationsfortschritt überwachen, Annotatoren verwalten und Einstellungen in Echtzeit konfigurieren.

Admin-Dashboard

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:

yaml
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

  1. Direkte Navigation – Navigieren Sie zu /admin und geben Sie den API-Key ein
  2. Header-basiertX-API-Key-Header in Anfragen einschließen
  3. Debug-Modusdebug: true für die Entwicklung setzen (nicht für die Produktion empfohlen)
yaml
# Development only
debug: true  # Bypasses authentication

Dashboard-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:

SpalteBeschreibung
Benutzer-IDAnnotator-Kennung
PhaseAktuelle Workflow-Phase
AnnotationenAnzahl abgeschlossener Annotationen
ArbeitszeitGesamte aufgewendete Zeit
GeschwindigkeitAnnotationen pro Stunde
Letzte AktivitätJüngste Aktion

Funktionen:

  • Nach beliebiger Spalte sortieren
  • Nach Phase oder Aktivität filtern
  • Annotatordaten exportieren
  • Einzelne Annotatordetails anzeigen

Instanzen-Tab

Annotationsinstanzen durchsuchen und verwalten:

SpalteBeschreibung
IDInstanzkennung
TextvorschauErste 100 Zeichen
AnnotationenAnzahl erhaltener Annotationen
UneinigkeitInter-Annotator-Uneinigkeitswert
AnnotatorenListe 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:

StrategieBeschreibung
randomZufällige Zuweisung
orderedSequenziell (erste bis letzte)
least_annotatedElemente mit wenigsten Annotationen priorisieren
max_diversityAnnotator-Vielfalt pro Element maximieren
active_learningUnsicherheitsbasierte Priorisierung
llm_basedLLM-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

yaml
# Enable admin dashboard
admin_api_key: "your-secure-api-key"
 
# Optional: customize admin settings
admin:
  session_timeout: 3600  # seconds
  max_export_size: 10000  # rows

Vollständige Konfiguration

yaml
admin_api_key: "your-secure-api-key"
 
admin:
  # Session settings
  session_timeout: 3600
 
  # Export limits
  max_export_size: 10000
 
  # Dashboard refresh
  auto_refresh: true
  refresh_interval: 30  # seconds
 
  # Pagination defaults
  default_page_size: 50

API-Endpunkte

Das Admin-Dashboard wird von REST-API-Endpunkten betrieben:

Statistiken

text
GET /api/admin/stats

Gibt allgemeine Aufgabenstatistiken zurück.

Annotatoren

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

Alle Annotatoren auflisten oder Details zu einem bestimmten Nutzer abrufen.

Instanzen

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

Instanzen mit Paginierung und Filterung auflisten.

Konfiguration

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

Aufgabenkonfiguration abrufen oder aktualisieren.

Trainingsfortschritt

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

Trainingsphase-Statistiken und Fortschritt je Nutzer.

Active Learning

text
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

yaml
# Use environment variables
admin_api_key: ${ADMIN_API_KEY}
bash
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

yaml
task_name: "Sentiment Analysis"
task_dir: "."
port: 8000
 
# Admin dashboard
admin_api_key: ${ADMIN_API_KEY}
 
admin:
  session_timeout: 7200
  auto_refresh: true
  refresh_interval: 60
  default_page_size: 50
 
# Data and annotation configuration
data_files:
  - "data/reviews.json"
 
item_properties:
  id_key: id
  text_key: text
 
annotation_schemes:
  - annotation_type: radio
    name: sentiment
    labels:
      - Positive
      - Negative
      - Neutral
 
# Assignment settings (editable from 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

Leistungsü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
yaml
# For large-scale deployments
database:
  type: mysql
  host: localhost
  database: potato_db
  user: ${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

Implementierungsdetails finden Sie in der Quelldokumentation.