Potato 2.1: Exibição de Instâncias, IA Visual e Vinculação de Spans
O Potato 2.1.0 traz o sistema de exibição de instâncias, suporte de IA visual para anotação de imagens e vídeos, vinculação de spans, spans multicampo e personalização de layout.
Nota: Este post descreve o Potato 2.1 como ele era no lançamento. Algumas chaves de configuração e recursos foram atualizados em versões posteriores. Consulte a documentação atual para a sintaxe de configuração mais recente.
O Potato 2.1.0 está disponível. Ele adiciona cinco coisas: um sistema de exibição de instâncias completo, assistência de IA para anotação de imagens e vídeos, vinculação de spans, spans multicampo e layouts personalizados.
Sistema de exibição de instâncias
A grande novidade no 2.1 é o bloco de configuração instance_display. Antes disso, exibir uma imagem ao lado de um conjunto de botões de opção exigia uma solução improvisada, como criar um esquema image_annotation com min_annotations: 0. Agora você pode definir o que exibir e o que coletar separadamente.
instance_display:
layout:
direction: horizontal
gap: 24px
fields:
- key: image_url
type: image
label: "Image to Classify"
display_options:
max_width: 600
zoomable: true
- key: description
type: text
label: "Context"
annotation_schemes:
- annotation_type: radio
name: category
labels: [nature, urban, people, objects]Ele suporta 11 tipos de conteúdo: text, html, image, video, audio, dialogue, pairwise, code, spreadsheet, document e pdf. Você pode combinar vários campos de exibição com qualquer esquema de anotação, organizá-los na horizontal ou na vertical e ativar a anotação de spans para campos de texto com span_target: true.
Um recurso que as pessoas vêm pedindo são avaliações de diálogo por turno. Você pode colocar um widget Likert embutido em turnos individuais de conversa, para que os anotadores avaliem um falante específico sem sair da visualização da conversa.
Leia a documentação completa de exibição de instâncias →
Anotação de spans multicampo
A anotação de spans agora aceita a opção target_field, que permite anotar em mais de um campo de texto na mesma instância. Você precisa disso para tarefas como avaliação de resumos, em que você marca entidades tanto no documento de origem quanto no resumo.
annotation_schemes:
- annotation_type: span
name: source_entities
target_field: "source_text"
labels: [PERSON, ORGANIZATION, LOCATION]
- annotation_type: span
name: summary_entities
target_field: "summary"
labels: [PERSON, ORGANIZATION, LOCATION]As anotações de saída são indexadas pelo nome do campo, então fica claro de qual campo de texto cada span veio.
Leia a documentação atualizada de anotação de spans →
Vinculação de spans
O novo tipo de anotação span_link lida com extração de relações: você cria relacionamentos tipados entre spans que já anotou. Isso cobre tarefas como construção de grafos de conhecimento, resolução de correferência e análise de discurso.
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"
- name: "COLLABORATES_WITH"
directed: false
allowed_source_labels: ["PERSON"]
allowed_target_labels: ["PERSON"]
color: "#06b6d4"Os links podem ser direcionados ou não direcionados, n-ários (unindo mais de dois spans) e aparecem como arcos desenhados acima do texto. As restrições de rótulo permitem definir quais tipos de entidade podem participar de cada tipo de relacionamento.
Leia a documentação completa de vinculação de spans →
Suporte de IA visual
O Potato 2.1 adiciona quatro endpoints de visão, que trazem assistência de IA para anotação de imagens e vídeos pela primeira vez. Até agora os recursos de IA só funcionavam com texto.
Quatro endpoints de visão
O YOLO é o ideal para detecção de objetos rápida e precisa com inferência local. Ele suporta as variantes do YOLOv8 e o YOLO-World para detecção de vocabulário aberto.
ai_support:
enabled: true
endpoint_type: "yolo"
ai_config:
model: "yolov8m.pt"
confidence_threshold: 0.5
iou_threshold: 0.45O Ollama Vision executa modelos de visão-linguagem localmente por meio do Ollama. Ele suporta LLaVA, Llama 3.2 Vision, Qwen2.5-VL, BakLLaVA e Moondream.
ai_support:
enabled: true
endpoint_type: "ollama_vision"
ai_config:
model: "llava:latest"
base_url: "http://localhost:11434"O OpenAI Vision faz análise de visão na nuvem com o GPT-4o e níveis de detalhe configuráveis.
ai_support:
enabled: true
endpoint_type: "openai_vision"
ai_config:
api_key: "${OPENAI_API_KEY}"
model: "gpt-4o"
detail: "auto"O Anthropic Vision usa os recursos de visão do Claude para compreensão e classificação de imagens.
ai_support:
enabled: true
endpoint_type: "anthropic_vision"
ai_config:
api_key: "${ANTHROPIC_API_KEY}"
model: "claude-sonnet-4-20250514"Recursos de IA para imagens
Em tarefas de imagem, a IA visual oferece quatro modos de assistência:
- A detecção encontra objetos que correspondem aos seus rótulos e desenha caixas delimitadoras de sugestão como sobreposições tracejadas
- A pré-anotação (Auto) detecta todos os objetos da imagem e cria sugestões para um humano revisar
- A classificação rotula uma região selecionada ou a imagem inteira e fornece uma pontuação de confiança
- As dicas apontam os anotadores na direção certa sem revelar a localização exata, o que é útil para treinamento
annotation_schemes:
- annotation_type: image_annotation
name: object_detection
tools: [bbox, polygon]
labels:
- name: "person"
color: "#FF6B6B"
- name: "car"
color: "#4ECDC4"
ai_support:
enabled: true
features:
detection: true
pre_annotate: true
classification: false
hint: trueRecursos de IA para vídeo
Em tarefas de vídeo, a IA visual adiciona detecção de cenas (encontra os limites das cenas e sugere segmentos temporais), detecção de keyframes (seleciona os momentos significativos) e rastreamento de objetos (sugere onde um objeto está ao longo dos quadros).
Fluxo de aceitar e rejeitar
As sugestões da IA aparecem como sobreposições tracejadas. Os anotadores podem aceitar uma (duplo clique), rejeitar uma (clique com o botão direito), aceitar todas ou limpar todas. O humano permanece no comando; a IA apenas faz a primeira passagem tediosa.
Endpoints de visão e texto separados
Você pode apontar tarefas de texto e tarefas visuais para endpoints de IA diferentes, para que cada tipo de conteúdo use o modelo mais adequado a ele:
ai_support:
enabled: true
endpoint_type: "ollama" # Text annotations
visual_endpoint_type: "yolo" # Image/video annotations
ai_config:
model: "llama3.2"
visual_ai_config:
model: "yolov8m.pt"
confidence_threshold: 0.5Leia a documentação completa de suporte de IA visual →
Personalização de layout
O Potato 2.1 permite criar layouts visuais personalizados. Por padrão, ele gera um arquivo editável layouts/task_layout.html, e você pode substituí-lo pelo seu próprio template HTML com layouts em grade CSS, opções com cores codificadas e estilização de seções.
task_layout: layouts/custom_task_layout.htmlHá três layouts de exemplo em project-hub/layout-examples/. O de moderação de conteúdo tem um banner de aviso, uma grade de duas colunas e severidade com cores codificadas. O de QA de diálogo mostra metadados do caso, avaliações Likert circulares e avaliações agrupadas. O de revisão médica usa um estilo de relatório estruturado.
Os layouts personalizados se integram bem com o novo sistema instance_display: o conteúdo de exibição é renderizado acima dos seus formulários de anotação personalizados.
Leia a documentação completa de personalização de layout →
Outras melhorias
Justificativas de rótulos
Uma quarta capacidade de IA se junta às dicas, ao destaque de palavras-chave e às sugestões de rótulo. As justificativas escrevem uma explicação equilibrada de por que cada rótulo pode se aplicar, o que ajuda os anotadores a entender o raciocínio por trás de uma classificação em vez de apenas adivinhar.
ai_support:
features:
rationales:
enabled: trueCorreções de bugs e testes
- Mais de 50 novos testes para maior confiabilidade
- Correções de design responsivo nos tipos de anotação
- Um project-hub mais organizado, agora com exemplos de layout
Atualizando para a v2.1
pip install --upgrade potato-annotationSuas configurações existentes da v2.0 continuam funcionando sem alterações. Tudo que é novo é opcional, por meio de blocos de configuração extras como instance_display, esquemas span_link e endpoints de IA visual.
Primeiros passos
- Novidades, a visão geral completa dos recursos da v2.1
- Exibição de Instâncias, exibição de conteúdo multimodal
- Suporte de IA Visual, IA para anotação de imagens e vídeos
- Vinculação de Spans, anotação de relacionamentos entre entidades
- Personalização de Layout, templates HTML personalizados
Para o changelog completo e quaisquer chaves de configuração que mudaram, consulte as notas de lançamento da v2.1.0 no repositório.
Tem dúvidas ou comentários? Entre no nosso Discord ou abra uma issue no GitHub.