Skip to content
Announcements6 min read

Potato 2.2: eventi, entity linking, esportazione e 55 strumenti di survey

Potato 2.2.0 aggiunge 9 nuovi schemi di annotazione, un sistema di esportazione estensibile con plugin, la stima della competenza con MACE, 55 strumenti di survey validati e sorgenti di dati remote.

Potato Team

Nota: questo post descrive Potato 2.2 com'era al momento del rilascio. Alcune chiavi di configurazione e alcune funzionalità sono cambiate nelle versioni successive. Per la sintassi aggiornata vedi la documentazione attuale.

Potato 2.2.0 è disponibile e allarga sia quello che puoi annotare sia i modi per tenere alta la qualità. Aggiunge 9 nuovi schemi di annotazione, un sistema di esportazione estensibile con plugin, la stima della competenza con MACE, 55 strumenti di survey validati e sorgenti di dati remote.

Nuovi schemi di annotazione

Annotazione di eventi

L'aggiunta più consistente della 2.2 è l'annotazione di eventi n-ari. Un evento ha uno span trigger (la parola che segnala l'evento) e span argomento con ruoli semantici tipizzati. Una visualizzazione ad archi a raggiera collega ogni trigger ai suoi argomenti.

yaml
annotation_schemes:
  - annotation_type: event_annotation
    name: events
    span_schema: entities
    event_types:
      - type: "ATTACK"
        trigger_labels: ["EVENT_TRIGGER"]
        arguments:
          - role: "attacker"
            entity_types: ["PERSON", "ORGANIZATION"]
            required: true
          - role: "target"
            entity_types: ["PERSON", "ORGANIZATION", "LOCATION"]
            required: true

Copre l'estrazione di informazioni, il semantic role labeling e la costruzione di knowledge graph, che finora richiedevano strumenti scritti su misura.

Leggi la documentazione sull'annotazione di eventi →

Entity linking

Le annotazioni di span possono ora puntare a basi di conoscenza esterne. L'annotatore evidenzia il testo, assegna un'etichetta e poi usa una finestra di ricerca per trovare e collegare l'entità corrispondente su Wikidata, UMLS o una base di conoscenza personalizzata.

yaml
annotation_schemes:
  - annotation_type: span
    name: ner
    labels: [PERSON, ORGANIZATION, LOCATION]
    entity_linking:
      enabled: true
      knowledge_bases:
        - name: wikidata
          type: wikidata
          language: en

C'è anche una modalità a selezione multipla per le entità ambigue, e puoi collegare più basi di conoscenza in uno stesso task.

Leggi la documentazione sull'entity linking →

Triage, confronto a coppie, coreferenza e altro

Altri sei tipi di annotazione completano le aggiunte della v2.2:

  • Il triage offre un'interfaccia accetta/rifiuta/salta per scremare i dati in fretta, con avanzamento automatico e scorciatoie da tastiera
  • Il confronto a coppie propone una scelta binaria A/B o un cursore su scala, per il preference learning e i dati per RLHF
  • Gli alberi di conversazione permettono l'annotazione gerarchica ad albero, con valutazioni per nodo e selezione del percorso
  • Le catene di coreferenza servono a raggruppare le menzioni coreferenti, con indicatori visivi che mostrano le catene
  • Le maschere di segmentazione aggiungono gli strumenti riempimento, gomma e pennello per annotare le immagini a livello di pixel
  • Gli span discontinui (allow_discontinuous: true) gestiscono le selezioni di testo non contigue

Annotazione più intelligente

Stima della competenza con MACE

MACE usa un algoritmo EM con Variational Bayes per stimare allo stesso tempo le etichette vere e la competenza di ciascun annotatore (un punteggio da 0.0 a 1.0). Segnala gli annotatori affidabili, individua chi tira via e produce etichette predette migliori.

yaml
mace:
  enabled: true
  trigger_every_n: 10
  min_annotations_per_item: 3

Gira per conto suo in background e si collega alla dashboard di amministrazione e al sistema di adjudication.

Leggi la documentazione su MACE →

Evidenziazione delle opzioni

Questa nuova funzionalità di AI legge il contenuto ed evidenzia le opzioni con più probabilità di essere corrette nei task a scelta discreta. Le prime k opzioni compaiono a piena opacità con una stella accanto, le altre sono attenuate.

yaml
ai_support:
  option_highlighting:
    enabled: true
    top_k: 3
    dim_opacity: 0.4

Leggi la documentazione sull'evidenziazione delle opzioni →

Ordinamento per diversità

Gli embedding sentence-transformer raggruppano gli elementi simili in cluster, poi un campionamento round-robin pesca a turno da cluster diversi. L'annotatore vede più varietà, il che lo tiene sveglio e ti dà una copertura migliore dello spazio degli argomenti.

yaml
assignment_strategy: diversity_clustering
diversity_ordering:
  enabled: true
  prefill_count: 100

Leggi la documentazione sull'ordinamento per diversità →

Sistema di esportazione

La nuova CLI di esportazione (python -m potato.export) converte le annotazioni in 6 formati standard con un comando solo:

bash
python -m potato.export --config config.yaml --format coco --output ./export/
python -m potato.export --config config.yaml --format yolo --output ./export/
python -m potato.export --config config.yaml --format conll_2003 --output ./export/

Formati supportati: COCO, YOLO, Pascal VOC, CoNLL-2003, CoNLL-U e le maschere di segmentazione. Se ti serve un formato che non è nell'elenco, estendi BaseExporter e scrivi il tuo.

Leggi la documentazione sui formati di esportazione →

Sorgenti di dati remote

Carica i dati da annotare da URL, S3, Google Drive, Dropbox, dataset di Hugging Face, Google Sheets e database SQL:

yaml
data_sources:
  - type: huggingface
    dataset: "squad"
    split: "train"
 
  - type: s3
    bucket: "my-annotation-data"
    key: "datasets/items.jsonl"

Gestisce anche il caricamento parziale e incrementale per i dataset grandi, tiene i dati in cache in locale e conserva le credenziali nelle variabili d'ambiente invece che nella configurazione.

Leggi la documentazione sulle sorgenti di dati remote →

Strumenti di survey

Una libreria di 55 questionari validati da inserire nelle fasi prestudy e poststudy:

yaml
phases:
  prestudy:
    type: prestudy
    instrument: "tipi"      # 10-item personality questionnaire
 
  poststudy:
    type: poststudy
    instrument: "phq-9"     # 9-item depression screening

Coprono 8 categorie: personalità (BFI-2, TIPI), salute mentale (PHQ-9, GAD-7), affettività (PANAS), concetto di sé (RSE), atteggiamenti sociali (SDO-7, MFQ), stile di risposta, versioni brevi e batterie demografiche prese dalle grandi indagini (ANES, GSS, ESS).

Leggi la documentazione sugli strumenti di survey →

Correzioni minori

  • Tracciamento degli oggetti nei video con interpolazione tra fotogrammi chiave
  • Annotazione con bounding box sulle pagine dei PDF
  • Supporto per un file di configurazione dell'AI esterno
  • Miglioramenti alla griglia di layout dei moduli

Passare alla v2.2

bash
pip install --upgrade potato-annotation

Le configurazioni v2.0 e v2.1 che hai già continuano a funzionare senza modifiche. Tutto ciò che è nuovo si attiva a richiesta, tramite blocchi di configurazione aggiuntivi.

Come iniziare

Per il changelog completo, comprese le eventuali chiavi di configurazione cambiate, vedi le note di rilascio della v2.2.0 nel repository.


Hai domande o commenti? Partecipa al nostro Discord o apri una issue su GitHub.