Skip to content
Release6 min read

Potato 2.4.0: anotación de agentes web, evaluación en vivo e integración con HuggingFace

Potato 2.4.0 trae revisión de trazas de agentes web, evaluación de agentes en vivo en tiempo real, una barra lateral de chat con LLM, exportación al Hub de HuggingFace, webhooks, SSO/OAuth y cinco estrategias de aprendizaje activo.

Potato Team

Nota: los recuentos de funciones de esta entrada reflejan el estado en el momento de la versión v2.4.0. Potato admite hoy más de 50 tipos de anotación. Consulta la documentación de tipos de anotación para la lista completa.

Ya está disponible Potato 2.4.0. Es la actualización más grande desde que llegó la anotación agéntica en la 2.3, y añade las funciones de evaluación de agentes que más nos pedíais, más un lote de trabajo de integración y de uso en empresa.

Anotación de agentes web

Evaluar agentes de navegación web es difícil. Necesitas ver lo que vio el agente, dónde hizo clic, cómo se desplazó y si cada paso tenía sentido. Potato 2.4 añade un visor de trazas de agente web para esto.

El modo de revisión da a los anotadores una vista en tira de película sobre capturas de pantalla pregrabadas. Las superposiciones SVG marcan los objetivos de clic, los cuadros delimitadores, los recorridos del ratón y las posiciones de desplazamiento, así que quien evalúa ve lo que vio el agente, con los controles de anotación en línea.

El modo de creación le da la vuelta a la interfaz. Los anotadores navegan por un sitio web real dentro de un iframe y Potato registra cada interacción como una traza lista para anotar. Puedes importar trazas existentes en los formatos de WebArena, Mind2Web y Anthropic Computer Use, o grabar otras nuevas sobre la marcha.

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

Evaluación de agentes en vivo

A veces necesitas evaluar a los agentes mientras se ejecutan, no a toro pasado. El nuevo sistema de evaluación de agentes en vivo permite a los anotadores ver a los agentes de IA resolver tareas en tiempo real y anotar su comportamiento en plena ejecución.

Potato ejecuta agentes en paralelo mediante el Agent Runner Manager, captura las trazas según llegan a través de un receptor de webhooks y muestra a los anotadores una interfaz de evaluación en tiempo real. El acuerdo entre anotadores a nivel de paso se calcula de forma automática.

Barra lateral de chat con LLM

Las decisiones de anotación difíciles agradecen una segunda opinión. La nueva barra lateral de chat con LLM da a los anotadores un panel de asistente de IA al que pueden consultar en mitad de la tarea sin salir de la interfaz.

La barra lateral gestiona conversaciones de varios turnos e inyecta el contexto completo de la tarea automáticamente. Funciona con endpoints de OpenAI, Anthropic y Ollama, y registra cada conversación como dato de comportamiento, lo que viene bien si quieres estudiar hasta qué punto los anotadores se apoyan en la asistencia de IA.

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

Integración con el ecosistema de HuggingFace

Potato se conecta ahora con HuggingFace de varias formas. Puedes subir anotaciones directamente a datasets del Hub con DatasetCards generadas automáticamente, volver a cargarlas como objetos datasets.Dataset sin pasos intermedios, desplegar una instancia de Potato en HuggingFace Spaces e ingerir trazas automáticamente cuando ejecutas agentes de LangChain mediante el callback de 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 de webhooks

Potato 2.4 incluye un sistema de webhooks completo para integraciones orientadas a eventos. Cinco tipos de evento, firmados con HMAC-SHA256 según la especificación Standard Webhooks:

EventoSe dispara cuando
annotation.createdUn anotador envía una etiqueta
item.fully_annotatedUn elemento alcanza el solapamiento exigido
task.completedSe han anotado todos los elementos de una tarea
user.phase_completedUn usuario termina una fase (modo Solo)
quality.attention_check_failedUn anotador falla un control de atención

Los webhooks se entregan sin bloquear, con reintentos configurables, y se gestionan desde la API de administración.

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

Aprendizaje activo avanzado: 5 estrategias y arranque en frío con LLM

El sistema de aprendizaje activo trae ahora cinco estrategias de consulta:

  1. Muestreo por incertidumbre: selecciona los elementos sobre los que el modelo tiene menos confianza
  2. Selección por diversidad: maximiza la cobertura del espacio de entrada
  3. BADGE: Batch Active Learning by Diverse Gradient Embeddings
  4. BALD: Bayesian Active Learning by Disagreement
  5. Ensamblado híbrido: combina estrategias para una selección más robusta

También está el arranque en frío con LLM, que elige elementos antes de que exista ninguna etiqueta. Apuntas un modelo de lenguaje a tu bolsa de datos y dejas que saque a la superficie los elementos difíciles o representativos con los que sembrar la anotación. CoverICL también es nuevo, para elegir ejemplos diversos de aprendizaje en contexto.

Gestión de contraseñas y SSO/OAuth

Dos funciones de autenticación muy pedidas:

La gestión de contraseñas usa hashing PBKDF2-SHA256 con sal por usuario, admite restablecimientos desde la CLI de administración y desde la API, e incluye un flujo de restablecimiento autoservicio basado en tokens sobre SQLite o PostgreSQL.

SSO/OAuth resuelve el inicio de sesión único con Google, GitHub o cualquier proveedor OIDC genérico a través de Authlib.

bash
pip install potato-annotation[auth]

Recuentos actualizados

Capacidad2.32.4
Tipos de anotación2021
Tipos de visualización1517+
Endpoints de IA711
Proyectos de ejemplo1540+
Estrategias de aprendizaje activo15
Tipos de evento de webhook05
Proyectos de ejemplo con agentes014

Instalación

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

Pruébalo

La forma más rápida de ver la 2.4 en marcha es la demo en vivo en HuggingFace Spaces, sin instalar nada. Ejecuta una tarea de evaluación de trazas de agente con botones de opción, escalas likert, anotación de tramos y notas de texto libre:

Prueba la demo en vivo →

O ejecuta un ejemplo en local:

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

Para el registro de cambios completo, consulta las notas de la versión v2.4.0, y el resto de la documentación en el repositorio de GitHub.