새로운 기능
Potato v2.x의 새로운 기능 — 심리측정 엔진, 멀티플레이어 룸, 바운더리 랩, 트루스 세럼, 생각 말하기 모드, QDA 모드, LLM-as-judge 보정, 멀티 에이전트 평가, 50가지 이상의 주석 유형. 이제 GPL-3.0-or-later 라이선스를 따릅니다.
이 페이지에서는 Potato v2.x 릴리스 전반의 새로운 기능과 개선 사항을 다룹니다.
Potato 2.7.2
2026년 8월 출시
자유 텍스트 필드를 위한 키스트로크 로깅. Potato는 답변 뒤에 놓인 타이밍을 기록하고 문자는 전혀 기록하지 않는데, 그것만으로도 직접 입력과 붙여넣기를 구분하기에 충분합니다.
- 키스트로크 로깅 — 모든 자유 텍스트 필드에서 멈춤, 버스트, 수정, 붙여넣기를 내용을 남기지 않고 수집하며, 응답마다 약 40개의 요약 특징을 계산합니다. 기본값은 비활성입니다.
- 작성 과정 탐지 — 임계값이 명시된 6개의 이름 붙은 규칙으로, 각 플래그가 발생한 근거가 된 특징 값을 함께 보고합니다. 임계값은 프로젝트에 맞게 다시 맞출 수 있고, 레이블이 있다면 지도 학습 경로도 있습니다.
- 윤리 지침 — 동의 문구 예시, 보관과 삭제, 기저율 문제, 그리고 플래그가 결론이 아니라 들여다보라는 신호인 이유를 다룹니다.
- 옵트인 내보내기 —
export_include_typing_dynamics는 요약 사이드카 파일을 쓰고,--format keystrokes는 원시 스트림을 Parquet으로 씁니다. 둘 다 기본으로 켜져 있지 않으므로 행동 데이터가 실수로 데이터셋 배포에 섞이는 일이 없습니다.
주석자 고지는 기본적으로 켜져 있으며, 이를 끄면 시작 시 경고가 기록됩니다.
Potato 2.7.1
2026년 7월 출시
트랜스크립트가 이미 존재한다는 전제에서 출발한 트랜스크립트 수집 기능입니다. 누군가 Whisper를 돌렸거나, 자막을 내려받았거나, 코퍼스를 건네받았을 때 그다음 단계가 변환 스크립트 작성이어서는 안 됩니다.
- 21가지 트랜스크립트 및 자막 형식 — 기존 6가지에서 늘었습니다. Whisper, WhisperX, whisper.cpp, AWS Transcribe, Deepgram, AssemblyAI, Rev.ai, SPoRC, SubRip, WebVTT, SubStation Alpha, TTML/DFXP, YouTube
json3와srv1/srv2/srv3, NIST CTM, Praat TextGrid, ELAN EAF를 지원합니다. 형식 감지는 확장자가 아니라 파일 내용을 기준으로 합니다. - 사이드카 트랜스크립트 파일 — 데이터 파일이 트랜스크립트를 인라인으로 담는 대신 디스크의
media/int_001.srt를 가리킬 수 있습니다. 경로는 표준 경로 보안 검사를 거쳐task_dir아래에서 해석되므로, 트랜스크립트는 diff하고 다시 내보낼 수 있는 파일로 남습니다. potato transcripts— ASR 출력이 담긴 폴더를 주석 가능한 데이터 파일로 바꾸는 변환기로, 파일 이름을 기준으로 트랜스크립트와 미디어를 짝지어 줍니다.--dry-run은 아무것도 쓰기 전에 감지 결과를 보고하고,--emit-config는 그에 맞는 설정을 출력합니다.- 네 개의 스키마에 걸친 하나의 형식 어휘 — 이제
speech_transcript,voice_interaction,tiered_annotation이audio_dialogue표시가 받아들이는 모든 형식을 받습니다. 이전에는 표시에서만 가능했습니다. - **Whisper 트랜스크립트 주석 달기**와 YouTube 자막 주석 달기 가이드가 두 출발점을 처음부터 끝까지 안내합니다.
ASR과 화자 분할은 여전히 상류 단계에서 실행합니다. Potato는 그 결과물을 읽을 뿐, 음성을 받아 적지는 않습니다.
Potato 2.7.0
2026년 7월 출시
Potato 2.7은 하나의 생각 위에 세워졌습니다. 주석 도구는 어떤 판단이 내려졌는지만 기록할 것이 아니라 그 판단이 어떻게 내려졌는지도 측정해야 한다는 것입니다. 이는 두 종류의 판단자, 즉 주석을 다는 사람과 평가 대상인 AI 모델 모두에 해당합니다.
사람이 레이블을 다는 방식을 측정하기
LLM이 필요 없는 7가지 옵트인 기능입니다.
- 심리측정 엔진 — 실시간 문항반응이론 계층으로, 단순 다수결 대신 모든 레이블에 사후확률과 신뢰구간(
p = 0.94 [0.88–0.97])을 부여합니다. 일치 패턴만으로 주석자 능력과 문항 난이도를 추정하고, 판단이 가장 많은 정보를 담을 주석자에게 문항을 배정하며, 코드북 오류로 의심되는 지점을 표시합니다. - 멀티플레이어 룸 — 팀이 이미 화면 공유로 진행하고 있는 보정 회의를 도구 안으로 들여오고 계측했습니다. 비공개 투표, 호스트 공개, 토론, 재투표로 이어지며, Krippendorff 알파 미터가 그 회의의 성과를 실시간으로 보여줍니다.
- 바운더리 랩 — 레이블을 달 때마다 반사실 질문("그래도 그 판단이 유지될까요?")을 던져, 평범한 주석 작업을 대조 집합으로 바꾸고 골드 문항을 심지 않고도 일관성 없는 주석자를 잡아냅니다.
- 트루스 세럼 — 의외로 인기 있는 답을 활용하는 동료 예측 채점 방식으로, 주석이 어려운 과제에서 골드 레이블 없이도 다수결보다 나은 결과를 냅니다.
- 생각 말하기 모드 — 주석자가 작업하면서 말을 하면, 음성 인식이 전부 로컬에서 실행되고 그 전사 결과가 그대로 근거가 됩니다.
- 페이퍼 모드 — 명령 한 줄로 프로젝트를 컴파일 가능한 LaTeX 데이터셋 리포트로 만들며, 일치도 통계와 인용이 포함됩니다.
- 포켓 모드 — 스와이프 카드 스택, 오프라인 동기화, PWA 설치를 갖춘 본격적인 모바일 주석 환경입니다.
AI 에이전트 평가
에이전트 평가 도구 모음이 팀 구조와 멀티모달 에이전트까지 다루도록 확장되었습니다. 클릭 가능한 에이전트 상호작용 그래프, 에이전트 간 실패 원인 추적, 인계 검토, 에이전트별 및 팀별 스코어카드, 도구 경합 타임라인, 창발 행동 태깅이 추가되었고, GUI/컴퓨터 사용 트래젝토리, 전이중 음성 타임라인, 비디오 시간 정렬, 문서 표 구조도 함께 지원합니다.
그 밖의 변화
문서 간 이벤트 주석, 턴 단위 주석, 전체 페이지 편집기를 갖춘 살아 있는 코드북, 선택적 OCR을 지원하는 PDF 페이지 간 연결, 코호트별 스키마가 가능한 RBAC 역할, 10개 언어로 제공되는 관리자 및 주석자 대시보드, 그리고 훨씬 가벼워진 설치가 포함됩니다. AI SDK가 이제 지연 로딩되어 부팅 시간이 약 2.0초에서 0.7초로 줄었습니다.
Potato 2.6.0
2026년 6월 출시
Potato 2.6은 질적 데이터 분석 영역으로 들어가면서 에이전트 평가 도구를 더 깊게 다듬습니다. QDA 모드, 신호 기반 분류 대기열을 갖춘 LLM-as-judge 보정 및 정렬 워크플로, SFT와 DPO 학습 데이터를 만들어 내는 트래젝토리 편집 스키마가 추가되었습니다. 또한 Potato의 라이선스가 PolyForm Shield에서 GPL-3.0-or-later로 변경되었습니다.
QDA 모드
옵트인 방식의 qda_mode는 Potato를 협업 질적 코딩 작업 공간으로 바꿉니다. 이를 켜면 살아 있는 코드북, 인비보 코딩, 분석 메모, 사례, 전문 검색이 함께 구성되며, 기본값은 분석가 한 명이 코퍼스 전체를 코딩하는 상황에 맞춰져 있습니다.
qda_mode:
enabled: true # codebook + memos + cases + search
codebook_invivo_key: i # mint a code from a text selection
search:
enabled: true
annotator_claim: trueLLM-as-Judge 보정 및 정렬
하나 이상의 LLM 판정자로 데이터에 자동으로 레이블을 단 다음, 사람이 참여하는 블라인드 보정 단계를 거쳐 정확도, 일치도, 보정 오차를 측정합니다. 별도의 단일 판정자 정렬 워크플로는 루브릭을 다듬어 가는 동안 사람이 만든 골드 레이블 대비 Cohen 카파를 추적하며, 주석 중에 인라인 판정을 함께 보여줄 수도 있습니다.
신호 기반 분류 대기열
에이전트 오류, 운영 환경의 부정적 피드백, 낮은 점수, 또는 임의의 사용자 정의 필드 같은 항목별 품질 신호로 주석 대기열의 우선순위를 정해, 검토자가 도착 순서가 아니라 가장 의심스러운 항목부터 보게 합니다.
triage:
enabled: true
signal_field: quality_score
invert_signal: true
assignment_strategy: prioritySFT/DPO를 위한 트래젝토리 편집
새로 추가된 trajectory_edit과 trajectory_correction 스키마를 통해 주석자가 에이전트 트레이스의 각 단계를 다시 쓸 수 있습니다. 내보내기 도구는 원본/수정본 쌍을 지도 미세조정 대상(trajectory_sft.jsonl)과 DPO 선호 쌍(trajectory_dpo.jsonl)으로 변환합니다.
eval_trace 표시
추론, 함수 호출, 최종 답변의 세 창으로 구성된 에이전트 트레이스 표시입니다. 트레이스가 웹훅, Langfuse 폴러, 감시 중인 디렉터리를 통해 도착하는 대로 평가하는 지속적 평가를 위해 만들어졌습니다.
워크플로와 배정
- 이질적 커버리지 — 항목마다 필요한 주석자 수가 다른 작업을 위해 항목별 주석자 상한, 주석자 간 일치도 보고, 판정 라우팅을 제공합니다.
- 버려진 배정 회수 — Prolific 참여자나 QC로 차단된 작업자가 남긴 배정을 회수합니다. 보관 기간을 설정할 수 있고 회수는 멱등적으로 동작합니다.
- 커스텀 배치 배정 전략 — 미리 정의한 항목 배치를 특정 주석자에게 배정합니다.
- 리버스 프록시 URL 접두사 — 리버스 프록시 뒤의 하위 경로에서 Potato를 서비스합니다.
라이선스
Potato는 이제 PolyForm Shield에서 변경되어 GPL-3.0-or-later로 배포됩니다. 파생 저작물이 GPL을 따르는 한 상업적 이용을 포함해 사용, 수정, 재배포할 수 있습니다. 자세한 내용은 소개 페이지를 참고하세요.
성능과 안정성
- 부팅이 약 3배 빨라졌습니다. ML 스택을 시작 시점에 즉시 로드하지 않게 되면서 임포트 시간이 약 6.5초에서 2초로, 5만 항목 부팅이 약 10초에서 5.7초로, 상주 메모리가 약 750MB에서 365MB로 줄었습니다.
- 스키마 이름 변경.
annotation_type: highlight가span으로 바뀌었고 마이그레이션이 함께 제공됩니다. 기존 설정은 유형 이름만 바꾸면 되고, 이미span을 쓰던 설정은 영향을 받지 않습니다. - 라우트 등록, 훈련 단계, Prolific, 영속성, 내보내기와 설문 처리, 웹훅, 솔로 모드, 능동 학습 전반에 걸쳐 폭넓은 QA 보강 작업이 이루어졌습니다.
Potato 2.5.0
2026년 출시
Potato를 기존의 NLP·ML 주석 기능과 나란히 질적 연구 워크플로에서도 쓸 만하게 만드는 질적 코딩 중심의 릴리스입니다.
- 주석자 간 일치도 — Krippendorff 알파에 더해 Cohen 카파(쌍별)와 Fleiss 카파(N명)를 관리자 일치도 API로 제공합니다. 주석자 간 일치도 가이드를 참고하세요.
- 새로운 내보내기 도구 —
codebook(코드 계층, 색상, 설명, 사용 횟수를 담은 스키마별 CSV)과quotation_report(텍스트, 오프셋, 출처 문서, 코더를 담은 스팬별 CSV)가 추가되었습니다. - 코드 분석 — 코드 쌍의 동시 출현과, 기존 인스턴스 메타데이터를 활용한 속성별 코드 교차표를 제공하는 관리자 엔드포인트입니다.
Potato 2.4.5
2026년 출시
안정성과 도구를 다듬은 릴리스입니다.
- 검증된 개선 — 솔로 모드 주석 가이드라인을 반복적으로 개선하기 위한 플러그인 방식 프레임워크로, 가이드라인 모순과 메타데이터 유출을 막는 안전장치를 갖췄습니다.
- 설정 검증기 — 설정 키를 알려진 설정 스키마와 대조해 확인하는
python -m potato.validate_cliCLI가 새로 추가되었습니다. - 보안 — 경로 검증에서 형제 디렉터리 접두사를 이용한 경로 탐색 우회를 수정했습니다(GHSA-q9m2-fhv9-3jcf).
- 저장/탐색 상태 동기화, Prolific 연동, 다단계 탐색, 품질 관리 피드백 전반의 수정 사항이 포함되었습니다.
Potato 2.3.0
2026년 3월 9일 출시
Potato 2.3은 Potato 역사상 가장 큰 릴리스로, 에이전트 주석, 솔로 모드, 최선-최악 척도, SSO/OAuth 인증, Parquet 내보내기, 15개의 새로운 데모 프로젝트, 그리고 보안 강화를 도입합니다.
에이전트 주석
인간 주석을 통해 AI 에이전트를 평가하기 위한 완전한 시스템입니다. 12개의 트레이스 형식 변환기, 3가지 특화된 표시 유형, 9개의 사전 구축된 주석 스키마가 포함되어 있습니다.
12개의 트레이스 형식 변환기 — OpenAI, Anthropic, SWE-bench, OpenTelemetry, MCP, CrewAI/AutoGen/LangGraph, LangChain, LangFuse, ReAct, WebArena/VisualWebArena, ATIF, 그리고 원시 브라우저 기록에서 에이전트 트레이스를 가져옵니다. 자동 감지를 사용할 수 있습니다.
agentic:
enabled: true
trace_converter: react # or openai, anthropic, webarena, auto, etc.
trace_file: "data/traces.jsonl"3가지 표시 유형:
- 에이전트 트레이스 표시 — 접을 수 있는 관찰 항목, 보기 좋게 정리된 JSON, 그리고 도구를 사용하는 에이전트를 위한 타임라인 사이드바가 있는 색상으로 구분된 단계 카드
- 웹 에이전트 트레이스 표시 — 클릭 대상, 텍스트 입력, 스크롤 동작을 보여주는 SVG 오버레이가 있는 전체 스크린샷, 그리고 탐색 에이전트를 위한 필름스트립 내비게이션
- 대화형 채팅 표시 — 실시간 채팅 모드(주석자가 프록시를 통해 에이전트와 상호작용)와 대화형 에이전트를 위한 트레이스 검토 모드
턴별 평가 — 세밀한 평가를 위해 전체 트레이스와 함께 개별 단계를 평가합니다.
9개의 사전 구축된 스키마 — agent_task_success, agent_step_correctness, agent_error_taxonomy, agent_safety, agent_efficiency, agent_instruction_following, agent_explanation_quality, agent_web_action_correctness, agent_conversation_quality.
에이전트 프록시 시스템 — 실시간 에이전트 평가를 위한 OpenAI, HTTP, echo 프록시.
솔로 모드
단일 인간 주석자가 LLM과 협업하여 전체 데이터셋을 레이블링하는 12단계 지능형 워크플로로, 다중 주석자 파이프라인 대비 95% 이상의 일치도를 달성하면서도 전체 인간 레이블의 10-15%만 필요로 합니다.
12단계:
- 시드 주석 — 인간이 50개의 다양한 인스턴스를 레이블링합니다
- 초기 LLM 보정 — LLM이 시드 예제를 사용하여 레이블링합니다
- 혼동 분석 — 체계적인 불일치 패턴을 식별합니다
- 지침 개선 — LLM이 제안하고 인간이 업데이트된 지침을 승인합니다
- 레이블링 함수 생성 — ALCHEmist에서 영감을 받은 프로그래밍 방식의 규칙
- 능동 레이블링 — 인간이 가장 유용한 인스턴스를 레이블링합니다
- 자동화된 개선 루프 — 개선된 지침으로 반복적인 재레이블링
- 불일치 탐색 — 인간이 LLM/LF 충돌을 해결합니다
- 엣지 케이스 합성 — LLM이 인간 레이블링을 위한 모호한 예제를 생성합니다
- 단계적 신뢰도 에스컬레이션 — 인간이 신뢰도가 가장 낮은 레이블을 검토합니다
- 프롬프트 최적화 — DSPy에서 영감을 받은 자동화된 프롬프트 탐색
- 최종 검증 — 무작위 표본 검토
solo_mode:
enabled: true
llm:
endpoint_type: openai
model: "gpt-4o"
api_key: ${OPENAI_API_KEY}
seed_count: 50
accuracy_threshold: 0.92다중 신호 인스턴스 우선순위 지정 — 가장 가치 있는 인스턴스를 선택하기 위한 6개의 가중치 풀(불확실, 불일치, 경계, 새로움, 오류_패턴, 무작위).
최선-최악 척도
주석자가 튜플에서 최선과 최악의 항목을 선택하는 효율적인 비교 주석입니다. 균형 잡힌 불완전 블록 설계를 통한 자동 튜플 생성과 세 가지 채점 방법(계수, Bradley-Terry, Plackett-Luce)을 제공합니다.
annotation_schemes:
- annotation_type: bws
name: fluency
tuple_size: 4
best_description: "Most Fluent"
worst_description: "Least Fluent"SSO 및 OAuth 인증
Google OAuth(도메인 제한), GitHub OAuth(조직 제한), 그리고 일반 OIDC(Okta, Azure AD, Auth0, Keycloak)를 갖춘 프로덕션 준비 인증입니다. 자동 등록, 혼합 모드, 세션 관리를 지원합니다.
authentication:
method: google_oauth
google_oauth:
client_id: ${GOOGLE_CLIENT_ID}
client_secret: ${GOOGLE_CLIENT_SECRET}
allowed_domains:
- "umich.edu"
auto_register: trueParquet 내보내기
주석을 Apache Parquet 형식으로 내보내 세 개의 구조화된 파일을 생성합니다: annotations.parquet, spans.parquet, items.parquet. snappy, gzip, zstd, lz4, brotli 압축, 증분 내보내기, 그리고 날짜/주석자 파티셔닝을 지원합니다. pandas, DuckDB, PyArrow, Polars, Hugging Face Datasets와 호환됩니다.
parquet_export:
enabled: true
output_dir: "output/parquet/"
compression: zstd
auto_export: true15개의 새로운 데모 프로젝트
project-hub/에 에이전트 주석(데모 5개), 솔로 모드(데모 3개), 최선-최악 척도(데모 3개), 인증(데모 2개), 내보내기 워크플로(데모 2개)를 다루는 새로운 데모가 추가되었습니다. potato start config.yaml로 어떤 데모든 시작할 수 있습니다.
보안 강화
- 구성 가능한 만료 기간을 갖춘 암호학적으로 안전한 세션 토큰
- 기본적으로 활성화된 CSRF 보호
- 인증 엔드포인트의 속도 제한
- 사용자가 제공한 콘텐츠에 대한 입력 정제
- 모든 패키지를 업데이트한 의존성 감사
- 콘텐츠 보안 정책 헤더
기타 개선 사항
- 지원되지 않는 에이전트 프레임워크를 위한 사용자 정의 트레이스 변환기
- 다중 주석자 검증 샘플링이 포함된 하이브리드 솔로 모드
- 점수 수렴 차트가 있는 BWS 관리자 대시보드 탭
- 날짜 파티셔닝을 통한 증분 Parquet 내보내기
v2.2 대 v2.3 비교
| 기능 | v2.2 | v2.3 |
|---|---|---|
| 에이전트 주석 | 사용 불가 | 변환기 12개, 표시 3개, 스키마 9개 |
| 솔로 모드 | 사용 불가 | 12단계 인간-LLM 워크플로 |
| 최선-최악 척도 | 사용 불가 | 채점 방법 3개의 BWS |
| 인증 | 사용자 이름만 | + Google OAuth, GitHub OAuth, OIDC |
| Parquet 내보내기 | 사용 불가 | 압축 옵션 6개의 3파일 Parquet |
| 데모 프로젝트 | 125개 이상 | 140개 이상 (신규 15개) |
| 보안 | 기본 | CSRF, 속도 제한, CSP, 안전한 세션 |
Potato 2.2.0
2026년 2월 20일 출시
Potato 2.2는 9개의 새로운 주석 스키마, 플러그형 내보내기 시스템, MACE 역량 추정, 55개의 검증된 설문 도구, 그리고 원격 데이터 소스를 갖춘 주요 기능 릴리스입니다.
새로운 주석 스키마 (9개)
이벤트 주석 — 트리거 스팬과 유형이 지정된 인수 역할을 갖춘 n-항 이벤트 구조입니다. 제약된 엔티티 인수와 허브-스포크 호 시각화로 ATTACK, HIRE, TRAVEL과 같은 이벤트를 주석 처리합니다.
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엔티티 연결 — 스팬 주석을 외부 지식 베이스(Wikidata, UMLS, 사용자 정의 REST API)에 연결합니다. 모든 스팬 스키마에 entity_linking: 블록을 추가하여 KB 검색 및 연결을 활성화하세요.
선별 — 빠른 데이터 선별을 위한 Prodigy 스타일의 수락/거부/건너뛰기 인터페이스입니다. 사용자 정의 가능한 레이블, 키보드 단축키, 그리고 고처리량 주석을 위한 자동 진행을 제공합니다.
쌍 비교 — 이진(선호하는 타일 클릭) 또는 척도(슬라이더) 모드로 두 항목을 비교합니다. items_key, allow_tie, 그리고 구성 가능한 범위의 scale: 블록을 지원합니다.
대화 트리 — 노드별 평가, 경로 선택, 분기 비교를 통해 계층적 대화 구조를 주석 처리합니다.
상호참조 체인 — 시각적 표시기로 상호참조하는 텍스트 멘션을 체인으로 그룹화합니다. 엔티티 유형, 단일 항목 제어, 다중 강조 모드를 지원합니다.
세그멘테이션 마스크 — 픽셀 단위 이미지 세그멘테이션을 위한 새로운 fill, eraser, brush 도구.
PDF/문서용 경계 상자 — 문서 주석 작업을 위해 PDF 페이지에 상자를 그립니다.
불연속 스팬 — allow_discontinuous: true는 비연속 텍스트 세그먼트를 단일 스팬으로 선택할 수 있게 합니다.
지능형 주석
MACE 역량 추정 — 참 레이블과 주석자 역량 점수(0.0-1.0)를 공동으로 추정하는 변분 베이즈 EM 알고리즘입니다. radio, likert, select, multiselect 스키마와 함께 작동합니다.
mace:
enabled: true
trigger_every_n: 10
min_annotations_per_item: 3옵션 강조 — 이산 주석 작업에서 정답일 가능성이 높은 옵션을 LLM 기반으로 강조합니다. 가능성이 낮은 옵션은 흐리게 표시하면서 상위 k개 옵션을 별표 표시기로 강조합니다.
ai_support:
option_highlighting:
enabled: true
top_k: 3
dim_opacity: 0.4다양성 정렬 — 임베딩 기반 클러스터링과 라운드 로빈 샘플링을 통해 주석자가 연속된 유사 항목 대신 다양한 콘텐츠를 보도록 보장합니다.
assignment_strategy: diversity_clustering
diversity_ordering:
enabled: true
prefill_count: 100내보내기 시스템
새로운 플러그형 내보내기 CLI(python -m potato.export)는 주석을 6가지 업계 표준 형식으로 변환합니다: COCO, YOLO, Pascal VOC, CoNLL-2003, CoNLL-U, 세그멘테이션 마스크.
python -m potato.export --config config.yaml --format coco --output ./export/원격 데이터 소스
새로운 data_sources: 구성 블록을 통해 URL, S3, Google Drive, Dropbox, Hugging Face, Google Sheets, SQL 데이터베이스에서 주석 데이터를 불러옵니다. 부분 로딩, 캐싱, 자격 증명 관리를 포함합니다.
설문 도구
8개 범주(성격, 정신 건강, 정서, 자기 개념, 사회적 태도, 응답 양식, 단축형, 인구통계)에 걸친 55개의 검증된 설문지입니다. instrument: "tipi"로 사전 연구/사후 연구 단계에서 사용하세요.
기타 개선 사항
- 키프레임 보간을 통한 비디오 객체 추적
- 외부 AI 구성 파일 지원
- 폼 레이아웃 그리드 개선
- PDF, Word, 코드, 스프레드시트용 형식 핸들러
Potato 2.1.0
2026년 2월 5일 출시
Potato 2.1은 인스턴스 표시 시스템, 시각적 AI 지원, 스팬 연결, 다중 필드 스팬 주석, 그리고 레이아웃 사용자 정의를 도입합니다.
인스턴스 표시 시스템
콘텐츠 표시를 주석에서 분리하는 새로운 instance_display 구성 블록입니다. 이미지, 비디오, 오디오, 텍스트, 대화의 어떤 조합이든 모든 주석 스키마와 함께 표시합니다.
instance_display:
fields:
- key: image_url
type: image
display_options:
max_width: 600
zoomable: true
- key: description
type: text
annotation_schemes:
- annotation_type: radio
name: category
labels: [nature, urban, people]text, html, image, video, audio, dialogue, pairwise, code, spreadsheet, document, pdf를 포함한 11가지 표시 유형을 지원합니다.
다중 필드 스팬 주석
이제 스팬 주석 스키마는 동일한 인스턴스 내 여러 텍스트 필드에 걸쳐 주석을 달 수 있는 target_field 옵션을 지원합니다.
annotation_schemes:
- annotation_type: span
name: source_entities
labels: [PERSON, ORGANIZATION]
- annotation_type: span
name: summary_entities
labels: [PERSON, ORGANIZATION]스팬 연결
주석된 스팬 간에 유형이 지정된 관계를 생성하기 위한 새로운 span_link 주석 유형입니다. 방향성 및 비방향성 링크, n-항 관계, 시각적 호 표시, 레이블 제약을 지원합니다.
annotation_schemes:
- annotation_type: span
name: entities
labels:
- name: "PERSON"
color: "#3b82f6"
- name: "ORGANIZATION"
color: "#22c55e"
- annotation_type: span_link
name: relations
span_schema: entities
link_types:
- name: "WORKS_FOR"
directed: true
allowed_source_labels: ["PERSON"]
allowed_target_labels: ["ORGANIZATION"]
color: "#dc2626"시각적 AI 지원
AI 기반 이미지 및 비디오 주석 지원을 위한 4개의 새로운 비전 엔드포인트:
- YOLO — 빠른 로컬 객체 감지
- Ollama Vision — 로컬 비전-언어 모델(LLaVA, Qwen-VL)
- OpenAI Vision — GPT-4o 클라우드 비전
- Anthropic Vision — 비전이 있는 Claude
객체 감지, 사전 주석, 분류, 힌트, 장면 감지, 키프레임 감지, 객체 추적 등의 기능이 포함됩니다.
레이아웃 사용자 정의
HTML 템플릿과 CSS를 사용하여 정교한 사용자 정의 시각적 레이아웃을 생성합니다. Potato는 편집 가능한 레이아웃 파일을 생성하거나, 그리드 레이아웃, 색상으로 구분된 옵션, 섹션 스타일링이 있는 완전한 사용자 정의 템플릿을 제공할 수 있습니다.
task_layout: layouts/custom_task_layout.html콘텐츠 검토, 대화 QA, 의료 검토의 세 가지 예제 레이아웃이 포함되어 있습니다.
레이블 근거
각 레이블이 적용될 수 있는 이유에 대한 균형 잡힌 설명을 생성하여 주석자가 서로 다른 분류 관점을 이해하도록 돕는 네 번째 AI 기능입니다.
ai_support:
features:
rationales:
enabled: true기타 개선 사항
- 신뢰성 향상을 위한 50개 이상의 새로운 테스트
- 반응형 디자인 개선
- 레이아웃 예제를 통한 향상된 project-hub 구성
- 주석 유형 전반의 버그 수정
v2.0 대 v2.1 비교
| 기능 | v2.0 | v2.1 |
|---|---|---|
| 인스턴스 표시 | 주석 해킹을 통해 | 전용 instance_display 블록 |
| 스팬 대상 | 단일 텍스트 필드 | target_field를 통한 다중 필드 |
| 스팬 연결 | 사용 불가 | 완전한 span_link 유형 |
| 시각적 AI | 사용 불가 | YOLO, Ollama Vision, OpenAI Vision, Anthropic Vision |
| 레이아웃 사용자 정의 | 기본 자동 생성 | 자동 생성 + 사용자 정의 템플릿 |
| AI 기능 | 3개(힌트, 키워드, 제안) | 4개(+ 근거) |
Potato 2.0
Potato 2.0은 지능적이고 확장 가능한 주석을 위한 강력한 새 기능을 도입하는 주요 릴리스입니다. 이 섹션에서는 핵심 추가 사항과 개선 사항을 소개합니다.
AI 지원
대규모 언어 모델을 통합하여 지능적인 힌트, 키워드 강조, 레이블 제안으로 주석자를 지원합니다.
지원되는 제공자:
- OpenAI (GPT-4, GPT-3.5)
- Anthropic (Claude 3, Claude 3.5)
- Google (Gemini)
- Ollama (로컬 모델)
- vLLM (자체 호스팅)
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4
api_key: ${OPENAI_API_KEY}
features:
hints:
enabled: true
label_suggestions:
enabled: true오디오 주석
Peaks.js로 구동되는 파형 시각화를 갖춘 모든 기능이 포함된 오디오 주석입니다. 세그먼트를 생성하고, 시간 영역에 레이블을 지정하며, 키보드 단축키로 음성을 주석 처리합니다.
주요 기능:
- 파형 시각화
- 세그먼트 생성 및 레이블링
- 세그먼트별 주석 질문
- 15개 이상의 키보드 단축키
- 서버 측 파형 캐싱
annotation_schemes:
- annotation_type: audio_annotation
name: speakers
mode: label
labels:
- Speaker A
- Speaker B능동 학습
모델 불확실성을 기반으로 주석 인스턴스의 우선순위를 자동으로 지정합니다. 기존 주석으로 분류기를 학습시키고 주석자가 가장 유용한 예제에 집중하도록 합니다.
기능:
- 다양한 분류기 옵션(LogisticRegression, RandomForest, SVC, MultinomialNB)
- 다양한 벡터라이저(TF-IDF, Count, Hashing)
- 재시작 간 모델 지속성
- LLM 강화 선택
- 다중 스키마 지원
active_learning:
enabled: true
schema_names:
- sentiment
min_instances_for_training: 30
update_frequency: 50
classifier:
type: LogisticRegression교육 단계
주요 작업 전에 연습 질문으로 주석자를 검증합니다. 즉각적인 피드백을 제공하고 구성 가능한 합격 기준을 통해 품질을 보장합니다.
기능:
- 정답이 알려진 연습 질문
- 즉각적인 피드백 및 설명
- 구성 가능한 합격 기준
- 재시도 옵션
- 관리자 대시보드의 진행 상황 추적
phases:
training:
enabled: true
data_file: "data/training.json"
passing_criteria:
min_correct: 8
total_questions: 10향상된 관리자 대시보드
주석 작업을 위한 포괄적인 모니터링 및 관리 인터페이스입니다.
대시보드 탭:
- 개요: 고수준 지표와 완료율
- 주석자: 성과 추적, 시간 분석
- 인스턴스: 불일치 점수와 함께 데이터 탐색
- 구성: 실시간 설정 조정
admin_api_key: ${ADMIN_API_KEY}데이터베이스 백엔드
연결 풀링과 트랜잭션 지원을 갖춘 대규모 배포를 위한 MySQL 지원입니다.
database:
type: mysql
host: localhost
database: potato_db
user: ${DB_USER}
password: ${DB_PASSWORD}Potato는 첫 시작 시 필요한 테이블을 자동으로 생성합니다.
주석 기록
타임스탬프, 사용자 ID, 작업 유형과 함께 모든 주석 변경 사항을 완전히 추적합니다. 감사와 행동 분석을 가능하게 합니다.
{
"history": [
{
"timestamp": "2024-01-15T10:30:00Z",
"user": "annotator_1",
"action": "create",
"schema": "sentiment",
"value": "Positive"
}
]
}다단계 워크플로
여러 순차적 단계로 복잡한 주석 워크플로를 구축합니다:
- 동의 - 사전 동의 수집
- 사전 연구 - 인구통계 및 선별
- 안내 - 작업 지침
- 교육 - 연습 질문
- 주석 - 주요 작업
- 사후 연구 - 피드백 설문
phases:
consent:
enabled: true
data_file: "data/consent.json"
prestudy:
enabled: true
data_file: "data/demographics.json"
training:
enabled: true
data_file: "data/training.json"
poststudy:
enabled: true
data_file: "data/feedback.json"v2.0 구성 변경 사항
새로운 구성 구조
Potato 2.0은 더 깔끔한 구성 형식을 사용합니다:
v1 (이전):
data_files:
- data.json
id_key: id
text_key: text
output_file: annotations.jsonv2 (신규):
data_files:
- "data/data.json"
item_properties:
id_key: id
text_key: text
output_annotation_dir: "output/"
output_annotation_format: "json"보안 요구 사항
이제 구성 파일은 task_dir 내에 위치해야 합니다:
# Valid - config.yaml is in the project directory
task_dir: "."
# Valid - config in configs/ subdirectory
task_dir: "my_project/"빠른 비교
| 기능 | v1 | v2.0 | v2.1 | v2.2 | v2.3 |
|---|---|---|---|---|---|
| AI/LLM 지원 | 아니요 | 예 | 예 + 시각적 AI + 근거 | + 옵션 강조 | + 솔로 모드 |
| 에이전트 주석 | 아니요 | 아니요 | 아니요 | 아니요 | 변환기 12개, 표시 3개 |
| 최선-최악 척도 | 아니요 | 아니요 | 아니요 | 아니요 | 예 (채점 방법 3개) |
| 오디오 주석 | 기본 | 완전한 파형 | 완전한 파형 | 완전한 파형 | 완전한 파형 |
| 능동 학습 | 아니요 | 예 | 예 | 예 + 다양성 정렬 | + 솔로 모드 통합 |
| 인스턴스 표시 | 아니요 | 아니요 | 예 | 예 | 예 |
| 스팬 연결 | 아니요 | 아니요 | 예 | 예 | 예 |
| 이벤트 주석 | 아니요 | 아니요 | 아니요 | 예 | 예 |
| 엔티티 연결 | 아니요 | 아니요 | 아니요 | 예 | 예 |
| 쌍/선별/상호참조/트리 | 아니요 | 아니요 | 아니요 | 예 | 예 |
| 레이아웃 사용자 정의 | 아니요 | 자동 생성 | 자동 + 사용자 정의 템플릿 | 자동 + 사용자 정의 템플릿 | 자동 + 사용자 정의 템플릿 |
| 교육 단계 | 아니요 | 예 | 예 | 예 | 예 |
| 관리자 대시보드 | 기본 | 향상됨 | 향상됨 | 향상됨 + MACE | + BWS 탭, 솔로 모드 |
| 데이터베이스 백엔드 | 파일만 | 파일 + MySQL | 파일 + MySQL | 파일 + MySQL | 파일 + MySQL |
| 내보내기 CLI | 아니요 | 아니요 | 아니요 | 예 (COCO, YOLO, CoNLL 등) | + Parquet |
| 인증 | 사용자 이름 | 사용자 이름 | 사용자 이름 | 사용자 이름 | + Google/GitHub OAuth, OIDC |
| 설문 도구 | 아니요 | 아니요 | 아니요 | 55개의 검증된 설문지 | 55개의 검증된 설문지 |
| 원격 데이터 소스 | 아니요 | 아니요 | 아니요 | S3, GDrive, HuggingFace 등 | S3, GDrive, HuggingFace 등 |
마이그레이션 가이드
구성 업데이트 (v1에서 v2로)
-
데이터 구성
yaml# Old id_key: id text_key: text # New item_properties: id_key: id text_key: text -
출력 구성
yaml# Old output_file: annotations.json # New output_annotation_dir: "output/" output_annotation_format: "json" -
구성 파일 위치 구성 파일이 프로젝트 디렉터리 내에 있는지 확인하세요.
서버 시작
# v2 command
python -m potato start config.yaml -p 8000
# Or shorthand
potato start config.yaml시작하기
Potato를 사용해 볼 준비가 되셨나요? 빠른 시작 가이드로 시작하거나 특정 기능을 살펴보세요:
v2.3 기능:
- 에이전트 주석 - 12개의 변환기와 3가지 표시 유형으로 AI 에이전트 평가
- 솔로 모드 - 인간-LLM 협업 레이블링
- 최선-최악 척도 - 채점이 포함된 비교 주석
- SSO 및 OAuth - Google, GitHub, OIDC 인증
- Parquet 내보내기 - 컬럼형 데이터 내보내기
v2.2 기능:
- 이벤트 주석 - n-항 이벤트 구조
- 엔티티 연결 - 지식 베이스 연결
- 선별 - 빠른 데이터 선별
- 상호참조 체인 - 엔티티 상호참조
- 대화 트리 - 계층적 대화 주석
- MACE - 주석자 역량 추정
- 옵션 강조 - AI 지원 옵션 안내
- 다양성 정렬 - 임베딩 기반 항목 정렬
- 내보내기 형식 - 6가지 형식의 내보내기 CLI
- 원격 데이터 소스 - 클라우드 데이터 로딩
- 설문 도구 - 55개의 검증된 설문지
v2.1 기능:
핵심 기능: