新功能
Potato v2.x 版本中新功能和改进的概述。
新功能
本页面介绍 Potato v2.x 各版本的新功能和改进。
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: 块即可启用知识库搜索和链接。
分诊 — Prodigy 风格的接受/拒绝/跳过界面,用于快速数据筛选。可自定义标签、键盘快捷键和自动推进,实现高吞吐量标注。
成对比较 — 以二元(点击偏好选项)或量表(滑块)模式比较两个项目。支持 items_key、allow_tie、scale: 块及可配置范围。
对话树 — 标注层次化对话结构,支持逐节点评分、路径选择和分支比较。
共指链 — 将共指文本提及分组为链,带有可视化指示器。支持实体类型、单例控制和多种高亮模式。
分割掩码 — 新增 fill、eraser 和 brush 工具,用于像素级图像分割。
PDF/文档的边界框 — 在 PDF 页面上绘制框,用于文档标注任务。
不连续片段 — allow_discontinuous: true 允许选择不连续的文本段落作为单个片段。
智能标注
MACE 能力评估 — 变分贝叶斯 EM 算法,联合估计真实标签和标注者能力得分(0.0-1.0)。适用于 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 数据库加载标注数据。包括部分加载、缓存和凭证管理。
调查问卷
55 个经过验证的问卷,涵盖 8 个类别(人格、心理健康、情感、自我概念、社会态度、回应风格、简短表单、人口统计)。在预研究/后研究阶段使用 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]支持 11 种显示类型,包括 text、html、image、video、audio、dialogue、pairwise、code、spreadsheet、document 和 pdf。
多字段片段标注
片段标注方案现在支持 target_field 选项,可在同一实例中跨多个文本字段进行标注。
annotation_schemes:
- annotation_type: span
name: source_entities
target_field: "source_text"
labels: [PERSON, ORGANIZATION]
- annotation_type: span
name: summary_entities
target_field: "summary"
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 辅助的图像和视频标注:
- YOLO — 快速本地目标检测
- Ollama Vision — 本地视觉语言模型(LLaVA、Qwen-VL)
- OpenAI Vision — GPT-4o 云端视觉
- Anthropic Vision — 带视觉功能的 Claude
功能包括目标检测、预标注、分类、提示、场景检测、关键帧检测和对象跟踪。
布局自定义
使用 HTML 模板和 CSS 创建复杂的自定义视觉布局。Potato 生成可编辑的布局文件,或者您可以提供完全自定义的模板,包括网格布局、颜色编码选项和部分样式。
task_layout: layouts/custom_task_layout.html包含三个示例布局:内容审核、对话问答和医学审查。
标签理据
第四项 AI 功能,生成关于每个标签为何可能适用的平衡解释,帮助标注者理解不同的分类视角。
ai_support:
features:
rationales:
enabled: true其他改进
- 50 多个新测试以提高可靠性
- 响应式设计改进
- 增强的项目中心组织,包含布局示例
- 多种标注类型的错误修复
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
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 |
|---|---|---|---|---|
| AI/LLM 支持 | 否 | 是 | 是 + 视觉 AI + 理据 | + 选项高亮 |
| 音频标注 | 基础 | 完整波形 | 完整波形 | 完整波形 |
| 主动学习 | 否 | 是 | 是 | 是 + 多样性排序 |
| 实例显示 | 否 | 否 | 是 | 是 |
| 片段链接 | 否 | 否 | 是 | 是 |
| 事件标注 | 否 | 否 | 否 | 是 |
| 实体链接 | 否 | 否 | 否 | 是 |
| 成对比较/分诊/共指/对话树 | 否 | 否 | 否 | 是 |
| 布局自定义 | 否 | 自动生成 | 自动 + 自定义模板 | 自动 + 自定义模板 |
| 训练阶段 | 否 | 是 | 是 | 是 |
| 管理仪表板 | 基础 | 增强 | 增强 | 增强 + MACE |
| 数据库后端 | 仅文件 | 文件 + MySQL | 文件 + MySQL | 文件 + MySQL |
| 导出 CLI | 否 | 否 | 否 | 是(COCO、YOLO、CoNLL 等) |
| 调查问卷 | 否 | 否 | 否 | 55 个经验证的问卷 |
| 远程数据源 | 否 | 否 | 否 | 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.2 功能:
- 事件标注 - N 元事件结构
- 实体链接 - 知识库链接
- 分诊 - 快速数据筛选
- 共指链 - 实体共指
- 对话树 - 层次化对话标注
- MACE - 标注者能力评估
- 选项高亮 - AI 辅助选项引导
- 多样性排序 - 基于嵌入的项目排序
- 导出格式 - 支持 6 种格式的导出 CLI
- 远程数据源 - 云端数据加载
- 调查问卷 - 55 个经验证的问卷
v2.1 功能:
核心功能: