Novidades
Novidades do Potato v2.x. A versão 2.8 acrescenta visão computacional, nuvens de pontos 3D, mapas de profundidade, episódios de robôs e avaliação de modelos de mundo, além de concordância corrigida pelo acaso sobre geometria e tempo. 61 tipos de anotação, 24 tipos de exibição.
Esta página reúne os novos recursos e melhorias das versões do Potato v2.x.
Potato 2.10.3
Lançado em outubro de 2026
O Potato 2.10.3 corrige três bugs encontrados na 2.10.2 depois da publicação.
pip install --upgrade potato-annotation- Concordância com dados unânimes. Quando todos os anotadores davam a mesma resposta em todos os itens,
/admin/api/agreementdevolvia o esquema como{"error": "float division by zero"}. Nesse caso a concordância ao acaso é 1, então alfa e os dois kappas ficam indefinidos. A rota agora os informa comonull, compercent_agreementem 1,0 e a mesma nota que/admin/iaadá, e a média geral deixa o esquema de fora. potato deploy button --dry-runfica offline. Sem--hf-backup-repo, a execução de teste perguntava ao HuggingFace a quem pertencia o token, e um token inválido terminava em um traceback. Agora a execução de teste usa o marcador<hf-account>/<name>-annotations, como fazpotato deploy up --dry-run, e uma execução real informa um token rejeitado com uma mensagem de erro.- Importar o Potato não calcula mais o hash de uma senha. O Potato calculava um hash PBKDF2 na importação, então todo processo gastava 100.000 iterações ao iniciar, ferramentas de linha de comando incluídas. Agora o hash é gerado na primeira vez que um nome de usuário desconhecido tenta entrar. A importação também volta a funcionar no Pyodide, cujo
hashlibnão tempbkdf2_hmac.
As notas de versão trazem a lista completa.
Potato 2.10.2
Lançado em outubro de 2026
O Potato 2.10.2 corrige recursos que não funcionavam em uma instalação via pip ou na imagem Docker, fecha formas de entrar como outro usuário, faz o backend MySQL funcionar e corrige estatísticas de concordância. Se você publicou números de concordância calculados com uma versão anterior, recalcule-os.
pip install --upgrade potato-annotation- Contas SSO aceitavam qualquer senha. Em uma tarefa com OAuth, o formulário de senha deixava qualquer pessoa entrar em uma conta que um provedor havia registrado. Identidades SSO não se autenticam mais por senha, e em um estudo com MySQL um estranho não consegue mais registrar o nome de usuário de um anotador existente e herdar o trabalho dele.
ai_supporte os instrumentos de pesquisa falhavam em uma instalação via pip. O wheel deixava de fora os prompts de IA e os instrumentos de pesquisa, então um estudo que usasse qualquer um deles parava na inicialização. Os contêineres e os destinos dopotato deploytambém pulavam dez subsistemas, entre eles o suporte a chat.- O backend MySQL nunca era ativado. Uma configuração que o indicava armazenava as anotações em disco. Instale o driver com
pip install 'potato-annotation[mysql]'; a exportação, os backups e opotato deploy pullagora leem o banco de dados. - 59 correções de estatísticas de concordância, cada uma conferida com uma implementação de referência como scipy, sklearn ou o pacote
krippendorff. Um coeficiente indefinido é relatado como indefinido em vez de 1,0, o alfa ordinal usa a métrica ordinal de Krippendorff, o MACE estima a competência de spammers puros em cerca de 0,01 em vez de 0,35, os resultados não mudam mais depois de uma reinicialização, eplackett_luceajusta a verossimilhança best-worst em vez de repetir o Bradley-Terry. - Nuvens de pontos em coordenadas de mapa mantêm a precisão. Um arquivo LAS em coordenadas UTM era desenhado em uma grade com resolução de até 0,5 m. O Potato agora o serve em relação a uma origem local e salva as anotações nas coordenadas do próprio arquivo.
As notas de versão trazem a lista completa.
Potato 2.10.1
Lançado em outubro de 2026
O Potato 2.10.1 corrige cinco problemas no potato deploy e no backup que foram encontrados depois da 2.10.0. Atualize antes de confiar em uma execução de teste.
pip install --upgrade potato-annotation- Uma execução de teste passava em implantações que o
updepois recusava. Heroku ou ECS Express sem--backup, Render ou Railway sem armazenamento de backup para onde enviar o projeto, e Fly com um projeto grande demais para ser enviado inline exibiam todos um plano sem erros. O plano e oupagora executam a mesma verificação, e ambos exibemREFUSED: <reason>e encerram com o código de saída 2. --demoera oferecido onde não pode funcionar. Render, Railway e ECS Express enviam seu projeto para o armazenamento do backup, então precisam de--backup hfou--backup s3mesmo para um estudo descartável. O aviso da verificação prévia agora oferece--demoapenas para Heroku e HuggingFace.--cloud jetstream2planejava o flavor errado. A execução de teste mostravam1.small, enquanto oupcriava umm3.small.- Dois preços estavam errados.
potato deploy providersinformava cerca de $16 por mês paraaws-ec2e cerca de $7 parafly. Os planos calculam $18.31 e $5.85, e os resumos agora informam cerca de $18 e cerca de $6. backup: {enabled: false}não desligava o backup quando a configuração ainda tinha um blocohuggingface_backup. Agora o bloco novo prevalece.
As notas de versão trazem a lista completa.
Potato 2.10.0
Lançado em outubro de 2026
O Potato 2.10.0 acrescenta oito plataformas de hospedagem ao potato deploy, faz backup das anotações em hosts cujo disco não sobrevive a uma reinicialização e adiciona text_as_image, que mostra o texto de cada item como uma imagem para que os anotadores não possam colá-lo em um chatbot. Executar o Potato localmente ou na nuvem mostra qual host serve para qual estudo.
O Python 3.9 ou posterior agora é declarado como requisito. Uma dependência central já o exigia, então as versões anteriores também não podiam ser instaladas no 3.7 ou no 3.8, e agora o pip avisa isso antes de instalar qualquer coisa.
pip install --upgrade potato-annotationImplantação
- AWS, de três formas.
--provider awscria uma instância do Lightsail a um preço fixo de $12 por mês que precisa apenas de permissõeslightsail:*.aws-ec2é para contas em que o Lightsail está desativado, eaws-ecsexecuta o contêiner no ECS Express Mode atrás de um endereço HTTPS gerenciado pela AWS, a um custo maior e com backup obrigatório. - Heroku, em um dyno Basic. O Heroku apaga o disco diariamente, então o Potato se recusa a implantar lá sem
--backupou--demo. - Fly e Railway, cada um com um volume persistente.
- Hetzner, Vultr e Linode, como VMs configuradas da mesma forma que na DigitalOcean, com um certificado Let's Encrypt para o endereço IP.
- OpenStack, com uma predefinição para o Jetstream2. O Jetstream2 dá a cada instância um nome DNS, então a tarefa recebe um certificado comum. Nuvens OpenStack de campus e a EGI também funcionam.
- Botões de implantação.
potato deploy button config.yaml --target heroku|render|aws|railwaygrava no seu repositório os arquivos de um botão "Deploy to Heroku", "Deploy to Render" ou "Launch Stack" da AWS, para que outras pessoas possam executar a tarefa nas próprias contas.
Os novos extras deploy-aws e deploy-openstack instalam os clientes da AWS e do OpenStack.
Backup e restauração
Um novo bloco backup copia a saída das anotações e snapshots dos bancos de dados SQLite para um dataset do HuggingFace, um bucket compatível com S3 ou ambos, a cada cinco minutos. Quando um servidor inicia com o diretório da tarefa vazio e o backup contém dados, o Potato os restaura antes de carregar qualquer coisa, então os anotadores continuam de onde pararam após uma reinicialização. Passe --backup hf, --backup s3 ou --backup hf,s3 para potato deploy up. O bloco antigo huggingface_backup é lido como um bloco backup com um único sink e a restauração desligada, então as implantações existentes se comportam como antes.
Texto como imagem
text_as_image: true renderiza o texto de cada item como um PNG no servidor e remove as palavras da página, do registro do item embutido nela e dos endpoints JSON, então o anotador não tem nada para selecionar, copiar ou colar. O recurso torna mais trabalhoso colar um item em um chatbot, e o anotador ainda pode redigitar o texto ou aplicar OCR a uma captura de tela. Um leitor de tela não obtém nada da imagem, então o recurso não serve para um estudo com anotadores que usam um. O Potato se recusa a iniciar quando text_as_image é combinado com um esquema de span, um esquema que lê o campo de texto do item, o Pocket Mode ou o Rooms. Contribuição de @Eyecatch3r no PR #169.
Correções que afetam os dados coletados
- Uma reinicialização em um host sem disco persistente perdia o trabalho anterior. O servidor iniciava vazio, e o novo estado de um anotador que voltava sobrescrevia a cópia do backup. A restauração na inicialização corrige isso.
- A DigitalOcean com
--volume-gbmantinha as anotações no disco raiz, e não no volume. A saída e os bancos de dados SQLite agora ficam em/data. - O backup no HuggingFace não fazia nada na imagem publicada, que não incluía o
huggingface_hub, e no Render e na DigitalOcean--hf-tokendefinia uma variável que nada lia. A imagem agora instala o novo extrahosting. - As implantações no Render iniciavam sem o projeto, e o contêiner encerrava com "config file not found". O contêiner agora baixa o projeto ao iniciar e verifica seu sha256.
As notas de versão trazem a lista completa.
Potato 2.9.2 a 2.9.4
Lançado em setembro de 2026
Atualize para a 2.9.4 ou posterior se pessoas em quem você não confia puderem acessar seu servidor. Antes da 2.9.4, o formulário /forgot-password criava um token de redefinição para qualquer nome de usuário enviado e mostrava o link de redefinição na página, então qualquer pessoa que conseguisse acessar o servidor podia assumir qualquer conta com senha, inclusive contas de administrador (GHSA-43v4-43pw-4rp2). O formulário agora não cria nenhum token. Links de redefinição vêm apenas de POST /admin/create_reset_token e do comando potato reset-password. Relatado, com um patch, por HDEF.
- Celulares (2.9.4). Em telas sensíveis ao toque, os controles têm pelo menos 44 px de altura, o cabeçalho ocupa duas linhas em vez de três, o multirate vira uma lista de linhas rotuladas e o destaque de spans funciona com um toque longo.
- Anotadores máquina (2.9.4). Um bloco
machine_annotatorsdeclara avaliadores que são programas, como detectores ou LLMs. O/admin/iaapassa então a relatar a concordância humano-humano, máquina-máquina e combinada, com os números principais calculados só sobre humanos, e as exportações csv, tsv e parquet ganham uma colunaannotator_originquando algum registro veio de uma máquina. - Cookies de sessão atrás de um prefixo de URL (2.9.4). Dois estudos servidos em
/app1e/app2no mesmo host compartilhavam um único cookie de sessão, então fazer login em um desconectava você do outro. O cookie agora tem o prefixo como escopo. Corrigido por @Eyecatch3r no PR #172. - Navegação mais rápida (2.9.2). Scripts e folhas de estilo permanecem em cache entre itens, e o botão Next faz menos idas e voltas. Em um link com 80 ms de ida e volta, o Next em uma tarefa com botões de opção passou de cerca de 2,6 s para cerca de 0,8 s.
- Edições de texto logo antes do Next (2.9.2). Limpar uma caixa de texto e pressionar Next em menos de um segundo mantinha o texto antigo. Agora todo salvamento aplica primeiro as edições pendentes.
Potato 2.9.0
Lançado em setembro de 2026
O Potato importa projetos do brat, doccano, Prodigy, CoNLL e REFI-QDA, e transcreve e faz a diarização de áudio localmente. As exportações registram se uma forma de imagem foi desenhada por uma pessoa, proposta por um modelo ou importada, e em qual sala um voto foi dado. A maior parte da versão são correções de bugs.
Execute potato validate --strict em cada configuração antes de atualizar. Várias mudanças podem fazer um estudo que funcionava na 2.8.2 se recusar a iniciar ou se comportar de outro jeito: nomes de esquema duplicados em uma mesma fase são recusados, min_annotators_per_instance virou um alias do limite por item, require_fully_annotated: true passa a ser aplicado, uma fase que falha ao carregar aborta a inicialização, e os deslocamentos de span são contados em pontos de código, e não em unidades UTF-16. Os valores de concordância de esquemas com valores de conjunto, de ordem, de matriz e ordinais rotulados mudam e devem ser recalculados. As notas de versão trazem a lista completa.
pip install --upgrade potato-annotationImportação e exportação
- Importadores para brat, doccano, Prodigy, CoNLL-2003/CoNLL-U e REFI-QDA
.qdpx, e um exportador.qdpx. Veja Importando um projeto. - Proveniência nas exportações. Cada forma de imagem registra se uma pessoa a desenhou ou um modelo a propôs (
source,ai_model,confidence,edited,carried_over,import_format). Os votos dados em uma sala multijogador trazem a sala, o papel, o voto inicial, se ele mudou depois da revelação e o número de votantes. - As exportações de spans em csv, jsonl e parquet incluem o texto coberto.
potato export --format adjudicationé novo, e todo tipo de esquema agora tem um controle de adjudicação para “adotar uma resposta” (antes, só radio e likert tinham).
Áudio, vídeo e transcrições
- Transcrição e diarização de falantes locais com faster-whisper e sherpa-onnx, sem PyTorch e sem token do Hugging Face. Instale
potato-annotation[transcribe]e depois executepotato transcripts <dir> --transcribe --diarize --num-speakers N -o out.json. Veja Formatos de transcrição. segment_schemesrenderiza qualquer tipo de anotação dentro de um segmento de áudio ou vídeo. Antes, a chave era aceita e ignorada.
Concordância, qualidade e IA
- Concordância ao longo do tempo, cruzada com as revisões do livro de códigos, com um gatilho de recalibração em
/admin/iaa. - Um modo de revisão de saídas de modelo que inclui a fatia de predições vazias, para que a revocação possa ser calculada.
ai_budget.cap_usdse recusa a iniciar uma execução que não consegue pagar, eai_budget.pricesdefine na configuração o preço de cada modelo.ai_supportregistrafinal_annotationepre_annotation_seeds, então as taxas de aceitação podem ser medidas com os seus próprios dados.
Implantação e interface
- Suporte a proxy reverso e a prefixo de caminho em todas as páginas (#168, Aldo Costa). Veja Proxy reverso.
card_sortfunciona sem mouse, e os movimentos são anunciados aos leitores de tela.resizable,max_heightemin_heightfuncionam em todos os tipos de exibição.
Correções que afetam os resultados
/admin/api/agreementnunca produzia um número e comparava os valores armazenados em vez dos nomes dos rótulos, então todo esquema categórico mostrava concordância perfeita.- O segundo anotador em um estudo com dois anotadores por item era mandado para a página de conclusão, e toda resposta que ele desse a partir dali se perdia.
- As sugestões de IA se referiam ao item errado em todas as estratégias de atribuição, exceto
fixed_order. - Os cadastros nunca eram salvos na configuração padrão em memória, então, depois de uma reinicialização, qualquer pessoa podia reivindicar um nome de usuário existente.
Agradecemos a Aldo Costa (@Eyecatch3r) por #168 e #171, e a @ruthenian8 por relatar e diagnosticar o #170.
Potato 2.8.2
Lançado em agosto de 2026
A 2.8.1 não continha duas das cinco correções de segurança descritas nas suas notas de versão: a correção de SSRF nos endpoints de mídia (GHSA-9394-85jj-2mhj) e o reforço do modo de depuração (GHSA-r4ww-vc5h-35qf). A 2.8.2 traz as duas. Se você atualizou para a 2.8.1 por causa de qualquer uma delas, atualize de novo. Veja as notas da versão 2.8.2.
Potato 2.8.1
Lançado em agosto de 2026
Uma versão de segurança. Ela corrigiu uma execução remota de código pelo agente de programação ao vivo (GHSA-cm4p-5rfv-x252), uma configuração de administração legível sem a chave de administrador e um webhook de ingestão de traces que aceitava qualquer requisição. Atualize se você roda o Potato em qualquer lugar que não seja o localhost, e vá direto para a 2.8.2, que traz as duas correções que faltavam na 2.8.1.
Potato 2.8.0
Lançado em agosto de 2026
O Potato era uma plataforma de anotação de texto com um modo de imagem. Agora cobre imagens, vídeo, digitalizações de gigapixels, nuvens de pontos 3D, mapas de profundidade, episódios de robôs, rollouts de vídeo generativo e ancoragem visão-linguagem. Para cada um deles, o Potato informa a concordância corrigida pelo acaso.
Atualize se você instalou pelo PyPI. Os wheels até a 2.7.1 declaravam os dados do pacote com um glob de um só nível, então 27 templates em subdiretórios ficaram de fora de todos os wheels. As rotas de configuração do modo solo, as páginas de administração, a calibração de juízes e o mapa do corpus estavam todos quebrados para quem rodou pip install; quem rodava a partir de um checkout do git nunca viu o problema. Corrigido no PR #164 por @0x6362.
pip install --upgrade potato-annotationConcordância sobre geometria e tempo
- Concordância corrigida pelo acaso para rótulos espaciais, decomposta em detecção (se os anotadores encontraram os mesmos objetos), classificação (se deram a eles o mesmo nome) e localização (se os colocaram no mesmo lugar, informada como σ em relação a uma linha de base empírica de acaso, mais um teste KS).
- STAPLE para o consenso de máscaras. Ele estima uma fronteira latente e uma sensibilidade e uma especificidade para cada avaliador. Em um corpus em que dois anotadores cuidadosos ficam em minoria, três contra dois, diante de anotadores ruidosos, o voto majoritário obtém Dice 0,846 em relação à verdade e o STAPLE obtém 1,000.
- IoU 3D rotacionado exato, então a concordância sobre cuboides é correta para dados de drones, de câmeras de mão e de ambientes internos, e não só para caixas niveladas.
- Concordância temporal informada como uma varredura por várias tolerâncias de pareamento, porque concordância a 0,25 s é uma afirmação diferente de concordância a 2 s.
- Valores indefinidos se explicam. O α é de fato indefinido em um corpus unânime, e um
NaNsem explicação parece um cálculo quebrado.
Isso também corrige um bug. A adjudicação comparava as chaves de uma anotação, e os esquemas de imagem guardam tudo sob uma única chave chamada _data. Por isso todo par de imagens tinha concordância 1,0, de modo que dois anotadores que não concordavam em nada pareciam unânimes e nenhuma imagem jamais era encaminhada para revisão.
Visão
- Primitivas geométricas: polilinhas, elipses, cuboides 2D, conjuntos de pontos-chave com topologia de esqueleto e flags de visibilidade do COCO, e máscaras de pincel identificadas por instância.
- Clique para segmentar no navegador, com MobileSAM sobre ONNX Runtime Web, cerca de 132 ms por clique, sem GPU e sem chamada de rede por clique.
- Prompts de texto de vocabulário aberto. Digite uma frase e cada correspondência ganha uma caixa. Grounding DINO, Apache-2.0, também no navegador.
- Propagação de máscaras em vídeo com os módulos de memória do SAM 2, medida em 0,974–0,979 de IoU por quadro, sem degradação ao longo da sequência. Esta roda no servidor por decisão de projeto; o navegador tem um caminho separado e mais leve que leva a máscara adiante de um quadro para o seguinte.
- Zoom profundo para imagens de gigapixels, servidas tanto como DZI quanto como IIIF Image API 3.0, com máscaras de pincel na resolução total da imagem original.
- Ingestão de mídia: TIFF multipágina de 16 bits, HEIC, RAW de câmera e ProRes/MKV/MOV por meio de um proxy no servidor com cache.
- 15 formatos de importação e 29 de exportação, 11 deles com ida e volta. O Darwin funciona nas duas direções.
Os atalhos de teclado da anotação de imagens agora seguem por padrão as convenções do V7: b pincel, r retângulo, f preenchimento, k ponto-chave, v seleção. Defina keybinding_profile: legacy no esquema para restaurar os atalhos antigos em um estudo que já está em campo.
3D, profundidade e robótica
spatial_annotationpara nuvens PCD, PLY, LAS, KITTI.bine.xyz, com cuboides 3D, pontos, polilinhas e segmentos por ponto, nível de detalhe por octree e painéis ortográficos em fatias. A rotação é armazenada como quatérnio, então a inclinação de montagem que um campo só de guinada descartaria sem aviso sobrevive a uma ida e volta pelo KITTI.- Mapas de profundidade em PNG/TIFF de 16 bits, NPY, PFM e EXR, com janelamento, mapas de cores, leitura em metros sob o cursor e retroprojeção para o mesmo visualizador 3D.
- Projeção com calibração, então um cuboide desenhado em 3D aparece em cada imagem de câmera e pode ser conferido em 2D.
episode_annotationcoloca N fluxos de vídeo sincronizados e M faixas de séries temporais do robô em uma única linha do tempo, com segmentação em fases, resultados por fase e curvas densas de recompensa. Importa LeRobot v2, RLDS/TFDS e HDF5. A subamostragem das faixas preserva mínimos e máximos, então um pico de força de um único quadro sobrevive à passagem para uma faixa de 300 pixels.
Avaliação
rollout_evaluationmostra de 2 a N vídeos gerados em um mesmo relógio e pede ao anotador que marque o quadro em que o mundo deixa de fazer sentido e depois indique qual propriedade física ou causal falhou. Os painéis podem ser mostrados às cegas e embaralhados de forma estável para cada anotador.grounding_evaleregion_captionpontuam a ancoragem por IoU em quatro limiares e o apontamento pela taxa de pontos que caem dentro da região, porque um ponto não tem área e o IoU contra um ponto é sempre zero. A falta de ancoragem é contada à parte.
Todo o resto
- Conversas em threads. A exibição
dialoguerenderiza a estrutura de respostas a partir doreply_tode cada turno.potato convokitimporta qualquer corpus do ConvoKit e--format convokitexporta de volta, sem depender deconvokit. - Telemetria de desenho, com tempo por forma, dinâmica dos traços, contagem de revisões e latência de aceitação das sugestões de IA. Pré-rótulos aceitos em bloco fazem a concordância subir sem que a acurácia suba, porque anotadores que aceitam a mesma sugestão são unânimes por construção. O tempo é um sinal de processo que separa a revisão da aprovação automática onde os rótulos não conseguem.
- Ingestão ao vivo de banco de dados. Linhas criadas depois da inicialização passam a ser anotáveis dentro de
poll_interval_seconds, sem reiniciar (#166). - Especificações legíveis por máquina. Um JSON Schema que cobre 159 chaves de configuração, 61 tipos de anotação e 24 tipos de exibição, mais um documento OpenAPI com 419 caminhos. Os dois são gerados a partir do código e a CI falha quando qualquer um deles diverge, então um editor ou um agente de programação consegue verificar uma configuração sem inventar opções.
- Nenhuma requisição externa. Todas as folhas de estilo, scripts, fontes e ícones agora são servidos a partir da instalação, nos 14 templates. O
styles.csscomeçava com um@importdo Google Fonts, que enviava o endereço IP de cada anotador a terceiros ao carregar a página, e a página de login trazia um favicon de terceiros. As duas coisas foram removidas. - A aba Instances da administração passou de quadrática a linear. Com 2000 itens, o tempo caiu de 15,1 s para 23 ms.
Potato 2.7.2
Lançado em agosto de 2026
Registro de teclas para campos de texto livre. O Potato registra o tempo por trás de uma resposta e nunca os caracteres, e isso basta para distinguir o que foi digitado do que foi colado.
- Registro de teclas. Captura cega ao conteúdo de pausas, rajadas, revisões e colagens em todo campo de texto livre, com cerca de quarenta atributos de resumo calculados por resposta. Desativado por padrão.
- Detecção do processo de escrita. Seis regras nomeadas, com limiares explícitos, que informam os valores dos atributos por trás de cada sinalização. Os limiares podem ser reajustados ao seu próprio projeto, e há um caminho supervisionado se você tiver rótulos.
- Orientação ética. Texto de consentimento de exemplo, retenção e exclusão, o problema da taxa-base e por que uma sinalização é um convite a olhar, e não uma conclusão.
- Exportações opcionais.
export_include_typing_dynamicsgrava um arquivo auxiliar de resumo, e--format keystrokesgrava os fluxos brutos em Parquet. Nenhuma das duas vem ativada por padrão, então dados comportamentais nunca acabam em uma publicação de dataset por acidente.
A divulgação aos anotadores vem ativada por padrão, e desativá-la registra um aviso na inicialização.
Potato 2.7.1
Lançado em julho de 2026
Ingestão de transcrições, partindo da premissa de que a transcrição já existe. Alguém rodou o Whisper, ou baixou as legendas, ou recebeu um corpus pronto, e o passo seguinte não deveria ser escrever um script de conversão.
- 21 formatos de transcrição e legenda, contra 6 antes. Whisper, WhisperX, whisper.cpp, AWS Transcribe, Deepgram, AssemblyAI, Rev.ai, SPoRC, SubRip, WebVTT, SubStation Alpha, TTML/DFXP,
json3esrv1/srv2/srv3do YouTube, NIST CTM, Praat TextGrid e ELAN EAF. A detecção é pelo conteúdo do arquivo, não pela extensão. - Arquivos de transcrição externos. Um arquivo de dados pode apontar para
media/int_001.srtem disco em vez de embutir a transcrição. Os caminhos são resolvidos sobtask_dirpela verificação padrão de segurança de caminhos, então suas transcrições continuam sendo arquivos que você pode comparar com diff e reexportar. potato transcripts, um conversor que transforma uma pasta de saídas de ASR em um arquivo de dados pronto para anotação, pareando transcrições e mídia pelo nome-base.--dry-runinforma o que foi detectado antes de gravar qualquer coisa, e--emit-configimprime uma configuração correspondente.- Um só vocabulário de formatos em quatro esquemas.
speech_transcript,voice_interactionetiered_annotationagora aceitam tudo o que a exibiçãoaudio_dialogueaceita. Antes, só a exibição aceitava. - Anotando transcrições do Whisper e Anotando legendas do YouTube percorrem os dois pontos de partida do início ao fim.
Na 2.7.1, as etapas de ASR e diarização rodam antes, fora do Potato, e o Potato lê a saída delas. O Potato 2.9 acrescentou transcrição e diarização locais com potato transcripts --transcribe --diarize, e o Modo Think-Aloud transcreve localmente a fala dos próprios anotadores desde a 2.7.0.
Potato 2.7.0
Lançado em julho de 2026
O Potato 2.7 parte de uma ideia. Uma ferramenta de anotação deveria medir como os julgamentos são feitos, e não apenas registrar quais foram. Isso vale para os dois tipos de juiz (as pessoas que anotam e os modelos de IA que estão sendo avaliados).
Medindo como as pessoas rotulam
Sete recursos opcionais, e nenhum deles exige um LLM.
- Motor psicométrico. Uma camada ao vivo de teoria de resposta ao item que dá a cada rótulo uma probabilidade posterior e um intervalo de sensibilidade (
p = 0.94 [0.88–0.97]) em vez de um voto majoritário seco. Estima a habilidade do anotador e a dificuldade do item apenas a partir dos padrões de concordância, encaminha itens ao anotador cujo julgamento carrega mais informação e sinaliza prováveis defeitos no livro de códigos. - Salas multijogador. A reunião de calibração que sua equipe já faz por compartilhamento de tela, agora dentro da ferramenta e instrumentada: voto às cegas, revelação pelo anfitrião, discussão, nova votação, com um medidor ao vivo do alfa de Krippendorff que mostra quanto a sessão valeu.
- Boundary Lab. Sondagens contrafactuais depois de cada rótulo (“isso continuaria valendo?”), que transformam a anotação comum em conjuntos de contraste e flagram anotadores inconsistentes sem plantar itens-ouro.
- Truth Serum. Pontuação por predição entre pares do tipo “surpreendentemente popular”, que supera o voto majoritário onde a anotação é difícil, sem nenhum rótulo-ouro.
- Modo Think-Aloud. Os anotadores falam enquanto trabalham; a conversão de fala em texto roda inteiramente na máquina local e a transcrição literal vira a justificativa.
- Modo artigo. Um comando transforma um projeto em um relatório de conjunto de dados em LaTeX compilável, com estatísticas de concordância e citações incluídas.
- Modo bolso. Anotação móvel de primeira classe, com pilha de cartões deslizáveis, sincronização offline e instalação como PWA.
Avaliando agentes de IA
O conjunto de avaliação de agentes cresceu para cobrir estrutura de equipe e agentes multimodais: um grafo de interação entre agentes clicável, atribuição de falhas entre agentes, revisão de repasses, scorecards por agente e por equipe, linhas do tempo de disputa por ferramentas e marcação de comportamento emergente, além de trajetórias de GUI e uso de computador, linhas do tempo de voz full-duplex, ancoragem temporal em vídeo e estrutura de tabelas em documentos.
Em todo o resto
Anotação de eventos entre documentos, anotação por turno, um livro de códigos vivo com editor de página inteira, vinculação entre páginas em PDF com OCR opcional, papéis RBAC com esquemas por coorte, painéis de administração e de anotador em 10 idiomas e uma instalação bem mais leve. Os SDKs de IA agora carregam sob demanda, o que reduziu o tempo de inicialização de cerca de 2,0s para 0,7s.
Potato 2.6.0
Lançado em junho de 2026
O Potato 2.6 entra na análise de dados qualitativos e aprofunda o conjunto de ferramentas de avaliação de agentes. Ele acrescenta o Modo QDA, um fluxo de calibração e alinhamento de LLM como juiz com uma fila de triagem baseada em sinais, e esquemas de edição de trajetória que produzem dados de treinamento SFT e DPO. O Potato também foi relicenciado para GPL-3.0-or-later (antes PolyForm Shield).
Modo QDA
O qda_mode, opcional, transforma o Potato em um espaço de trabalho colaborativo de codificação qualitativa. Ativá-lo reúne um livro de códigos vivo, codificação in vivo, memorandos do analista, casos e busca de texto completo, com padrões ajustados para um analista codificando um corpus inteiro.
qda_mode:
enabled: true # codebook + memos + cases + search
codebook_invivo_key: i # mint a code from a text selection
search:
enabled: true
annotator_claim: trueCalibração e alinhamento de LLM como juiz
Rotule dados automaticamente com um ou mais juízes LLM e depois faça uma rodada cega de calibração humana para medir acurácia, concordância e erro de calibração. Um fluxo separado de alinhamento com um único juiz acompanha o kappa de Cohen em relação aos seus rótulos-ouro humanos à medida que você refina a rubrica, com um veredito inline opcional durante a anotação.
Saiba mais sobre Calibração de Juízes → · Alinhamento de Juízes →
Fila de triagem baseada em sinais
Priorize a fila de anotação por um sinal de qualidade por item (um erro do agente, um polegar para baixo em produção, uma pontuação baixa ou qualquer campo personalizado), para que os revisores vejam primeiro os itens mais suspeitos, e não na ordem de chegada.
triage:
enabled: true
signal_field: quality_score
invert_signal: true
assignment_strategy: prioritySaiba mais sobre a Fila de Triagem →
Edição de trajetória para SFT/DPO
Os novos esquemas trajectory_edit e trajectory_correction permitem que os anotadores reescrevam passos do trace do agente. O exportador transforma cada par original/corrigido em alvos de ajuste fino supervisionado (trajectory_sft.jsonl) e em pares de preferência DPO (trajectory_dpo.jsonl).
Saiba mais sobre Edição de Trajetória →
Exibição eval_trace
Uma exibição de trace de agente em três painéis (Raciocínio, Chamadas de Função e Resposta Final), feita para avaliação contínua, em que os traces chegam por um webhook, por um poller do Langfuse ou por um diretório monitorado e são julgados assim que chegam.
Saiba mais sobre o eval_trace →
Fluxo de trabalho e atribuição
- Cobertura heterogênea. Limites de anotadores por item, relatório de concordância entre anotadores e roteamento de adjudicação para tarefas em que os itens precisam de números diferentes de anotadores.
- Recuperar atribuições abandonadas. Recupere atribuições deixadas por trabalhadores do Prolific ou bloqueados pelo controle de qualidade, com retenção configurável e recuperação idempotente.
- Estratégia de atribuição por lote personalizado. Atribua lotes predefinidos de itens a anotadores específicos.
- Prefixos de URL para proxy reverso. Sirva o Potato sob um subcaminho atrás de um proxy reverso.
Licenciamento
O Potato agora é distribuído sob GPL-3.0-or-later, relicenciado a partir da PolyForm Shield. Você pode usar, modificar e redistribuir o Potato, inclusive comercialmente, desde que os trabalhos derivados permaneçam sob a GPL. Veja a página Sobre para detalhes.
Desempenho e estabilidade
- Inicialização cerca de 3× mais rápida. A pilha de ML deixou de ser carregada de imediato na inicialização: o tempo de importação caiu de cerca de 6,5s para 2s, a inicialização com 50 mil itens de cerca de 10s para 5,7s e a memória residente de cerca de 750MB para 365MB.
- Renomeação de esquema.
annotation_type: highlightagora éspan, com uma migração em vigor. Atualize configurações antigas renomeando o tipo; configuraçõesspanexistentes não são afetadas. - Uma ampla rodada de reforço de QA passou por registro de rotas, fases de treinamento, Prolific, persistência, exportação e tratamento de pesquisas, webhooks, modo solo e aprendizado ativo.
Potato 2.5.0
Lançado em 2026
Uma rodada de codificação qualitativa que torna o Potato viável para fluxos de pesquisa qualitativa, ao lado da sua superfície de anotação para PLN e ML.
- Concordância entre anotadores. Kappa de Cohen (par a par) e kappa de Fleiss (N avaliadores), além do alfa de Krippendorff, expostos pela API de concordância do administrador. Veja o guia de concordância entre anotadores.
- Novos exportadores.
codebook(CSV por esquema com hierarquia de códigos, cor, descrição e contagem de uso) equotation_report(CSV por span com texto, deslocamentos, documento de origem e codificador). - Análise de códigos. Endpoints de administração para coocorrência de códigos par a par e uma tabulação cruzada de códigos por atributo sobre os metadados de instância existentes.
Potato 2.4.5
Lançado em 2026
Uma versão de estabilidade e ferramentas.
- Refinamento validado. Um framework plugável para melhorar iterativamente as diretrizes de anotação do modo solo, com salvaguardas contra contradições nas diretrizes e vazamento de metadados.
- Validador de configuração. Uma nova CLI,
python -m potato.validate_cli, que verifica as chaves de configuração contra o esquema de configuração conhecido. - Segurança. Correção de um desvio na validação de caminhos por prefixo de diretório irmão (GHSA-q9m2-fhv9-3jcf).
- Correções na sincronização de estado de salvamento/navegação, na integração com o Prolific, na navegação multifase e no retorno do controle de qualidade.
Potato 2.3.0
Lançado em 9 de março de 2026
O Potato 2.3 é o maior lançamento da história do Potato, com anotação agêntica, Modo Solo, Escalonamento Melhor-Pior, autenticação SSO/OAuth, exportação Parquet, 15 novos projetos de demonstração e reforço de segurança.
Anotação Agêntica
Um sistema completo para avaliar agentes de IA por meio de anotação humana. Inclui 12 conversores de formato de trace, 3 tipos de exibição especializados e 9 esquemas de anotação pré-construídos.
12 conversores de formato de trace. Importe traces de agentes do OpenAI, Anthropic, SWE-bench, OpenTelemetry, MCP, CrewAI/AutoGen/LangGraph, LangChain, LangFuse, ReAct, WebArena/VisualWebArena, ATIF e gravações brutas de navegador. Há detecção automática.
A conversão roda como uma etapa de CLI antes de o servidor iniciar:
python -m potato.trace_converter \
--input traces.json \
--input-format react \
--output data/traces.jsonlO arquivo convertido passa a ser um arquivo de dados comum, renderizado por um dos tipos de exibição de agente:
data_files:
- "data/traces.jsonl"
instance_display:
fields:
- key: steps
type: agent_trace
label: "Agent trajectory"3 tipos de exibição:
- Exibição de Trace de Agente. Cartões de etapa codificados por cores com observações recolhíveis, JSON formatado para leitura e barra lateral de linha do tempo, para agentes que usam ferramentas
- Exibição de Trace de Agente Web. Capturas de tela completas com sobreposições SVG que mostram alvos de clique, entradas de texto e ações de rolagem, e navegação em tira de quadros, para agentes de navegação
- Exibição de Chat Interativo. Modo de chat ao vivo (o anotador interage com o agente via proxy) e modo de revisão de trace, para agentes conversacionais
Avaliações por turno. Avalie etapas individuais junto com o trace como um todo, para uma avaliação mais detalhada.
9 esquemas pré-construídos. 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.
Sistema de proxy de agente. Proxies OpenAI, HTTP e echo para avaliação de agentes ao vivo.
Saiba mais sobre a Anotação Agêntica →
Modo Solo
Um fluxo de trabalho em que um único anotador humano colabora com um LLM para rotular um conjunto de dados inteiro, alcançando mais de 95% de concordância com pipelines de múltiplos anotadores e exigindo apenas 10-15% do total de rótulos humanos.
O Modo Solo funciona como uma máquina de estados de fases, e não como uma sequência fixa. Ele passa por configuração, revisão do prompt, um ciclo opcional de casos extremos, anotação paralela, resolução de discordâncias, anotação ativa com revisão periódica e de regras, rotulagem autônoma e validação final. Cinco dessas fases podem voltar à revisão do prompt quando o problema está no prompt, e a validação final volta à anotação ativa quando a amostra não atinge o limiar.
solo_mode:
enabled: true
labeling_models:
- endpoint_type: openai
model: "gpt-4o"
api_key: ${OPENAI_API_KEY}
thresholds:
end_human_annotation_agreement: 0.92
minimum_validation_sample: 50
state_dir: "solo_state"Priorização de instâncias com múltiplos sinais. instance_selection pondera sete sinais (baixa confiança, diversidade, previsão do LLM, discordância, aleatório, cartografia, regra de caso extremo) para escolher o que o humano vê em seguida.
Saiba mais sobre o Modo Solo →
Escalonamento Melhor-Pior
Anotação comparativa eficiente em que os anotadores selecionam o melhor e o pior item de cada tupla. Geração automática de tuplas com designs de blocos incompletos balanceados e três métodos de pontuação (Contagem, Bradley-Terry, Plackett-Luce).
annotation_schemes:
- annotation_type: bws
name: fluency
description: "Which sentence reads most fluently?"
tuple_size: 4
best_description: "Most Fluent"
worst_description: "Least Fluent"Saiba mais sobre o Escalonamento Melhor-Pior →
Autenticação SSO e OAuth
Autenticação pronta para produção com Google OAuth (restrição de domínio), GitHub OAuth (restrição de organização) e OIDC genérico (Okta, Azure AD, Auth0, Keycloak). Suporta registro automático, modo misto e gerenciamento de sessão.
authentication:
method: "oauth"
providers:
google:
client_id: ${GOOGLE_CLIENT_ID}
client_secret: ${GOOGLE_CLIENT_SECRET}
allowed_domain: "umich.edu"
user_identity_field: "email"
auto_register: true
secret_key: ${POTATO_SECRET_KEY}Saiba mais sobre SSO e OAuth →
Exportação Parquet
Exporte anotações para o formato Apache Parquet, que produz três arquivos estruturados: annotations.parquet, spans.parquet e items.parquet. Suporta compressão snappy, gzip, zstd, lz4 e brotli, exportação incremental e particionamento por data e por anotador. Compatível com pandas, DuckDB, PyArrow, Polars e Hugging Face Datasets.
export_annotation_format:
- parquetSaiba mais sobre a Exportação Parquet →
15 novos projetos de demonstração
Novas demonstrações em project-hub/ cobrindo anotação agêntica (5 demos), Modo Solo (3 demos), Escalonamento Melhor-Pior (3 demos), autenticação (2 demos) e fluxos de exportação (2 demos). Inicie qualquer demonstração com potato start config.yaml.
Reforço de segurança
- Tokens de sessão criptograficamente seguros com expiração configurável
- Proteção CSRF ativada por padrão
- Limitação de taxa nos endpoints de autenticação
- Sanitização de entrada para conteúdo fornecido pelo usuário
- Auditoria de dependências com todos os pacotes atualizados
- Cabeçalhos de Content Security Policy
Outras melhorias
- Conversores de trace personalizados para frameworks de agentes sem suporte
- Modo Solo híbrido com amostragem de verificação por múltiplos anotadores
- Aba do BWS no painel de administração com gráficos de convergência das pontuações
- Exportação Parquet incremental com particionamento por data
Comparação entre v2.2 e v2.3
| Recurso | v2.2 | v2.3 |
|---|---|---|
| Anotação Agêntica | Não disponível | 12 conversores, 3 exibições, 9 esquemas |
| Modo Solo | Não disponível | Fluxo humano-LLM guiado por uma máquina de estados de fases |
| Escalonamento Melhor-Pior | Não disponível | BWS com 3 métodos de pontuação |
| Autenticação | Apenas nome de usuário | + Google OAuth, GitHub OAuth, OIDC |
| Exportação Parquet | Não disponível | Parquet em 3 arquivos com 6 opções de compressão |
| Projetos de Demonstração | Mais de 125 | Mais de 140 (15 novos) |
| Segurança | Básica | CSRF, limitação de taxa, CSP, sessões seguras |
Potato 2.2.0
Lançado em 20 de fevereiro de 2026
O Potato 2.2 é uma grande versão de recursos, com 9 novos esquemas de anotação, um sistema de exportação plugável, estimativa de competência MACE, 55 instrumentos de pesquisa validados e fontes de dados remotas.
Novos esquemas de anotação (9)
Anotação de Eventos. Estruturas de eventos n-árias com spans de gatilho e papéis de argumento tipados. Anote eventos como ATTACK, HIRE e TRAVEL com argumentos de entidade restritos e visualização de arcos em estrela (hub-spoke).
annotation_schemes:
- annotation_type: event_annotation
name: events
description: "Mark the event triggers and their arguments"
span_schema: entities
event_types:
- type: "ATTACK"
trigger_labels: ["EVENT_TRIGGER"]
arguments:
- role: "attacker"
entity_types: ["PERSON", "ORGANIZATION"]
required: trueSaiba mais sobre a Anotação de Eventos →
Vinculação de Entidades. Vincule anotações de span a bases de conhecimento externas (Wikidata, UMLS, APIs REST personalizadas). Adicione um bloco entity_linking: a qualquer esquema de span para habilitar a busca e a vinculação na base de conhecimento.
Saiba mais sobre a Vinculação de Entidades →
Triagem. Interface de aceitar/rejeitar/pular ao estilo do Prodigy para triagem rápida de dados. Rótulos personalizáveis, atalhos de teclado e avanço automático para anotação de alto rendimento.
Comparação Pareada. Compare dois itens nos modos binário (clique no bloco preferido) ou de escala (controle deslizante). Suporta items_key, allow_tie e um bloco scale: com intervalo configurável.
Saiba mais sobre a Comparação Pareada →
Árvores de Conversa. Anote estruturas hierárquicas de conversa com avaliações por nó, seleção de caminho e comparação de ramificações.
Saiba mais sobre as Árvores de Conversa →
Cadeias de Correferência. Agrupe menções de texto correferentes em cadeias com indicadores visuais. Suporta tipos de entidade, controle de singletons e vários modos de destaque.
Saiba mais sobre as Cadeias de Correferência →
Máscaras de Segmentação. Novas ferramentas fill, eraser e brush para segmentação de imagem em nível de pixel.
Caixa Delimitadora para PDF/Documentos. Desenhe caixas em páginas de PDF em tarefas de anotação de documentos.
Spans Descontínuos. allow_discontinuous: true permite selecionar segmentos de texto não contíguos como um único span.
Anotação Inteligente
Estimativa de Competência MACE. Algoritmo EM de Bayes variacional que estima conjuntamente os rótulos verdadeiros e as pontuações de competência dos anotadores (0,0-1,0). Funciona com esquemas radio, likert, select e multiselect.
mace:
enabled: true
trigger_every_n: 10
min_annotations_per_item: 3Destaque de Opções. Destaque baseado em LLM das opções provavelmente corretas em tarefas de anotação discreta. Destaca as top-k opções com um indicador de estrela e atenua as opções menos prováveis.
ai_support:
option_highlighting:
enabled: true
top_k: 3
dim_opacity: 0.4Saiba mais sobre o Destaque de Opções →
Ordenação por Diversidade. Agrupamento baseado em embeddings e amostragem round-robin para que os anotadores vejam conteúdo diverso em vez de itens semelhantes em sequência.
assignment_strategy: diversity_clustering
diversity_ordering:
enabled: true
prefill_count: 100Saiba mais sobre a Ordenação por Diversidade →
Sistema de Exportação
Uma nova CLI de exportação plugável (python -m potato.export) converte anotações para 6 formatos padrão do setor: COCO, YOLO, Pascal VOC, CoNLL-2003, CoNLL-U e Máscaras de Segmentação.
python -m potato.export --config config.yaml --format coco --output ./export/Saiba mais sobre os Formatos de Exportação →
Fontes de Dados Remotas
Carregue dados de anotação de URLs, S3, Google Drive, Dropbox, Hugging Face, Google Sheets e bancos de dados SQL por meio do novo bloco de configuração data_sources:. Inclui carregamento parcial, cache e gerenciamento de credenciais.
Saiba mais sobre as Fontes de Dados Remotas →
Instrumentos de Pesquisa
55 questionários validados em 8 categorias (Personalidade, Saúde Mental, Afeto, Autoconceito, Atitudes Sociais, Estilo de Resposta, Forma Curta, Demografia). Use nas fases de pré-estudo e pós-estudo com instrument: "tipi".
Saiba mais sobre os Instrumentos de Pesquisa →
Outras melhorias
- Rastreamento de objetos em vídeo com interpolação de quadros-chave
- Suporte a arquivo externo de configuração de IA
- Melhorias na grade de layout de formulários
- Manipuladores de formato para PDF, Word, código e planilhas
Potato 2.1.0
Lançado em 5 de fevereiro de 2026
O Potato 2.1 introduz o sistema de exibição de instâncias, suporte visual de IA, vinculação de spans, anotação de spans em múltiplos campos e personalização de layout.
Sistema de Exibição de Instâncias
Um novo bloco de configuração instance_display que separa a exibição do conteúdo da anotação. Exiba qualquer combinação de imagens, vídeos, áudio, texto e diálogos junto com quaisquer esquemas de anotação.
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
description: "What category best describes this image?"
labels: [nature, urban, people]Suporta 24 tipos de exibição, incluindo text, html, image, video, audio, depth_map, dialogue, conversation_tree, pairwise, code, spreadsheet, document, pdf, gallery e cinco exibições de trace de agente.
Saiba mais sobre a Exibição de Instâncias →
Anotação de Spans em Múltiplos Campos
Os esquemas de anotação de span agora suportam uma opção target_field para anotar vários campos de texto da mesma instância.
annotation_schemes:
- annotation_type: span
name: source_entities
description: "Label the entities in the source document"
labels: [PERSON, ORGANIZATION]
- annotation_type: span
name: summary_entities
description: "Label the entities in the summary"
labels: [PERSON, ORGANIZATION]Saiba mais sobre a Anotação de Spans →
Vinculação de Spans
Um novo tipo de anotação span_link para criar relações tipadas entre spans anotados. Suporta links direcionados e não direcionados, relações n-árias, exibição visual de arcos e restrições de rótulo.
annotation_schemes:
- annotation_type: span
name: entities
description: "Highlight the named entities in the text"
labels:
- name: "PERSON"
color: "#3b82f6"
- name: "ORGANIZATION"
color: "#22c55e"
- annotation_type: span_link
name: relations
description: "Link the entities that stand in a relation"
span_schema: entities
link_types:
- name: "WORKS_FOR"
directed: true
allowed_source_labels: ["PERSON"]
allowed_target_labels: ["ORGANIZATION"]
color: "#dc2626"Saiba mais sobre a Vinculação de Spans →
Suporte Visual de IA
Quatro novos endpoints de visão para assistência com IA na anotação de imagens e vídeos:
- YOLO. Detecção de objetos rápida e local
- Ollama Vision. Modelos de visão-linguagem locais (LLaVA, Qwen-VL)
- OpenAI Vision. Visão em nuvem com GPT-4o
- Anthropic Vision. Claude com visão
Os recursos incluem detecção de objetos, pré-anotação, classificação, dicas, detecção de cenas, detecção de quadros-chave e rastreamento de objetos.
Saiba mais sobre o Suporte Visual de IA →
Personalização de Layout
Crie layouts visuais personalizados e elaborados usando templates HTML e CSS. O Potato gera um arquivo de layout editável, ou você pode fornecer um template totalmente personalizado com layouts em grade, opções codificadas por cores e estilização de seções.
task_layout: layouts/custom_task_layout.htmlTrês layouts de exemplo incluídos: moderação de conteúdo, QA de diálogo e revisão médica.
Saiba mais sobre a Personalização de Layout →
Justificativas de Rótulo
Uma quarta capacidade de IA, que gera explicações equilibradas sobre por que cada rótulo pode se aplicar e ajuda os anotadores a entender diferentes perspectivas de classificação.
ai_support:
features:
rationales:
enabled: trueSaiba mais sobre o Suporte de IA →
Outras melhorias
- Mais de 50 novos testes para maior confiabilidade
- Melhorias no design responsivo
- Organização aprimorada do project-hub com exemplos de layout
- Correções de bugs em vários tipos de anotação
Comparação entre v2.0 e v2.1
| Recurso | v2.0 | v2.1 |
|---|---|---|
| Exibição de Instâncias | Por meio de gambiarras na anotação | Bloco instance_display dedicado |
| Alvos de Span | Campo de texto único | Múltiplos campos com target_field |
| Vinculação de Spans | Não disponível | Tipo span_link completo |
| IA Visual | Não disponível | YOLO, Ollama Vision, OpenAI Vision, Anthropic Vision |
| Personalização de Layout | Básica, gerada automaticamente | Gerada automaticamente + templates personalizados |
| Capacidades de IA | 3 (dicas, palavras-chave, sugestões) | 4 (+ justificativas) |
Potato 2.0
O Potato 2.0 é um grande lançamento que acrescenta assistência de IA, aprendizado ativo, fases de treinamento, fluxos de trabalho multifásicos e um backend MySQL.
Suporte de IA
Integre grandes modelos de linguagem para auxiliar os anotadores com dicas inteligentes, destaque de palavras-chave e sugestões de rótulo.
Provedores suportados:
- OpenAI (GPT-4, GPT-3.5)
- Anthropic (Claude 3, Claude 3.5)
- Google (Gemini)
- Ollama (modelos locais)
- vLLM (auto-hospedado)
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4
api_key: ${OPENAI_API_KEY}
features:
hints:
enabled: true
label_suggestions:
enabled: trueSaiba mais sobre o Suporte de IA →
Anotação de Áudio
Anotação de áudio completa, com visualização de forma de onda feita com o Peaks.js. Crie segmentos, rotule regiões de tempo e anote fala com atalhos de teclado.
Principais recursos:
- Visualização de forma de onda
- Criação e rotulagem de segmentos
- Perguntas de anotação por segmento
- Mais de 15 atalhos de teclado
- Cache de forma de onda no servidor
annotation_schemes:
- annotation_type: audio_annotation
name: speakers
description: "Mark each speaker turn in the audio"
mode: label
labels:
- Speaker A
- Speaker BSaiba mais sobre a Anotação de Áudio →
Aprendizado Ativo
Priorize automaticamente as instâncias de anotação com base na incerteza do modelo. Treine classificadores com as anotações existentes e direcione os anotadores aos exemplos mais informativos.
Capacidades:
- Várias opções de classificador (LogisticRegression, RandomForest, SVC, MultinomialNB)
- Vários vetorizadores (TF-IDF, Count, Hashing)
- Persistência do modelo entre reinicializações
- Seleção aprimorada por LLM
- Suporte a múltiplos esquemas
active_learning:
enabled: true
schema_names:
- sentiment
min_instances_for_training: 30
update_frequency: 50
classifier:
type: LogisticRegressionSaiba mais sobre o Aprendizado Ativo →
Fase de Treinamento
Qualifique os anotadores com perguntas práticas antes da tarefa principal. Dê feedback imediato e garanta a qualidade com critérios de aprovação configuráveis.
Recursos:
- Perguntas práticas com respostas conhecidas
- Feedback e explicações imediatos
- Critérios de aprovação configuráveis
- Opções de nova tentativa
- Acompanhamento do progresso no painel de administração
phases:
training:
enabled: true
data_file: "data/training.json"
passing_criteria:
min_correct: 8
total_questions: 10Saiba mais sobre a Fase de Treinamento →
Painel de Administração Aprimorado
Interface abrangente de monitoramento e gerenciamento para tarefas de anotação.
Abas do painel:
- Visão Geral: métricas de alto nível e taxas de conclusão
- Anotadores: acompanhamento de desempenho, análise de tempo
- Instâncias: navegação pelos dados com pontuações de discordância
- Configuração: ajuste de configurações em tempo real
admin_api_key: ${ADMIN_API_KEY}Saiba mais sobre o Painel de Administração →
Backend de Banco de Dados
Suporte ao MySQL para implantações em larga escala, com pool de conexões e suporte a transações.
database:
type: mysql
host: localhost
database: potato_db
username: ${DB_USER}
password: ${DB_PASSWORD}O Potato cria automaticamente as tabelas necessárias na primeira inicialização.
Histórico de Anotações
Registro completo de todas as mudanças de anotação, com timestamps, IDs de usuário e tipos de ação. Permite auditoria e análise comportamental.
{
"history": [
{
"timestamp": "2024-01-15T10:30:00Z",
"user": "annotator_1",
"action": "create",
"schema": "sentiment",
"value": "Positive"
}
]
}Fluxos de Trabalho Multifásicos
Monte fluxos de trabalho de anotação complexos com várias fases sequenciais:
- Consentimento - Coleta de consentimento informado
- Pré-estudo - Dados demográficos e triagem
- Instruções - Diretrizes da tarefa
- Treinamento - Perguntas práticas
- Anotação - Tarefa principal
- Pós-estudo - Questionários de feedback
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"Saiba mais sobre os Fluxos de Trabalho Multifásicos →
Mudanças de configuração da v2.0
Nova estrutura de configuração
O Potato 2.0 usa um formato de configuração mais limpo:
v1 (antigo):
data_files:
- data.json
id_key: id
text_key: text
output_file: annotations.jsonv2 (novo):
data_files:
- "data/data.json"
item_properties:
id_key: id
text_key: text
output_annotation_dir: "output/"
export_annotation_format: "jsonl"Requisito de segurança
Os arquivos de configuração agora precisam estar dentro do task_dir:
Com a configuração ao lado dos dados, o diretório da tarefa é o diretório atual:
task_dir: "."Com a configuração em um subdiretório, indique o diretório do projeto ao qual ela pertence:
task_dir: "my_project/"Comparação rápida
| Recurso | v1 | v2.0 | v2.1 | v2.2 | v2.3 |
|---|---|---|---|---|---|
| Suporte de IA/LLM | Não | Sim | Sim + IA Visual + Justificativas | + Destaque de Opções | + Modo Solo |
| Anotação Agêntica | Não | Não | Não | Não | 12 conversores, 3 exibições |
| Escalonamento Melhor-Pior | Não | Não | Não | Não | Sim (3 métodos de pontuação) |
| Anotação de Áudio | Básica | Forma de onda completa | Forma de onda completa | Forma de onda completa | Forma de onda completa |
| Aprendizado Ativo | Não | Sim | Sim | Sim + Ordenação por Diversidade | + Integração com o Modo Solo |
| Exibição de Instâncias | Não | Não | Sim | Sim | Sim |
| Vinculação de Spans | Não | Não | Sim | Sim | Sim |
| Anotação de Eventos | Não | Não | Não | Sim | Sim |
| Vinculação de Entidades | Não | Não | Não | Sim | Sim |
| Pareada/Triagem/Correferência/Árvores | Não | Não | Não | Sim | Sim |
| Personalização de Layout | Não | Gerada automaticamente | Automática + templates personalizados | Automática + templates personalizados | Automática + templates personalizados |
| Fase de Treinamento | Não | Sim | Sim | Sim | Sim |
| Painel de Administração | Básico | Aprimorado | Aprimorado | Aprimorado + MACE | + Aba BWS, Modo Solo |
| Backend de Banco de Dados | Apenas arquivo | Arquivo + MySQL | Arquivo + MySQL | Arquivo + MySQL | Arquivo + MySQL |
| CLI de Exportação | Não | Não | Não | Sim (COCO, YOLO, CoNLL etc.) | + Parquet |
| Autenticação | Nome de usuário | Nome de usuário | Nome de usuário | Nome de usuário | + Google/GitHub OAuth, OIDC |
| Instrumentos de Pesquisa | Não | Não | Não | 55 questionários validados | 55 questionários validados |
| Fontes de Dados Remotas | Não | Não | Não | S3, GDrive, HuggingFace etc. | S3, GDrive, HuggingFace etc. |
Guia de migração
Atualizando sua configuração (v1 para v2)
-
Configuração de dados
yaml# Old id_key: id text_key: text # New item_properties: id_key: id text_key: text -
Configuração de saída
yaml# Old output_file: annotations.json # New output_annotation_dir: "output/" export_annotation_format: "jsonl" -
Localização do arquivo de configuração Verifique se o seu arquivo de configuração está dentro do diretório do projeto.
Iniciando o servidor
# v2 command
python -m potato start config.yaml -p 8000
# Or shorthand
potato start config.yamlPrimeiros passos
Pronto para experimentar o Potato? Comece pelo Guia de Início Rápido ou explore recursos específicos:
Recursos da v2.3:
- Anotação Agêntica - Avalie agentes de IA com conversores de trace e exibições passo a passo
- Modo Solo - Rotulagem colaborativa entre humano e LLM
- Escalonamento Melhor-Pior - Anotação comparativa com pontuação
- SSO e OAuth - Autenticação Google, GitHub e OIDC
- Exportação Parquet - Exportação de dados em formato colunar
Recursos da v2.2:
- Anotação de Eventos - Estruturas de eventos n-árias
- Vinculação de Entidades - Vinculação a bases de conhecimento
- Triagem - Triagem rápida de dados
- Cadeias de Correferência - Correferência de entidades
- Árvores de Conversa - Anotação hierárquica de diálogos
- MACE - Estimativa de competência dos anotadores
- Destaque de Opções - Orientação sobre as opções assistida por IA
- Ordenação por Diversidade - Ordenação de itens baseada em embeddings
- Formatos de Exportação - CLI de exportação com 6 formatos
- Fontes de Dados Remotas - Carregamento de dados da nuvem
- Instrumentos de Pesquisa - 55 questionários validados
Recursos da v2.1:
- Exibição de Instâncias - Exibição de conteúdo multimodal
- Suporte Visual de IA - IA para anotação de imagens e vídeos
- Vinculação de Spans - Anotação de relações entre entidades
Recursos principais:
- Suporte de IA - Assistência inteligente à anotação
- Aprendizado Ativo - Priorização inteligente de instâncias
- Anotação de Áudio - Anotação baseada em forma de onda
- Fase de Treinamento - Qualificação de anotadores
- Painel de Administração - Monitoramento e gerenciamento