Skip to content
Release4 min read

Potato 2.4.0: 웹 에이전트 어노테이션, 실시간 평가, HuggingFace 통합

Potato 2.4.0은 웹 에이전트 트레이스 검토, 실시간 라이브 에이전트 평가, LLM 채팅 사이드바, HuggingFace Hub 내보내기, 웹훅, SSO/OAuth, 그리고 다섯 가지 능동 학습 전략을 제공합니다.

Potato Team

Note: The feature counts in this post reflect the state at the v2.4.0 release. Potato now supports 30+ annotation types. See the annotation types documentation for the full list.

Potato 2.4.0이 출시되었습니다. 2.3에서 에이전트 어노테이션이 도입된 이후 가장 큰 업데이트로, 사람들이 계속 요청해 온 에이전트 평가 기능과 더불어 다수의 엔터프라이즈 및 통합 작업을 추가합니다.

웹 에이전트 어노테이션

웹을 탐색하는 에이전트를 평가하는 것은 어렵습니다. 에이전트가 무엇을 보았는지, 어디를 클릭했는지, 어떻게 스크롤했는지, 그리고 각 단계가 타당했는지를 확인해야 합니다. Potato 2.4는 이를 위해 웹 에이전트 트레이스 뷰어를 추가합니다.

검토 모드는 어노테이터에게 사전 녹화된 스크린샷을 필름스트립 형태로 보여 줍니다. SVG 오버레이가 클릭 대상, 바운딩 박스, 마우스 경로, 스크롤 위치를 표시하므로, 평가자는 에이전트가 본 것을 그대로 보면서 인라인으로 어노테이션 컨트롤을 사용할 수 있습니다.

생성 모드는 인터페이스를 뒤집습니다. 어노테이터는 iframe 안에서 실제 웹사이트를 탐색하고, Potato는 모든 상호작용을 어노테이션 준비가 된 트레이스로 기록합니다. WebArena, Mind2Web, Anthropic Computer Use 형식의 기존 트레이스를 가져오거나 진행하면서 새 트레이스를 녹화할 수 있습니다.

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

라이브 에이전트 평가

때로는 사후가 아니라 에이전트가 실행되는 동안 평가해야 할 때가 있습니다. 새로운 라이브 에이전트 평가 시스템은 어노테이터가 AI 에이전트가 실시간으로 작업을 수행하는 것을 지켜보고 실행 중에 그 동작을 어노테이션할 수 있게 해 줍니다.

Potato는 Agent Runner Manager를 통해 에이전트를 병렬로 실행하고, 웹훅 수신기를 통해 도착하는 트레이스를 캡처하며, 어노테이터에게 실시간 평가 인터페이스를 보여 줍니다. 또한 단계 수준의 어노테이터 간 일치도를 자동으로 추적합니다.

LLM 채팅 사이드바

어려운 어노테이션 판단은 두 번째 의견이 도움이 됩니다. 새로운 LLM 채팅 사이드바는 어노테이터에게 인터페이스를 벗어나지 않고 작업 도중에 참고할 수 있는 AI 어시스턴트 패널을 제공합니다.

사이드바는 다중 턴 대화를 처리하고 전체 작업 맥락을 자동으로 주입합니다. OpenAI, Anthropic, Ollama 엔드포인트와 함께 작동하며, 모든 대화를 행동 데이터로 기록하므로 어노테이터가 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

HuggingFace 생태계 통합

Potato는 이제 몇 가지 방식으로 HuggingFace에 연결됩니다. 자동 생성된 DatasetCard와 함께 어노테이션을 Hub 데이터셋으로 직접 푸시하고, 왕복 없이 datasets.Dataset 객체로 다시 불러오며, Potato 인스턴스를 HuggingFace Spaces에 배포하고, LangChain 콜백을 통해 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")

웹훅 시스템

Potato 2.4는 이벤트 기반 통합을 위한 완전한 웹훅 시스템을 제공합니다. Standard Webhooks 사양에 따라 HMAC-SHA256으로 서명된 다섯 가지 이벤트 유형이 있습니다:

이벤트트리거 시점
annotation.created어노테이터가 레이블을 제출할 때
item.fully_annotated항목이 요구되는 중복 수에 도달할 때
task.completed작업의 모든 항목이 어노테이션될 때
user.phase_completed사용자가 한 단계를 완료할 때 (Solo Mode)
quality.attention_check_failed어노테이터가 주의 점검에 실패할 때

웹훅은 구성 가능한 재시도와 함께 비차단 방식으로 전달되며, 관리자 API를 통해 관리됩니다.

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

고급 능동 학습: 5가지 전략 + LLM 콜드 스타트

능동 학습 시스템은 이제 다섯 가지 질의 전략을 제공합니다:

  1. 불확실성 샘플링: 모델이 가장 확신하지 못하는 인스턴스를 선택
  2. 다양성 기반 선택: 입력 공간의 커버리지를 최대화
  3. BADGE: Batch Active Learning by Diverse Gradient Embeddings
  4. BALD: Bayesian Active Learning by Disagreement
  5. 하이브리드 앙상블: 견고한 선택을 위해 여러 전략을 결합

레이블이 전혀 존재하지 않을 때 인스턴스를 선택하는 LLM 콜드 스타트도 있습니다. 언어 모델을 풀에 겨냥하면, 어노테이션을 시작할 도전적이거나 대표적인 항목을 모델이 끌어올려 줍니다. 다양한 인-컨텍스트 학습 예제를 선택하는 CoverICL도 새로 추가되었습니다.

비밀번호 관리 및 SSO/OAuth

사람들이 계속 요청해 온 두 가지 인증 기능입니다:

비밀번호 관리는 사용자별 솔트와 함께 PBKDF2-SHA256 해싱을 사용하며, 관리자 CLI 및 API를 통한 비밀번호 재설정을 지원하고, SQLite 또는 PostgreSQL로 뒷받침되는 토큰 기반 셀프 서비스 재설정 흐름을 포함합니다.

SSO/OAuth는 Authlib를 통해 Google, GitHub 또는 임의의 일반 OIDC 공급자를 통한 싱글 사인온을 처리합니다.

bash
pip install potato-annotation[auth]

업데이트된 수치

기능2.32.4
어노테이션 유형2021
표시 유형1517+
AI 엔드포인트711
예제 프로젝트1540+
능동 학습 전략15
웹훅 이벤트 유형05
에이전트 예제 프로젝트014

설치

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

사용해 보기

2.4를 실제로 보는 가장 빠른 방법은 설치가 필요 없는 HuggingFace Spaces의 라이브 데모입니다. 라디오 버튼, 리커트 척도, 스팬 어노테이션, 자유 텍스트 메모를 사용하는 에이전트 트레이스 평가 작업을 실행합니다:

라이브 데모 사용해 보기 →

또는 로컬에서 예제를 실행하십시오:

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

전체 changelog는 v2.4.0 릴리스 노트를, 나머지 문서는 GitHub 저장소를 참조하십시오.