Nouveautés
Nouveautés de Potato v2.x : le moteur psychométrique, les salles multijoueur, le Laboratoire de frontières de décision, Truth Serum, le mode Think-Aloud, le mode QDA, la calibration LLM-as-judge, l'évaluation multi-agents et plus de 50 types d'annotation. Désormais sous licence GPL-3.0-or-later.
Cette page couvre les nouvelles fonctionnalités et améliorations des versions Potato v2.x.
Potato 2.7.2
Publié en août 2026
Journalisation des frappes pour les champs de texte libre. Potato enregistre le rythme derrière une réponse et jamais les caractères, ce qui suffit à distinguer la frappe du collage.
- Journalisation des frappes — capture aveugle au contenu des pauses, des rafales, des révisions et des collages sur chaque champ de texte libre, avec une quarantaine de caractéristiques de synthèse calculées par réponse. Désactivée par défaut.
- Détection du processus de rédaction — six règles nommées, à seuils explicites, qui indiquent les valeurs de caractéristiques derrière chaque signalement. Les seuils peuvent être réajustés à votre propre projet, et une voie supervisée existe si vous disposez d'étiquettes.
- Repères éthiques — exemple de formulation du consentement, conservation et suppression, le problème du taux de base, et pourquoi un signalement invite à regarder plutôt qu'il ne conclut.
- Exports optionnels —
export_include_typing_dynamicsécrit un fichier annexe de synthèse, et--format keystrokesécrit les flux bruts en Parquet. Aucun des deux n'est actif par défaut : les données comportementales ne se retrouvent donc jamais par accident dans une publication de jeu de données.
La divulgation aux annotateurs est activée par défaut, et la désactiver inscrit un avertissement au démarrage.
Potato 2.7.1
Publié en juillet 2026
L'ingestion de transcriptions, en partant du principe que la transcription existe déjà. Quelqu'un a lancé Whisper, ou téléchargé des sous-titres, ou reçu un corpus, et l'étape suivante ne devrait pas consister à écrire un script de conversion.
- 21 formats de transcription et de sous-titres, contre 6 auparavant. Whisper, WhisperX, whisper.cpp, AWS Transcribe, Deepgram, AssemblyAI, Rev.ai, SPoRC, SubRip, WebVTT, SubStation Alpha, TTML/DFXP, YouTube
json3etsrv1/srv2/srv3, NIST CTM, Praat TextGrid et ELAN EAF. La détection se fait sur le contenu du fichier, pas sur l'extension. - Fichiers de transcription annexes — un fichier de données peut pointer vers
media/int_001.srtsur le disque au lieu d'intégrer la transcription. Les chemins sont résolus soustask_dirpar le contrôle de sécurité habituel, vos transcriptions restent donc des fichiers que vous pouvez comparer et réexporter. potato transcripts— un convertisseur qui transforme un dossier de sorties ASR en fichier de données prêt à annoter, en appariant transcriptions et médias par nom de base.--dry-runindique ce qui a été détecté avant d'écrire quoi que ce soit, et--emit-configaffiche une configuration correspondante.- Un seul vocabulaire de formats pour quatre schémas —
speech_transcript,voice_interactionettiered_annotationacceptent désormais tout ce qu'accepte l'affichageaudio_dialogue. Auparavant, seul l'affichage le faisait. - Comment annoter des transcriptions Whisper et Comment annoter des sous-titres YouTube déroulent les deux points de départ de bout en bout.
L'ASR et la diarisation restent en amont. Potato lit leur sortie ; il ne transcrit pas.
Potato 2.7.0
Publié en juillet 2026
Potato 2.7 repose sur une idée : un outil d'annotation devrait mesurer comment les jugements se forment, et pas seulement enregistrer ce qu'ils étaient. Cela vaut pour les deux sortes de juges : les humains qui annotent, et les modèles d'IA que l'on évalue.
Mesurer la façon dont les humains étiquettent
Sept fonctionnalités optionnelles, dont aucune ne demande de LLM.
- Moteur psychométrique — une couche de théorie de la réponse à l'item, calculée en direct, qui donne à chaque étiquette une probabilité a posteriori et un intervalle de confiance (
p = 0.94 [0.88–0.97]) plutôt qu'un simple vote majoritaire. Elle estime la compétence des annotateurs et la difficulté des items à partir des seuls profils d'accord, oriente chaque item vers l'annotateur dont le jugement apporte le plus d'information, et signale les défauts probables du livre de codes. - Salles multijoueur — la réunion de calibration que votre équipe organise déjà par partage d'écran, intégrée à l'outil et instrumentée : vote à l'aveugle, révélation par l'animateur, discussion, nouveau vote, avec un indicateur d'alpha de Krippendorff en direct qui montre ce que la séance a rapporté.
- Laboratoire de frontières de décision — des sondes contrefactuelles après chaque étiquette (« cela tiendrait-il encore ? »), qui transforment une annotation ordinaire en jeux de contrastes et repèrent les annotateurs incohérents sans glisser d'items étalons.
- Truth Serum — un score de prédiction par les pairs fondé sur le principe de la réponse « étonnamment populaire », qui l'emporte sur le vote majoritaire là où l'annotation est difficile, sans étiquettes de référence.
- Mode Think-Aloud — les annotateurs parlent pendant qu'ils travaillent ; la reconnaissance vocale tourne entièrement en local et la transcription mot à mot devient la justification.
- Mode article — une commande transforme un projet en rapport de jeu de données LaTeX compilable, statistiques d'accord et citations comprises.
- Mode poche — l'annotation mobile de plein droit, avec pile de cartes à balayer, synchronisation hors ligne et installation PWA.
Évaluer les agents d'IA
La suite d'évaluation d'agents couvre désormais la structure des équipes et les agents multimodaux : un graphe d'interaction entre agents cliquable, l'attribution des défaillances entre agents, la revue des passages de relais, des fiches de score par agent et par équipe, des chronologies de contention sur les outils et l'étiquetage des comportements émergents, ainsi que les trajectoires d'usage d'interface graphique, les chronologies vocales en duplex intégral, l'ancrage temporel dans la vidéo et la structure des tableaux de documents.
Partout ailleurs
Annotation d'événements inter-documents, annotation au niveau du tour de parole, un livre de codes tenu comme un document vivant avec éditeur pleine page, liaison entre pages d'un PDF avec OCR facultatif, rôles RBAC avec schémas par cohorte, tableaux de bord administrateur et annotateur en 10 langues, et une installation bien plus légère : les SDK d'IA se chargent désormais à la demande, ce qui fait passer le temps de démarrage d'environ 2,0 s à 0,7 s.
Potato 2.6.0
Publié en juin 2026
Potato 2.6 entre dans l'analyse de données qualitatives et étoffe la panoplie d'évaluation d'agents. Elle ajoute le mode QDA, un flux de calibration et d'alignement du LLM juge avec une file de triage fondée sur un signal, et des schémas d'édition de trajectoires qui produisent des données d'entraînement SFT et DPO. Potato passe également sous licence GPL-3.0-or-later (auparavant PolyForm Shield).
Mode QDA
Le mode qda_mode, optionnel, transforme Potato en atelier collaboratif de codage qualitatif. Son activation compose un livre de codes vivant, le codage in vivo, les mémos d'analyse, les cas et la recherche plein texte, avec des réglages par défaut pensés pour un analyste qui code un corpus entier.
qda_mode:
enabled: true # codebook + memos + cases + search
codebook_invivo_key: i # mint a code from a text selection
search:
enabled: true
annotator_claim: trueEn savoir plus sur le mode QDA →
Calibration et alignement du LLM juge
Étiquetez automatiquement vos données avec un ou plusieurs LLM juges, puis lancez une passe de calibration humaine à l'aveugle pour mesurer l'exactitude, l'accord et l'erreur de calibration. Un flux distinct d'alignement à juge unique suit le kappa de Cohen face à vos étalons humains à mesure que vous affinez la grille, avec un verdict en ligne facultatif pendant l'annotation.
En savoir plus sur la calibration du juge → · Alignement du juge →
File de triage fondée sur un signal
Priorisez la file d'annotation selon un signal de qualité propre à chaque élément — une erreur d'agent, un pouce vers le bas en production, un score bas, ou n'importe quel champ personnalisé — pour que les relecteurs voient d'abord les éléments les plus suspects plutôt que dans l'ordre d'arrivée.
triage:
enabled: true
signal_field: quality_score
invert_signal: true
assignment_strategy: priorityEn savoir plus sur la file de triage →
Édition de trajectoires pour le SFT/DPO
Les nouveaux schémas trajectory_edit et trajectory_correction permettent aux annotateurs de réécrire les étapes d'une trace d'agent. L'exportateur transforme chaque paire original/corrigé en cibles d'affinage supervisé (trajectory_sft.jsonl) et en paires de préférence DPO (trajectory_dpo.jsonl).
En savoir plus sur l'édition de trajectoires →
Affichage eval_trace
Un affichage de trace d'agent à trois volets — Raisonnement, Appels de fonctions et Réponse finale — conçu pour l'évaluation continue, où les traces arrivent par un webhook, un collecteur Langfuse ou un répertoire surveillé, et sont jugées au fil de leur arrivée.
En savoir plus sur eval_trace →
Flux de travail et attribution
- Couverture hétérogène — plafonds d'annotateurs par élément, rapport d'accord inter-annotateurs et routage vers l'arbitrage pour les tâches dont les éléments demandent un nombre d'annotateurs différent.
- Récupération des attributions abandonnées — récupérez les attributions laissées par des travailleurs Prolific ou bloqués par le contrôle qualité, avec une durée de rétention configurable et une récupération idempotente.
- Stratégie d'attribution par lots personnalisés — attribuez des lots d'éléments prédéfinis à des annotateurs précis.
- Préfixes d'URL pour proxy inverse — servez Potato sous un sous-chemin derrière un proxy inverse.
Licence
Potato est désormais publié sous GPL-3.0-or-later, en remplacement de PolyForm Shield. Vous pouvez l'utiliser, le modifier et le redistribuer, y compris à des fins commerciales, tant que les œuvres dérivées restent sous GPL. Voir la page À propos pour les détails.
Performances et stabilité
- Démarrage environ 3× plus rapide. La pile ML n'est plus chargée d'emblée au démarrage : le temps d'import est passé d'environ 6,5 s à 2 s, le démarrage sur 50 000 éléments d'environ 10 s à 5,7 s, et la mémoire résidente d'environ 750 Mo à 365 Mo.
- Renommage de schéma.
annotation_type: highlightdevientspan, avec une migration en place. Mettez à jour les anciennes configurations en renommant le type ; les configurationsspanexistantes ne sont pas touchées. - Une large vague de durcissement QA a touché l'enregistrement des routes, les phases de formation, Prolific, la persistance, l'export et le traitement des enquêtes, les webhooks, le mode solo et l'apprentissage actif.
Potato 2.5.0
Publié en 2026
Une vague consacrée au codage qualitatif, qui rend Potato crédible pour les flux de recherche qualitative à côté de sa surface d'annotation NLP et ML.
- Accord inter-annotateurs — kappa de Cohen (par paires) et kappa de Fleiss (N évaluateurs) en plus de l'alpha de Krippendorff, exposés par l'API d'accord d'administration. Voir le guide sur l'accord inter-annotateurs.
- Nouveaux exportateurs —
codebook(un CSV par schéma avec hiérarchie des codes, couleur, description et nombre d'usages) etquotation_report(un CSV par segment avec le texte, les décalages, le document source et le codeur). - Analyse des codes — points de terminaison d'administration pour la cooccurrence de codes deux à deux et un tableau croisé codes × attribut sur les métadonnées d'instance existantes.
Potato 2.4.5
Publié en 2026
Une version de stabilisation et d'outillage.
- Raffinement validé — un cadre modulaire pour améliorer par itérations les consignes d'annotation du mode solo, avec des garde-fous contre les contradictions entre consignes et les fuites de métadonnées.
- Validateur de configuration — une nouvelle commande
python -m potato.validate_cliqui vérifie les clés de configuration face au schéma des configurations connues. - Sécurité — correction d'un contournement par préfixe frère lors de la validation des chemins, permettant une traversée de répertoires (GHSA-q9m2-fhv9-3jcf).
- Corrections sur la synchronisation d'état enregistrement/navigation, l'intégration Prolific, la navigation multi-phases et les retours du contrôle qualité.
Potato 2.3.0
Publié le 9 mars 2026
Potato 2.3 est la plus grande version de l'histoire de Potato : elle introduit l'annotation agentique, le mode solo, l'échelle du meilleur et du pire, l'authentification SSO/OAuth, l'export Parquet, 15 nouveaux projets de démonstration et un durcissement de la sécurité.
Annotation agentique
Un système complet pour évaluer les agents d'IA par annotation humaine. Il comprend 12 convertisseurs de format de trace, 3 types d'affichage spécialisés et 9 schémas d'annotation prêts à l'emploi.
12 convertisseurs de format de trace — importez des traces d'agents depuis OpenAI, Anthropic, SWE-bench, OpenTelemetry, MCP, CrewAI/AutoGen/LangGraph, LangChain, LangFuse, ReAct, WebArena/VisualWebArena, ATIF et des enregistrements de navigateur bruts. Détection automatique disponible.
agentic:
enabled: true
trace_converter: react # or openai, anthropic, webarena, auto, etc.
trace_file: "data/traces.jsonl"3 types d'affichage :
- Affichage de trace d'agent — cartes d'étapes à code couleur, observations repliables, mise en forme du JSON et chronologie latérale, pour les agents qui utilisent des outils
- Affichage de trace d'agent web — captures d'écran complètes avec calques SVG montrant les cibles de clic, les saisies de texte et les défilements ; navigation en pellicule pour les agents de navigation
- Affichage de conversation interactive — mode conversation en direct (l'annotateur interagit avec l'agent via un proxy) et mode relecture de trace, pour les agents conversationnels
Notations par tour — notez chaque étape en plus de la trace globale, pour une évaluation à grain fin.
9 schémas prêts à l'emploi — 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.
Système de proxy d'agent — proxys OpenAI, HTTP et echo pour l'évaluation d'agents en direct.
En savoir plus sur l'annotation agentique →
Mode solo
Un flux intelligent en 12 phases où un annotateur humain unique collabore avec un LLM pour étiqueter des jeux de données entiers, atteignant plus de 95 % d'accord avec les chaînes multi-annotateurs tout en ne demandant que 10 à 15 % des étiquettes humaines totales.
Les 12 phases :
- Annotation d'amorçage — l'humain étiquette 50 instances variées
- Calibration initiale du LLM — le LLM étiquette à partir des exemples d'amorçage
- Analyse des confusions — repérer les schémas de désaccord systématiques
- Affinage des consignes — le LLM propose, l'humain valide les consignes mises à jour
- Génération de fonctions d'étiquetage — règles programmatiques inspirées d'ALCHEmist
- Étiquetage actif — l'humain étiquette les instances les plus informatives
- Boucle de raffinement automatisée — réétiquetage itératif avec des consignes améliorées
- Exploration des désaccords — l'humain tranche les conflits entre LLM et fonctions d'étiquetage
- Synthèse de cas limites — le LLM génère des exemples ambigus à étiqueter par l'humain
- Escalade en cascade par confiance — l'humain relit les étiquettes les moins sûres
- Optimisation des invites — recherche automatisée d'invites inspirée de DSPy
- Validation finale — relecture d'un échantillon aléatoire
solo_mode:
enabled: true
llm:
endpoint_type: openai
model: "gpt-4o"
api_key: ${OPENAI_API_KEY}
seed_count: 50
accuracy_threshold: 0.92Priorisation des instances à signaux multiples — 6 réservoirs pondérés (incertitude, désaccord, frontière, nouveauté, motif d'erreur, aléatoire) pour sélectionner les instances les plus utiles.
En savoir plus sur le mode solo →
Échelle du meilleur et du pire
Une annotation comparative efficace : les annotateurs choisissent le meilleur et le pire élément d'un n-uplet. Génération automatique des n-uplets par plans en blocs incomplets équilibrés et trois méthodes de scoring (comptage, Bradley-Terry, Plackett-Luce).
annotation_schemes:
- annotation_type: bws
name: fluency
tuple_size: 4
best_description: "Most Fluent"
worst_description: "Least Fluent"En savoir plus sur l'échelle du meilleur et du pire →
Authentification SSO et OAuth
Une authentification prête pour la production avec Google OAuth (restriction par domaine), GitHub OAuth (restriction par organisation) et OIDC générique (Okta, Azure AD, Auth0, Keycloak). Prend en charge l'inscription automatique, le mode mixte et la gestion des sessions.
authentication:
method: google_oauth
google_oauth:
client_id: ${GOOGLE_CLIENT_ID}
client_secret: ${GOOGLE_CLIENT_SECRET}
allowed_domains:
- "umich.edu"
auto_register: trueEn savoir plus sur le SSO et OAuth →
Export Parquet
Exportez les annotations au format Apache Parquet, sous la forme de trois fichiers structurés : annotations.parquet, spans.parquet et items.parquet. Prend en charge les compressions snappy, gzip, zstd, lz4 et brotli, l'export incrémental et le partitionnement par date ou par annotateur. Compatible avec pandas, DuckDB, PyArrow, Polars et Hugging Face Datasets.
parquet_export:
enabled: true
output_dir: "output/parquet/"
compression: zstd
auto_export: trueEn savoir plus sur l'export Parquet →
15 nouveaux projets de démonstration
De nouvelles démos dans project-hub/ couvrent l'annotation agentique (5 démos), le mode solo (3 démos), l'échelle du meilleur et du pire (3 démos), l'authentification (2 démos) et les flux d'export (2 démos). Lancez n'importe quelle démo avec potato start config.yaml.
Durcissement de la sécurité
- Jetons de session cryptographiquement sûrs, avec expiration configurable
- Protection CSRF activée par défaut
- Limitation de débit sur les points de terminaison d'authentification
- Assainissement des entrées pour les contenus fournis par les utilisateurs
- Audit des dépendances, tous les paquets mis à jour
- En-têtes de Content Security Policy
Autres améliorations
- Convertisseurs de trace personnalisés pour les cadres d'agents non pris en charge
- Mode solo hybride avec échantillonnage de vérification multi-annotateurs
- Onglet BWS du tableau de bord d'administration, avec courbes de convergence des scores
- Export Parquet incrémental avec partitionnement par date
Comparaison v2.2 / v2.3
| Fonctionnalité | v2.2 | v2.3 |
|---|---|---|
| Annotation agentique | Non disponible | 12 convertisseurs, 3 affichages, 9 schémas |
| Mode solo | Non disponible | Flux humain-LLM en 12 phases |
| Échelle du meilleur et du pire | Non disponible | BWS avec 3 méthodes de scoring |
| Authentification | Nom d'utilisateur seul | + Google OAuth, GitHub OAuth, OIDC |
| Export Parquet | Non disponible | Parquet en 3 fichiers, 6 options de compression |
| Projets de démonstration | 125+ | 140+ (15 nouveaux) |
| Sécurité | Basique | CSRF, limitation de débit, CSP, sessions sûres |
Potato 2.2.0
Publié le 20 février 2026
Potato 2.2 est une version majeure avec 9 nouveaux schémas d'annotation, un système d'exportation modulaire, l'estimation de compétence MACE, 55 instruments d'enquête validés et des sources de données distantes.
Nouveaux schémas d'annotation (9)
Annotation d'événements — Structures d'événements N-aires avec segments déclencheurs et rôles d'arguments typés. Annotez des événements comme ATTACK, HIRE et TRAVEL avec des arguments d'entités contraints et une visualisation en arc en étoile.
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: trueEn savoir plus sur l'annotation d'événements →
Liaison d'entités — Liez les annotations de segments à des bases de connaissances externes (Wikidata, UMLS, API REST personnalisées). Ajoutez un bloc entity_linking: à tout schéma de segments pour activer la recherche et la liaison KB.
En savoir plus sur la liaison d'entités →
Triage — Interface d'acceptation/rejet/passage de type Prodigy pour le filtrage rapide des données. Étiquettes personnalisables, raccourcis clavier et avancement automatique pour une annotation à haut débit.
En savoir plus sur le triage →
Comparaison par paires — Comparez deux éléments en mode binaire (cliquez sur la tuile préférée) ou en mode échelle (curseur). Prend en charge items_key, allow_tie, bloc scale: avec plage configurable.
En savoir plus sur la comparaison par paires →
Arbres de conversation — Annotez des structures de conversation hiérarchiques avec des évaluations par nœud, la sélection de chemins et la comparaison de branches.
En savoir plus sur les arbres de conversation →
Chaînes de coréférence — Regroupez les mentions coréférentes dans des chaînes avec des indicateurs visuels. Prend en charge les types d'entités, le contrôle des singletons et plusieurs modes de surlignage.
En savoir plus sur les chaînes de coréférence →
Masques de segmentation — Nouveaux outils fill, eraser et brush pour la segmentation d'images au niveau pixel.
Boîtes englobantes pour PDF/Documents — Dessinez des boîtes sur les pages PDF pour les tâches d'annotation de documents.
Segments discontinus — allow_discontinuous: true permet de sélectionner des segments de texte non contigus comme un seul segment.
Annotation intelligente
Estimation de compétence MACE — Algorithme EM bayésien variationnel qui estime conjointement les vraies étiquettes et les scores de compétence des annotateurs (0.0-1.0). Fonctionne avec les schémas radio, likert, select et multiselect.
mace:
enabled: true
trigger_every_n: 10
min_annotations_per_item: 3Mise en évidence des options — Mise en évidence basée sur les LLM des options les plus probables pour les tâches d'annotation discrètes. Met en évidence les top-k options avec un indicateur étoile tout en atténuant les options moins probables.
ai_support:
option_highlighting:
enabled: true
top_k: 3
dim_opacity: 0.4En savoir plus sur la mise en évidence des options →
Ordonnancement par diversité — Clustering basé sur les embeddings et échantillonnage en tourniquet pour garantir que les annotateurs voient du contenu diversifié plutôt que des éléments similaires en séquence.
assignment_strategy: diversity_clustering
diversity_ordering:
enabled: true
prefill_count: 100En savoir plus sur l'ordonnancement par diversité →
Système d'exportation
Un nouveau CLI d'exportation modulaire (python -m potato.export) convertit les annotations en 6 formats standards de l'industrie : COCO, YOLO, Pascal VOC, CoNLL-2003, CoNLL-U et masques de segmentation.
python -m potato.export --config config.yaml --format coco --output ./export/En savoir plus sur les formats d'exportation →
Sources de données distantes
Chargez des données d'annotation depuis des URL, S3, Google Drive, Dropbox, Hugging Face, Google Sheets et des bases de données SQL via le nouveau bloc de configuration data_sources:. Inclut le chargement partiel, la mise en cache et la gestion des identifiants.
En savoir plus sur les sources de données distantes →
Instruments d'enquête
55 questionnaires validés répartis en 8 catégories (Personnalité, Santé mentale, Affect, Concept de soi, Attitudes sociales, Style de réponse, Format court, Démographie). Utilisez-les dans les phases pré-étude/post-étude avec instrument: "tipi".
En savoir plus sur les instruments d'enquête →
Autres améliorations
- Suivi d'objets vidéo avec interpolation de trames clés
- Support de fichiers de configuration IA externes
- Améliorations de la grille de mise en page des formulaires
- Gestionnaires de formats pour PDF, Word, code et tableurs
Potato 2.1.0
Publié le 5 février 2026
Potato 2.1 introduit le système d'affichage des instances, le support IA visuel, la liaison de segments, l'annotation de segments multi-champs et la personnalisation de la mise en page.
Système d'affichage des instances
Un nouveau bloc de configuration instance_display qui sépare l'affichage du contenu de l'annotation. Affichez toute combinaison d'images, vidéos, audio, texte et dialogues aux côtés de tout schéma d'annotation.
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]Prend en charge 11 types d'affichage incluant text, html, image, video, audio, dialogue, pairwise, code, spreadsheet, document et pdf.
En savoir plus sur l'affichage des instances →
Annotation de segments multi-champs
Les schémas d'annotation de segments prennent désormais en charge une option target_field pour annoter sur plusieurs champs de texte dans la même instance.
annotation_schemes:
- annotation_type: span
name: source_entities
labels: [PERSON, ORGANIZATION]
- annotation_type: span
name: summary_entities
labels: [PERSON, ORGANIZATION]En savoir plus sur l'annotation de segments →
Liaison de segments
Un nouveau type d'annotation span_link pour créer des relations typées entre des segments annotés. Prend en charge les liens dirigés et non dirigés, les relations N-aires, l'affichage visuel en arc et les contraintes d'étiquettes.
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"En savoir plus sur la liaison de segments →
Support IA visuel
Quatre nouveaux points d'accès vision pour l'assistance IA à l'annotation d'images et de vidéos :
- YOLO — Détection d'objets locale rapide
- Ollama Vision — Modèles vision-langage locaux (LLaVA, Qwen-VL)
- OpenAI Vision — Vision cloud GPT-4o
- Anthropic Vision — Claude avec vision
Les fonctionnalités incluent la détection d'objets, la pré-annotation, la classification, les indices, la détection de scènes, la détection de trames clés et le suivi d'objets.
En savoir plus sur le support IA visuel →
Personnalisation de la mise en page
Créez des mises en page visuelles personnalisées sophistiquées en utilisant des templates HTML et du CSS. Potato génère un fichier de mise en page modifiable, ou vous pouvez fournir un template entièrement personnalisé avec des grilles, des options colorées et des styles de sections.
task_layout: layouts/custom_task_layout.htmlTrois exemples de mise en page inclus : modération de contenu, QA de dialogue et revue médicale.
En savoir plus sur la personnalisation de la mise en page →
Justifications des étiquettes
Une quatrième capacité IA qui génère des explications équilibrées sur pourquoi chaque étiquette pourrait s'appliquer, aidant les annotateurs à comprendre les différentes perspectives de classification.
ai_support:
features:
rationales:
enabled: trueEn savoir plus sur le support IA →
Autres améliorations
- Plus de 50 nouveaux tests pour une fiabilité améliorée
- Améliorations du design responsive
- Organisation améliorée du project-hub avec des exemples de mise en page
- Corrections de bugs sur les types d'annotation
Comparaison v2.0 vs v2.1
| Fonctionnalité | v2.0 | v2.1 |
|---|---|---|
| Affichage des instances | Via des hacks d'annotation | Bloc instance_display dédié |
| Cibles de segments | Champ de texte unique | Multi-champs avec target_field |
| Liaison de segments | Non disponible | Type span_link complet |
| IA visuelle | Non disponible | YOLO, Ollama Vision, OpenAI Vision, Anthropic Vision |
| Personnalisation de la mise en page | Auto-générée basique | Auto-générée + templates personnalisés |
| Capacités IA | 3 (indices, mots-clés, suggestions) | 4 (+ justifications) |
Potato 2.0
Potato 2.0 est une version majeure qui introduit de nouvelles fonctionnalités puissantes pour une annotation intelligente et évolutive. Cette section met en lumière les principaux ajouts et améliorations.
Support IA
Intégrez des grands modèles de langage pour assister les annotateurs avec des indices intelligents, le surlignage de mots-clés et des suggestions d'étiquettes.
Fournisseurs supportés :
- OpenAI (GPT-4, GPT-3.5)
- Anthropic (Claude 3, Claude 3.5)
- Google (Gemini)
- Ollama (modèles locaux)
- vLLM (auto-hébergé)
ai_support:
enabled: true
endpoint_type: openai
ai_config:
model: gpt-4
api_key: ${OPENAI_API_KEY}
features:
hints:
enabled: true
label_suggestions:
enabled: trueEn savoir plus sur le support IA →
Annotation audio
Annotation audio complète avec visualisation de forme d'onde alimentée par Peaks.js. Créez des segments, étiquetez des régions temporelles et annotez la parole avec des raccourcis clavier.
Fonctionnalités clés :
- Visualisation de forme d'onde
- Création et étiquetage de segments
- Questions d'annotation par segment
- Plus de 15 raccourcis clavier
- Mise en cache côté serveur des formes d'onde
annotation_schemes:
- annotation_type: audio_annotation
name: speakers
mode: label
labels:
- Speaker A
- Speaker BEn savoir plus sur l'annotation audio →
Apprentissage actif
Priorisez automatiquement les instances d'annotation en fonction de l'incertitude du modèle. Entraînez des classifieurs sur les annotations existantes et concentrez les annotateurs sur les exemples les plus informatifs.
Capacités :
- Plusieurs options de classifieurs (LogisticRegression, RandomForest, SVC, MultinomialNB)
- Divers vectoriseurs (TF-IDF, Count, Hashing)
- Persistance du modèle entre les redémarrages
- Sélection améliorée par LLM
- Support multi-schémas
active_learning:
enabled: true
schema_names:
- sentiment
min_instances_for_training: 30
update_frequency: 50
classifier:
type: LogisticRegressionEn savoir plus sur l'apprentissage actif →
Phase d'entraînement
Qualifiez les annotateurs avec des questions d'entraînement avant la tâche principale. Fournissez un retour immédiat et assurez la qualité grâce à des critères de réussite configurables.
Fonctionnalités :
- Questions d'entraînement avec réponses connues
- Retour immédiat et explications
- Critères de réussite configurables
- Options de nouvelle tentative
- Suivi de la progression dans le tableau de bord administrateur
phases:
training:
enabled: true
data_file: "data/training.json"
passing_criteria:
min_correct: 8
total_questions: 10En savoir plus sur la phase d'entraînement →
Tableau de bord administrateur amélioré
Interface complète de suivi et de gestion des tâches d'annotation.
Onglets du tableau de bord :
- Vue d'ensemble : Métriques de haut niveau et taux de complétion
- Annotateurs : Suivi des performances, analyse des temps
- Instances : Parcourir les données avec scores de désaccord
- Configuration : Ajustement des paramètres en temps réel
admin_api_key: ${ADMIN_API_KEY}En savoir plus sur le tableau de bord administrateur →
Backend de base de données
Support MySQL pour les déploiements à grande échelle avec pool de connexions et support transactionnel.
database:
type: mysql
host: localhost
database: potato_db
user: ${DB_USER}
password: ${DB_PASSWORD}Potato crée automatiquement les tables nécessaires au premier démarrage.
Historique d'annotation
Suivi complet de toutes les modifications d'annotation avec horodatages, identifiants utilisateur et types d'actions. Permet l'audit et l'analyse comportementale.
{
"history": [
{
"timestamp": "2024-01-15T10:30:00Z",
"user": "annotator_1",
"action": "create",
"schema": "sentiment",
"value": "Positive"
}
]
}Flux de travail multi-phases
Construisez des flux de travail d'annotation complexes avec plusieurs phases séquentielles :
- Consentement - Collecte du consentement éclairé
- Pré-étude - Démographie et filtrage
- Instructions - Consignes de la tâche
- Entraînement - Questions d'entraînement
- Annotation - Tâche principale
- Post-étude - Enquêtes de retour
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"En savoir plus sur les flux de travail multi-phases →
Changements de configuration v2.0
Nouvelle structure de configuration
Potato 2.0 utilise un format de configuration plus propre :
v1 (ancien) :
data_files:
- data.json
id_key: id
text_key: text
output_file: annotations.jsonv2 (nouveau) :
data_files:
- "data/data.json"
item_properties:
id_key: id
text_key: text
output_annotation_dir: "output/"
output_annotation_format: "json"Exigence de sécurité
Les fichiers de configuration doivent désormais se trouver dans le task_dir :
# Valid - config.yaml is in the project directory
task_dir: "."
# Valid - config in configs/ subdirectory
task_dir: "my_project/"Comparaison rapide
| Fonctionnalité | v1 | v2.0 | v2.1 | v2.2 | v2.3 |
|---|---|---|---|---|---|
| Support IA/LLM | Non | Oui | Oui + IA visuelle + Justifications | + Mise en évidence des options | + Mode solo |
| Annotation agentique | Non | Non | Non | Non | 12 convertisseurs, 3 affichages |
| Échelle du meilleur et du pire | Non | Non | Non | Non | Oui (3 méthodes de score) |
| Annotation audio | Basique | Forme d'onde complète | Forme d'onde complète | Forme d'onde complète | Forme d'onde complète |
| Apprentissage actif | Non | Oui | Oui | Oui + Ordonnancement par diversité | + Intégration du mode solo |
| Affichage des instances | Non | Non | Oui | Oui | Oui |
| Liaison de segments | Non | Non | Oui | Oui | Oui |
| Annotation d'événements | Non | Non | Non | Oui | Oui |
| Liaison d'entités | Non | Non | Non | Oui | Oui |
| Pairwise/Triage/Coréférence/Arbres | Non | Non | Non | Oui | Oui |
| Personnalisation de la mise en page | Non | Auto-générée | Auto + Templates personnalisés | Auto + Templates personnalisés | Auto + Templates personnalisés |
| Phase d'entraînement | Non | Oui | Oui | Oui | Oui |
| Tableau de bord admin | Basique | Amélioré | Amélioré | Amélioré + MACE | + Onglet BWS, mode solo |
| Backend base de données | Fichier uniquement | Fichier + MySQL | Fichier + MySQL | Fichier + MySQL | Fichier + MySQL |
| CLI d'exportation | Non | Non | Non | Oui (COCO, YOLO, CoNLL, etc.) | + Parquet |
| Authentification | Nom d'utilisateur | Nom d'utilisateur | Nom d'utilisateur | Nom d'utilisateur | + Google/GitHub OAuth, OIDC |
| Instruments d'enquête | Non | Non | Non | 55 questionnaires validés | 55 questionnaires validés |
| Sources de données distantes | Non | Non | Non | S3, GDrive, HuggingFace, etc. | S3, GDrive, HuggingFace, etc. |
Guide de migration
Mise à jour de votre configuration (v1 vers v2)
-
Configuration des données
yaml# Old id_key: id text_key: text # New item_properties: id_key: id text_key: text -
Configuration de la sortie
yaml# Old output_file: annotations.json # New output_annotation_dir: "output/" output_annotation_format: "json" -
Emplacement du fichier de configuration Assurez-vous que votre fichier de configuration se trouve dans le répertoire du projet.
Démarrage du serveur
# v2 command
python -m potato start config.yaml -p 8000
# Or shorthand
potato start config.yamlPour commencer
Prêt à essayer Potato ? Commencez avec le Guide de démarrage rapide ou explorez des fonctionnalités spécifiques :
Fonctionnalités v2.3 :
- Annotation agentique - Évaluation des agents d'IA avec 12 convertisseurs et 3 types d'affichage
- Mode solo - Étiquetage collaboratif entre humains et LLM
- Échelle du meilleur et du pire - Annotation comparative avec score
- SSO et OAuth - Authentification Google, GitHub et OIDC
- Export Parquet - Export de données en colonnes
Fonctionnalités v2.2 :
- Annotation d'événements - Structures d'événements N-aires
- Liaison d'entités - Liaison à des bases de connaissances
- Triage - Filtrage rapide des données
- Chaînes de coréférence - Coréférence d'entités
- Arbres de conversation - Annotation de dialogues hiérarchiques
- MACE - Estimation de la compétence des annotateurs
- Mise en évidence des options - Guidage assisté par IA
- Ordonnancement par diversité - Ordonnancement des éléments par embeddings
- Formats d'exportation - CLI d'exportation avec 6 formats
- Sources de données distantes - Chargement de données cloud
- Instruments d'enquête - 55 questionnaires validés
Fonctionnalités v2.1 :
- Affichage des instances - Affichage de contenu multi-modal
- Support IA visuel - IA pour l'annotation d'images et de vidéos
- Liaison de segments - Annotation de relations entre entités
Fonctionnalités principales :
- Support IA - Assistance intelligente à l'annotation
- Apprentissage actif - Priorisation intelligente des instances
- Annotation audio - Annotation basée sur les formes d'onde
- Phase d'entraînement - Qualification des annotateurs
- Tableau de bord administrateur - Suivi et gestion