Skip to content
Release6 min read

Potato 2.4.0: annotazione di agenti web, valutazione dal vivo e integrazione con HuggingFace

Potato 2.4.0 porta la revisione delle trace di agenti web, la valutazione dal vivo degli agenti in tempo reale, una barra laterale di chat LLM, l'esportazione su HuggingFace Hub, i webhook, SSO/OAuth e cinque strategie di active learning.

Potato Team

Nota: i conteggi delle funzionalità in questo post rispecchiano la situazione al rilascio della v2.4.0. Potato oggi supporta più di 50 tipi di annotazione. Vedi la documentazione sui tipi di annotazione per l'elenco completo.

Potato 2.4.0 è disponibile. È il nostro aggiornamento più corposo da quando l'annotazione agentiva è arrivata nella 2.3, e aggiunge le funzionalità di valutazione degli agenti che continuavano a chiederci, più un blocco di lavoro su integrazioni e uso in azienda.

Annotazione di agenti web

Valutare gli agenti di navigazione web è difficile. Devi vedere che cosa ha visto l'agente, dove ha cliccato, come ha scorso la pagina e se ogni passo aveva senso. Potato 2.4 aggiunge a questo scopo un visualizzatore di trace per agenti web.

La modalità di revisione dà agli annotatori una vista a pellicola sugli screenshot preregistrati. Gli overlay SVG segnano i target dei clic, i bounding box, i percorsi del mouse e le posizioni di scorrimento, così chi valuta vede quello che ha visto l'agente, con i controlli di annotazione in linea.

La modalità di creazione ribalta l'interfaccia. Gli annotatori navigano un sito reale dentro un iframe e Potato registra ogni interazione come una trace pronta per l'annotazione. Puoi importare trace esistenti nei formati WebArena, Mind2Web e Anthropic Computer Use, oppure registrarne di nuove strada facendo.

yaml
display:
  type: web_agent_trace
  mode: review          # or "creation"
  show_overlays: true
  keyboard_shortcuts: true

Valutazione di agenti dal vivo

A volte serve valutare gli agenti mentre girano, non a cose fatte. Il nuovo sistema di valutazione dal vivo permette agli annotatori di guardare gli agenti AI eseguire i compiti in tempo reale e di annotarne il comportamento durante l'esecuzione.

Potato esegue gli agenti in parallelo tramite l'Agent Runner Manager, cattura le trace man mano che arrivano attraverso un ricevitore di webhook e mostra agli annotatori un'interfaccia di valutazione in tempo reale. L'accordo tra annotatori a livello di passo viene tracciato automaticamente.

Barra laterale di chat LLM

Le decisioni di annotazione difficili traggono vantaggio da un secondo parere. La nuova barra laterale di chat LLM offre agli annotatori un pannello con un assistente AI da consultare a metà compito senza uscire dall'interfaccia.

La barra laterale gestisce conversazioni multi-turno e inserisce automaticamente il contesto completo del compito. Funziona con endpoint OpenAI, Anthropic e Ollama, e registra ogni conversazione come dato comportamentale, il che torna utile se vuoi studiare quanto gli annotatori si appoggino all'assistenza dell'AI.

yaml
llm_sidebar:
  enabled: true
  provider: anthropic
  model: claude-3-5-sonnet-20241022
  system_prompt: "You are a helpful annotation assistant for this {task_name} task."
  collapsible: true

Integrazione con l'ecosistema HuggingFace

Potato ora si collega a HuggingFace in vari modi. Puoi inviare le annotazioni direttamente ai dataset dell'Hub con DatasetCard generate automaticamente, ricaricarle come oggetti datasets.Dataset senza passaggi intermedi, distribuire un'istanza di Potato su HuggingFace Spaces e importare le trace in automatico quando esegui agenti LangChain tramite il callback di LangChain.

bash
pip install potato-annotation[huggingface]
python
from potato import PotatoDataset
 
ds = PotatoDataset.from_output("annotations/")
ds.push_to_hub("my-org/my-annotation-dataset")

Sistema di webhook

Potato 2.4 include un sistema di webhook completo per le integrazioni guidate dagli eventi. Cinque tipi di evento, firmati con HMAC-SHA256 secondo la specifica Standard Webhooks:

EventoSi attiva quando
annotation.createdUn annotatore invia un'etichetta
item.fully_annotatedUn elemento raggiunge la sovrapposizione richiesta
task.completedTutti gli elementi di un compito sono annotati
user.phase_completedUn utente completa una fase (modalità Solo)
quality.attention_check_failedUn annotatore non supera un controllo di attenzione

I webhook vengono consegnati in modo non bloccante con retry configurabile e si gestiscono dall'API di amministrazione.

yaml
webhooks:
  - url: https://your-system.example.com/potato-events
    secret: your-signing-secret
    events: [annotation.created, item.fully_annotated]

Active learning avanzato: 5 strategie + cold-start con LLM

Il sistema di active learning ora offre cinque strategie di query:

  1. Campionamento per incertezza: seleziona gli elementi su cui il modello è meno sicuro
  2. Selezione per diversità: massimizza la copertura dello spazio di input
  3. BADGE: Batch Active Learning by Diverse Gradient Embeddings
  4. BALD: Bayesian Active Learning by Disagreement
  5. Ensemble ibrido: combina le strategie per una selezione robusta

C'è anche il cold-start con LLM, che sceglie gli elementi prima che esista una sola etichetta. Punti un modello linguistico sul tuo pool e lo lasci far emergere gli elementi difficili o rappresentativi da cui far partire l'annotazione. Anche CoverICL è una novità, per scegliere esempi diversificati di in-context learning.

Gestione delle password e SSO/OAuth

Due funzionalità di autenticazione che ci venivano chieste di continuo:

La gestione delle password usa hashing PBKDF2-SHA256 con sale per utente, supporta il reset da CLI di amministrazione e da API, e include un flusso di reset self-service basato su token, appoggiato a SQLite o PostgreSQL.

SSO/OAuth gestisce il single sign-on tramite Google, GitHub o un qualsiasi provider OIDC generico attraverso Authlib.

bash
pip install potato-annotation[auth]

Conteggi aggiornati

Funzionalità2.32.4
Tipi di annotazione2021
Tipi di display1517+
Endpoint AI711
Progetti di esempio1540+
Strategie di active learning15
Tipi di evento webhook05
Progetti di esempio con agenti014

Installazione

bash
pip install potato-annotation           # core
pip install potato-annotation[ai]       # OpenAI, Ollama
pip install potato-annotation[huggingface]  # HF Hub + Spaces
pip install potato-annotation[langchain]    # LangChain callback
pip install potato-annotation[auth]         # SSO/OAuth
pip install potato-annotation[all]          # everything

Provala

Il modo più rapido per vedere la 2.4 all'opera è la demo dal vivo su HuggingFace Spaces, senza installare nulla. Esegue un compito di valutazione di trace di agenti con pulsanti radio, scale likert, annotazione di span e note in testo libero:

Prova la demo dal vivo →

Oppure esegui un esempio in locale:

bash
git clone https://github.com/davidjurgens/potato.git
cd potato
pip install -e .
python potato/flask_server.py start examples/agent-traces/complex-annotation/config.yaml -p 8000

Per il changelog completo, vedi le note di rilascio della v2.4.0 e il resto della documentazione nel repository GitHub.