Skip to content

新機能

Potato v2.x の新機能 — 心理測定エンジン、マルチプレイヤールーム、Boundary Lab、Truth Serum、シンクアラウドモード、QDAモード、LLM-as-judge のキャリブレーション、マルチエージェント評価、50種類以上のアノテーションタイプ。ライセンスは GPL-3.0-or-later になりました。

このページでは、Potato v2.xリリース全体の新機能と改善点について説明します。


Potato 2.7.2

2026年8月リリース

自由記述フィールドのキーストロークロギング。Potatoは回答の背後にあるタイミングを記録し、文字そのものは記録しません。それだけでも、入力と貼り付けを見分けるには十分でした。

  • キーストロークロギング — すべての自由記述フィールドで、ポーズ、バースト、修正、貼り付けを内容非依存で取得し、回答ごとに約40個の要約特徴量を計算します。デフォルトはオフです。
  • 執筆プロセス検出 — 明示的な閾値を持つ6つの名前付きルール。各フラグの根拠となった特徴量の値を報告します。閾値は自分のプロジェクトに合わせて再フィットでき、ラベルがあれば教師ありの経路もあります。
  • 倫理ガイダンス — 同意文の例、保持と削除、基準率の問題、そしてフラグが結論ではなく確認のきっかけである理由。
  • オプトインのエクスポートexport_include_typing_dynamicsは要約のサイドカーファイルを書き出し、--format keystrokesは生のストリームをParquetに書き出します。どちらもデフォルトではオンにならないため、行動データが意図せずデータセットの公開物に混入することはありません。

アノテーターへの開示はデフォルトでオンで、これをオフにすると起動時に警告がログに出力されます。


Potato 2.7.1

2026年7月リリース

文字起こしの取り込み。前提は、文字起こしはすでに存在しているということです。誰かがWhisperを実行したか、字幕をダウンロードしたか、コーパスを渡された。その次にやることが変換スクリプトの作成であるべきではありません。

  • 21種類の文字起こし・字幕フォーマット(従来は6種類)。Whisper、WhisperX、whisper.cpp、AWS Transcribe、Deepgram、AssemblyAI、Rev.ai、SPoRC、SubRip、WebVTT、SubStation Alpha、TTML/DFXP、YouTubeのjson3srv1/srv2/srv3、NIST CTM、Praat TextGrid、ELAN EAF。判定は拡張子ではなくファイルの中身で行います。
  • サイドカー方式の文字起こしファイル — データファイルに文字起こしを埋め込む代わりに、ディスク上のmedia/int_001.srtを指すことができます。パスは標準のパスセキュリティチェックを通してtask_dir配下で解決されるため、文字起こしはdiffも再エクスポートもできるファイルのままです。
  • potato transcripts — ASR出力のフォルダをアノテーション可能なデータファイルに変換するコンバーター。文字起こしとメディアはベース名で対応付けます。--dry-runは何も書き出す前に検出結果を報告し、--emit-configは対応する設定を出力します。
  • 4つのスキーマで共通のフォーマット語彙speech_transcriptvoice_interactiontiered_annotationが、audio_dialogueディスプレイで扱えるものをすべて受け付けるようになりました。以前はディスプレイだけの対応でした。
  • **Whisper文字起こしのアノテーションYouTube字幕のアノテーション**では、この2つの出発点をそれぞれ最初から最後まで説明しています。

ASRと話者分離は引き続き上流で実行します。Potatoはその出力を読み込むだけで、文字起こし自体は行いません。


Potato 2.7.0

2026年7月リリース

Potato 2.7の土台にある考え方は1つです。アノテーションツールは、何を判断したかを記録するだけでなく、どのように判断されたかを測るべきだということ。これは2種類の判断者、つまりアノテーションを行う人間と、評価対象となるAIモデルの両方に当てはまります。

人間のラベル付けを測る

LLMを必要としない、7つのオプトイン機能です。

  • 心理測定エンジン — 項目反応理論をライブで動かす層で、単純な多数決ではなく、すべてのラベルに事後確率と信頼区間(p = 0.94 [0.88–0.97])を与えます。一致パターンだけからアノテーターの能力と項目の難易度を推定し、その判断が最も多くの情報をもたらすアノテーターに項目を割り当て、コードブックの不具合と思われる箇所を指摘します。
  • マルチプレイヤールーム — チームがすでに画面共有で行っているキャリブレーション会議を、ツールに組み込んで計測できるようにしたものです。ブラインド投票、ホストによる開示、議論、再投票という流れで進み、Krippendorffのαメーターがそのセッションの成果をリアルタイムで示します。
  • Boundary Lab — ラベル付けのたびに反事実的なプローブ(「それでも同じ判断になりますか?」)を出します。通常のアノテーションからコントラストセットが得られ、ゴールドアイテムを仕込まなくても一貫性のないアノテーターを見つけられます。
  • Truth Serum — surprisingly popular法によるピア予測スコアリング。ゴールドラベルなしで、判断が難しいアノテーションでは多数決を上回ります。
  • シンクアラウドモード — アノテーターが作業しながら声に出して考えます。音声認識は完全にローカルで動作し、その逐語トランスクリプトがそのまま根拠になります。
  • Paper Mode — コマンド1つで、プロジェクトをコンパイル可能なLaTeXのデータセットレポートに変換します。一致度統計と引用も含まれます。
  • Pocket Mode — スワイプできるカードスタック、オフライン同期、PWAインストールを備えた、モバイル前提のアノテーション。

AIエージェントの評価

エージェント評価スイートは、チーム構成とマルチモーダルエージェントを扱えるように拡張されました。クリックできるエージェント相互作用グラフ、エージェントをまたぐ失敗の要因特定、ハンドオフのレビュー、エージェント別・チーム別のスコアカード、ツール競合のタイムライン、創発的な振る舞いのタグ付けに加えて、GUI・コンピュータ操作のトラジェクトリ、全二重の音声タイムライン、動画の時間的グラウンディング、文書の表構造にも対応します。

その他

文書をまたぐイベントアノテーション、ターン単位のアノテーション、フルページエディタを備えた「生きた文書」としてのコードブック、任意でOCRを使えるPDFのページ間リンク、コホートごとにスキーマを設定できるRBACロール、10言語対応の管理者・アノテーターダッシュボード、そしてインストールの大幅な軽量化。AI SDKが遅延読み込みになり、起動時間はおよそ2.0秒から0.7秒になりました。


Potato 2.6.0

2026年6月リリース

Potato 2.6は質的データ分析の領域に踏み込み、エージェント評価ツールキットを強化します。QDAモード、シグナルベースのトリアージキューを備えたLLM-as-judgeのキャリブレーション・アライメントワークフロー、SFTとDPOの学習データを生成するトラジェクトリ編集スキーマが加わりました。また、Potatoのライセンスは(PolyForm Shieldから)GPL-3.0-or-laterに変更されました。

QDAモード

オプトインのqda_modeは、Potatoを共同での質的コーディング作業環境に変えます。有効にすると、生きたコードブック、in-vivoコーディング、アナリストメモ、ケース、全文検索が組み合わさり、1人のアナリストがコーパス全体をコーディングする場合に合わせたデフォルト設定で動きます。

yaml
qda_mode:
  enabled: true            # codebook + memos + cases + search
codebook_invivo_key: i     # mint a code from a text selection
search:
  enabled: true
  annotator_claim: true

QDAモードの詳細 →

LLM-as-Judgeのキャリブレーションとアライメント

1つ以上のLLM判定者でデータを自動ラベル付けし、その後ブラインドの人手キャリブレーションを行って、精度、一致度、キャリブレーション誤差を測定します。単一判定者向けのアライメントワークフローも別途あり、ルーブリックを改善していく過程で人手のゴールドラベルに対するCohenのカッパを追跡します。アノテーション中にインラインで判定結果を表示することもできます。

判定者キャリブレーションの詳細 → · 判定者アライメント →

シグナルベースのトリアージキュー

アイテムごとの品質シグナル(エージェントのエラー、本番環境での低評価、低いスコア、任意のカスタムフィールドなど)でアノテーションキューの優先順位を決めます。レビュー担当者は到着順ではなく、疑わしいアイテムから確認できます。

yaml
triage:
  enabled: true
  signal_field: quality_score
  invert_signal: true
assignment_strategy: priority

トリアージキューの詳細 →

SFT/DPOのためのトラジェクトリ編集

新しいtrajectory_editスキーマとtrajectory_correctionスキーマにより、アノテーターがエージェントのトレースの各ステップを書き直せます。エクスポーターは元の内容と修正後の内容の組を、教師ありファインチューニング用のターゲット(trajectory_sft.jsonl)とDPOの選好ペア(trajectory_dpo.jsonl)に変換します。

トラジェクトリ編集の詳細 →

eval_traceディスプレイ

推論、関数呼び出し、最終回答の3ペインからなるエージェントトレース表示です。Webhook、Langfuseのポーラー、監視対象ディレクトリからトレースが届き、届いた順に評価していく継続的評価のために作られています。

eval_traceの詳細 →

ワークフローと割り当て

  • 不均一なカバレッジ — アイテムごとのアノテーター上限、アノテーター間一致度のレポート、調停へのルーティング。アイテムによって必要なアノテーター数が異なるタスク向けです。
  • 放棄された割り当ての回収 — ProlificやQCでブロックされたワーカーが残した割り当てを回収できます。保持期間は設定可能で、回収処理は冪等です。
  • カスタムバッチ割り当て戦略 — あらかじめ定義したアイテムのバッチを特定のアノテーターに割り当てます。
  • リバースプロキシのURLプレフィックス — リバースプロキシの背後でサブパスからPotatoを配信できます。

ライセンス

PotatoはGPL-3.0-or-laterでリリースされるようになり、PolyForm Shieldから変更されました。派生物がGPLの下に留まる限り、商用利用を含めて使用、改変、再配布ができます。詳細はAboutページを参照してください。

パフォーマンスと安定性

  • 起動が約3倍高速に。 MLスタックが起動時に即座に読み込まれなくなりました。インポート時間は約6.5秒から2秒に、5万件のアイテムの起動は約10秒から5.7秒に、常駐メモリは約750MBから365MBになりました。
  • スキーマ名の変更。 annotation_type: highlightspanになり、移行処理が用意されています。古い設定はタイプ名を変更してください。既存のspan設定に影響はありません。
  • ルート登録、トレーニングフェーズ、Prolific、永続化、エクスポートとアンケート処理、Webhook、ソロモード、能動学習にわたる広範なQA強化を行いました。

Potato 2.5.0

2026年リリース

質的コーディング関連の機能をまとめて追加し、NLP・ML向けのアノテーション機能と並んで質的研究のワークフローにも使えるようにしました。

  • アノテーター間一致度 — Krippendorffのアルファに加えて、Cohenのカッパ(2者間)とFleissのカッパ(N人)を、管理者向けの一致度APIから利用できます。アノテーター間一致度ガイドを参照してください。
  • 新しいエクスポーターcodebook(スキーマごとのCSV。コード階層、色、説明、使用回数を含む)とquotation_report(スパンごとのCSV。テキスト、オフセット、出典文書、コーダーを含む)。
  • コード分析 — コード間の共起と、既存のインスタンスメタデータを使ったコード×属性のクロス集計を返す管理者エンドポイント。

Potato 2.4.5

2026年リリース

安定性とツール周りのリリースです。

  • 検証付きの改善ループ — ソロモードのアノテーションガイドラインを反復的に改善するためのプラグイン可能なフレームワーク。ガイドラインの矛盾やメタデータの漏れを防ぐガードレール付きです。
  • 設定バリデーター — 設定キーを既知の設定スキーマと照合するpython -m potato.validate_cliが追加されました。
  • セキュリティ — パス検証における兄弟プレフィックスのバイパスを利用したパストラバーサルを修正しました(GHSA-q9m2-fhv9-3jcf)。
  • 保存・ナビゲーションの状態同期、Prolific連携、複数フェーズのナビゲーション、品質管理のフィードバックに関する修正。

Potato 2.3.0

2026年3月9日リリース

Potato 2.3はPotatoの歴史上で最大のリリースで、エージェンティックアノテーション、ソロモード、ベストワーストスケーリング、SSO/OAuth認証、Parquetエクスポート、15の新しいデモプロジェクト、セキュリティ強化を導入しました。

エージェンティックアノテーション

人手のアノテーションによってAIエージェントを評価するための一式です。12種類のトレースフォーマットコンバーター、3種類の専用ディスプレイ、9種類の組み込みアノテーションスキーマが含まれます。

12種類のトレースフォーマットコンバーター — OpenAI、Anthropic、SWE-bench、OpenTelemetry、MCP、CrewAI/AutoGen/LangGraph、LangChain、LangFuse、ReAct、WebArena/VisualWebArena、ATIF、生のブラウザ録画からエージェントトレースをインポートできます。自動検出も利用できます。

yaml
agentic:
  enabled: true
  trace_converter: react       # or openai, anthropic, webarena, auto, etc.
  trace_file: "data/traces.jsonl"

3種類のディスプレイ:

  • エージェントトレースディスプレイ — 色分けされたステップカード、折りたたみ可能な観測結果、JSONの整形表示、タイムラインのサイドバー。ツールを使うエージェント向けです
  • Webエージェントトレースディスプレイ — クリック対象、テキスト入力、スクロール操作をSVGオーバーレイで示したフルスクリーンショット。フィルムストリップでの移動に対応し、ブラウジングするエージェント向けです
  • インタラクティブチャットディスプレイ — ライブチャットモード(アノテーターがプロキシ経由でエージェントと対話)とトレースレビューモード。会話型エージェント向けです

ターンごとの評価 — トレース全体の評価と並行して、個々のステップを評価できます。

9種類の組み込みスキーマagent_task_successagent_step_correctnessagent_error_taxonomyagent_safetyagent_efficiencyagent_instruction_followingagent_explanation_qualityagent_web_action_correctnessagent_conversation_quality

エージェントプロキシシステム — ライブでのエージェント評価に使えるOpenAI、HTTP、echoの各プロキシ。

エージェンティックアノテーションの詳細 →


ソロモード

1人の人間のアノテーターがLLMと協働してデータセット全体にラベルを付ける、12フェーズのワークフローです。人手のラベルは全体の10〜15%で済みながら、複数アノテーターのパイプラインと95%以上の一致率に達します。

12のフェーズ:

  1. シードアノテーション — 人間が多様な50件のインスタンスにラベルを付ける
  2. 初期LLMキャリブレーション — LLMがシード例を使ってラベルを付ける
  3. 混同分析 — 体系的な不一致パターンを特定する
  4. ガイドラインの改善 — LLMが提案し、人間が更新後のガイドラインを承認する
  5. ラベリング関数の生成 — ALCHEmistに着想を得たプログラム的ルール
  6. アクティブラベリング — 人間が最も情報量の多いインスタンスにラベルを付ける
  7. 自動改善ループ — 改善されたガイドラインで反復的に再ラベル付けする
  8. 不一致の検討 — 人間がLLMとラベリング関数の衝突を解決する
  9. エッジケースの合成 — LLMが曖昧な例を生成し、人間がラベルを付ける
  10. 段階的な確信度エスカレーション — 人間が最も確信度の低いラベルを確認する
  11. プロンプト最適化 — DSPyに着想を得た自動プロンプト探索
  12. 最終検証 — ランダムサンプルのレビュー
yaml
solo_mode:
  enabled: true
  llm:
    endpoint_type: openai
    model: "gpt-4o"
    api_key: ${OPENAI_API_KEY}
  seed_count: 50
  accuracy_threshold: 0.92

複数シグナルによるインスタンス優先順位付け — 最も価値の高いインスタンスを選ぶための、重み付けされた6つのプール(uncertain、disagreement、boundary、novel、error_pattern、random)。

ソロモードの詳細 →


ベストワーストスケーリング

アノテーターがタプルの中から最良と最悪のアイテムを選ぶ、効率的な比較アノテーションです。均衡不完備ブロック計画によるタプルの自動生成と、3つのスコアリング手法(カウント法、Bradley-Terry、Plackett-Luce)に対応します。

yaml
annotation_schemes:
  - annotation_type: bws
    name: fluency
    tuple_size: 4
    best_description: "Most Fluent"
    worst_description: "Least Fluent"

ベストワーストスケーリングの詳細 →


SSOとOAuth認証

Google OAuth(ドメイン制限)、GitHub OAuth(組織制限)、汎用のOIDC(Okta、Azure AD、Auth0、Keycloak)に対応した、本番運用に耐える認証です。自動登録、混在モード、セッション管理をサポートします。

yaml
authentication:
  method: google_oauth
  google_oauth:
    client_id: ${GOOGLE_CLIENT_ID}
    client_secret: ${GOOGLE_CLIENT_SECRET}
    allowed_domains:
      - "umich.edu"
    auto_register: true

SSOとOAuthの詳細 →


Parquetエクスポート

アノテーションをApache Parquet形式でエクスポートし、annotations.parquetspans.parquetitems.parquetの3つの構造化ファイルを生成します。snappy、gzip、zstd、lz4、brotliの各圧縮、増分エクスポート、日付・アノテーター単位のパーティショニングに対応します。pandas、DuckDB、PyArrow、Polars、Hugging Face Datasetsと互換性があります。

yaml
parquet_export:
  enabled: true
  output_dir: "output/parquet/"
  compression: zstd
  auto_export: true

Parquetエクスポートの詳細 →


15の新しいデモプロジェクト

project-hub/に、エージェンティックアノテーション(5件)、ソロモード(3件)、ベストワーストスケーリング(3件)、認証(2件)、エクスポートのワークフロー(2件)をカバーする新しいデモを追加しました。デモはpotato start config.yamlで起動できます。


セキュリティ強化

  • 有効期限を設定できる暗号学的に安全なセッショントークン
  • CSRF保護をデフォルトで有効化
  • 認証エンドポイントのレート制限
  • ユーザー提供コンテンツの入力サニタイズ
  • 全パッケージを更新した依存関係の監査
  • Content Security Policyヘッダー

その他の改善

  • 未対応のエージェントフレームワーク向けのカスタムトレースコンバーター
  • 複数アノテーターによる検証サンプリングを組み合わせたハイブリッドソロモード
  • スコア収束グラフを備えたBWS管理者ダッシュボードタブ
  • 日付パーティショニングに対応した増分Parquetエクスポート

v2.2とv2.3の比較

機能v2.2v2.3
エージェンティックアノテーションなし12コンバーター、3ディスプレイ、9スキーマ
ソロモードなし12フェーズの人間・LLMワークフロー
ベストワーストスケーリングなし3つのスコアリング手法を備えたBWS
認証ユーザー名のみ+ Google OAuth、GitHub OAuth、OIDC
Parquetエクスポートなし6つの圧縮方式に対応した3ファイル構成のParquet
デモプロジェクト125以上140以上(15件追加)
セキュリティ基本的な機能のみCSRF、レート制限、CSP、安全なセッション

Potato 2.2.0

2026年2月20日リリース

Potato 2.2は、9つの新しいアノテーションスキーマ、プラグイン可能なエクスポートシステム、MACE能力推定、55の検証済みアンケート、リモートデータソースを含む主要な機能リリースです。

新しいアノテーションスキーマ(9種類)

イベントアノテーション — トリガースパンと型付き引数ロールを持つN項イベント構造。ATTACK、HIRE、TRAVELなどのイベントに制約付きエンティティ引数とハブスポーク型アーク可視化でアノテーションできます。

yaml
annotation_schemes:
  - annotation_type: event_annotation
    name: events
    span_schema: entities
    event_types:
      - type: "ATTACK"
        trigger_labels: ["EVENT_TRIGGER"]
        arguments:
          - role: "attacker"
            entity_types: ["PERSON", "ORGANIZATION"]
            required: true

イベントアノテーションの詳細 →

エンティティリンキング — スパンアノテーションを外部知識ベース(Wikidata、UMLS、カスタムREST API)にリンクします。任意のスパンスキーマにentity_linking:ブロックを追加して、KB検索とリンキングを有効にします。

エンティティリンキングの詳細 →

トリアージ — 高速データスクリーニングのためのProdigyスタイルの承認/却下/スキップインターフェース。カスタマイズ可能なラベル、キーボードショートカット、高スループットアノテーションのための自動進行機能があります。

トリアージの詳細 →

ペアワイズ比較 — バイナリ(好みのタイルをクリック)またはスケール(スライダー)モードで2つのアイテムを比較します。items_keyallow_tie、設定可能な範囲を持つscale:ブロックをサポートします。

ペアワイズ比較の詳細 →

会話ツリー — ノードごとの評価、パス選択、ブランチ比較による階層的な会話構造のアノテーション。

会話ツリーの詳細 →

共参照チェーン — 視覚的インジケーター付きで共参照するテキストメンションをチェーンにグループ化します。エンティティタイプ、シングルトン制御、複数のハイライトモードをサポートします。

共参照チェーンの詳細 →

セグメンテーションマスク — ピクセルレベルの画像セグメンテーション用の新しいfilleraserbrushツール。

PDF/ドキュメント用バウンディングボックス — ドキュメントアノテーションタスク用にPDFページ上にボックスを描画。

非連続スパンallow_discontinuous: trueで、非連続のテキストセグメントを単一のスパンとして選択可能に。


インテリジェントアノテーション

MACE能力推定 — 真のラベルとアノテーター能力スコア(0.0-1.0)を同時に推定する変分ベイズEMアルゴリズム。radio、likert、select、multiselectスキーマで動作します。

yaml
mace:
  enabled: true
  trigger_every_n: 10
  min_annotations_per_item: 3

MACEの詳細 →

オプションハイライト — 離散アノテーションタスクの正解候補をLLMベースでハイライト。スターインジケーターでトップkオプションをハイライトし、可能性の低いオプションを暗くします。

yaml
ai_support:
  option_highlighting:
    enabled: true
    top_k: 3
    dim_opacity: 0.4

オプションハイライトの詳細 →

多様性順序付け — 埋め込みベースのクラスタリングとラウンドロビンサンプリングにより、アノテーターが類似アイテムの連続ではなく多様なコンテンツを見ることを保証します。

yaml
assignment_strategy: diversity_clustering
diversity_ordering:
  enabled: true
  prefill_count: 100

多様性順序付けの詳細 →


エクスポートシステム

新しいプラグイン可能なエクスポートCLI(python -m potato.export)がアノテーションを6つの業界標準形式に変換します:COCO、YOLO、Pascal VOC、CoNLL-2003、CoNLL-U、セグメンテーションマスク。

bash
python -m potato.export --config config.yaml --format coco --output ./export/

エクスポート形式の詳細 →


リモートデータソース

URL、S3、Google Drive、Dropbox、Hugging Face、Google Sheets、SQLデータベースから新しいdata_sources:設定ブロック経由でアノテーションデータを読み込みます。部分読み込み、キャッシュ、認証情報管理を含みます。

リモートデータソースの詳細 →


アンケート

8カテゴリ(性格、メンタルヘルス、感情、自己概念、社会的態度、回答スタイル、短縮版、デモグラフィック)にわたる55の検証済みアンケート。instrument: "tipi"で事前/事後調査フェーズに使用できます。

アンケートの詳細 →


その他の改善

  • キーフレーム補間によるビデオオブジェクトトラッキング
  • 外部AI設定ファイルのサポート
  • フォームレイアウトのグリッド改善
  • PDF、Word、コード、スプレッドシートのフォーマットハンドラー

Potato 2.1.0

2026年2月5日リリース

Potato 2.1では、インスタンス表示システム、ビジュアルAIサポート、スパンリンキング、マルチフィールドスパンアノテーション、レイアウトカスタマイズが導入されました。

インスタンス表示システム

コンテンツ表示をアノテーションから分離する新しいinstance_display設定ブロック。画像、ビデオ、オーディオ、テキスト、対話の任意の組み合わせを任意のアノテーションスキームとともに表示できます。

yaml
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]

texthtmlimagevideoaudiodialoguepairwisecodespreadsheetdocumentpdfを含む11の表示タイプをサポートします。

インスタンス表示の詳細 →


マルチフィールドスパンアノテーション

スパンアノテーションスキームがtarget_fieldオプションをサポートし、同じインスタンス内の複数のテキストフィールドにまたがってアノテーションできるようになりました。

yaml
annotation_schemes:
  - annotation_type: span
    name: source_entities
    labels: [PERSON, ORGANIZATION]
 
  - annotation_type: span
    name: summary_entities
    labels: [PERSON, ORGANIZATION]

スパンアノテーションの詳細 →


スパンリンキング

アノテーション済みスパン間の型付き関係を作成するための新しいspan_linkアノテーションタイプ。有向・無向リンク、N項関係、視覚的アーク表示、ラベル制約をサポートします。

yaml
annotation_schemes:
  - annotation_type: span
    name: entities
    labels:
      - name: "PERSON"
        color: "#3b82f6"
      - name: "ORGANIZATION"
        color: "#22c55e"
 
  - annotation_type: span_link
    name: relations
    span_schema: entities
    link_types:
      - name: "WORKS_FOR"
        directed: true
        allowed_source_labels: ["PERSON"]
        allowed_target_labels: ["ORGANIZATION"]
        color: "#dc2626"

スパンリンキングの詳細 →


ビジュアルAIサポート

画像およびビデオアノテーション支援のための4つの新しいビジョンエンドポイント:

  • YOLO — 高速ローカルオブジェクト検出
  • Ollama Vision — ローカルビジョン言語モデル(LLaVA、Qwen-VL)
  • OpenAI Vision — GPT-4oクラウドビジョン
  • Anthropic Vision — Claudeのビジョン機能

オブジェクト検出、事前アノテーション、分類、ヒント、シーン検出、キーフレーム検出、オブジェクトトラッキングを含みます。

ビジュアルAIサポートの詳細 →


レイアウトカスタマイズ

HTMLテンプレートとCSSを使用した高度なカスタムビジュアルレイアウトの作成。Potatoは編集可能なレイアウトファイルを生成します。また、グリッドレイアウト、色分けされたオプション、セクションスタイリングを含む完全なカスタムテンプレートを提供することもできます。

yaml
task_layout: layouts/custom_task_layout.html

コンテンツモデレーション、対話QA、医療レビューの3つのレイアウト例が含まれています。

レイアウトカスタマイズの詳細 →


ラベル根拠

各ラベルが適用される理由についてバランスの取れた説明を生成する4番目のAI機能。アノテーターがさまざまな分類の観点を理解するのに役立ちます。

yaml
ai_support:
  features:
    rationales:
      enabled: true

AIサポートの詳細 →


その他の改善

  • 信頼性向上のための50以上の新しいテスト
  • レスポンシブデザインの改善
  • レイアウト例を含むプロジェクトハブの組織強化
  • アノテーションタイプ全体のバグ修正

v2.0とv2.1の比較

機能v2.0v2.1
インスタンス表示アノテーションのハックで対応専用のinstance_displayブロック
スパンターゲット単一テキストフィールドtarget_fieldでマルチフィールド
スパンリンキング利用不可完全なspan_linkタイプ
ビジュアルAI利用不可YOLO、Ollama Vision、OpenAI Vision、Anthropic Vision
レイアウトカスタマイズ基本的な自動生成自動生成+カスタムテンプレート
AI機能3つ(ヒント、キーワード、提案)4つ(+根拠)

Potato 2.0

Potato 2.0は、インテリジェントでスケーラブルなアノテーションのための強力な新機能を導入するメジャーリリースです。このセクションでは、主な追加機能と改善点を紹介します。

AIサポート

大規模言語モデルを統合して、インテリジェントなヒント、キーワードハイライト、ラベル提案でアノテーターを支援します。

サポートされるプロバイダー:

  • OpenAI (GPT-4, GPT-3.5)
  • Anthropic (Claude 3, Claude 3.5)
  • Google (Gemini)
  • Ollama(ローカルモデル)
  • vLLM(セルフホスト)
yaml
ai_support:
  enabled: true
  endpoint_type: openai
  ai_config:
    model: gpt-4
    api_key: ${OPENAI_API_KEY}
  features:
    hints:
      enabled: true
    label_suggestions:
      enabled: true

AIサポートの詳細 →


オーディオアノテーション

Peaks.jsを利用した波形可視化による本格的なオーディオアノテーション。セグメントの作成、時間領域のラベル付け、キーボードショートカットによる音声アノテーションが可能です。

主な機能:

  • 波形可視化
  • セグメントの作成とラベリング
  • セグメントごとのアノテーション質問
  • 15以上のキーボードショートカット
  • サーバーサイドの波形キャッシュ
yaml
annotation_schemes:
  - annotation_type: audio_annotation
    name: speakers
    mode: label
    labels:
      - Speaker A
      - Speaker B

オーディオアノテーションの詳細 →


アクティブラーニング

モデルの不確実性に基づいてアノテーションインスタンスを自動的に優先順位付けします。既存のアノテーションで分類器を訓練し、最も有益な例にアノテーターを集中させます。

機能:

  • 複数の分類器オプション(LogisticRegression、RandomForest、SVC、MultinomialNB)
  • さまざまなベクタライザー(TF-IDF、Count、Hashing)
  • 再起動時のモデル永続化
  • LLM強化選択
  • マルチスキーマサポート
yaml
active_learning:
  enabled: true
  schema_names:
    - sentiment
  min_instances_for_training: 30
  update_frequency: 50
  classifier:
    type: LogisticRegression

アクティブラーニングの詳細 →


トレーニングフェーズ

メインタスクの前に練習問題でアノテーターの資格を確認します。即時フィードバックを提供し、設定可能な合格基準で品質を確保します。

機能:

  • 既知の回答を持つ練習問題
  • 即時フィードバックと説明
  • 設定可能な合格基準
  • リトライオプション
  • 管理ダッシュボードでの進捗追跡
yaml
phases:
  training:
    enabled: true
    data_file: "data/training.json"
    passing_criteria:
      min_correct: 8
      total_questions: 10

トレーニングフェーズの詳細 →


強化された管理ダッシュボード

アノテーションタスクの包括的なモニタリングと管理インターフェース。

ダッシュボードタブ:

  • 概要: 高レベルメトリクスと完了率
  • アノテーター: パフォーマンス追跡、タイミング分析
  • インスタンス: 不一致スコア付きデータ閲覧
  • 設定: リアルタイム設定調整
yaml
admin_api_key: ${ADMIN_API_KEY}

管理ダッシュボードの詳細 →


データベースバックエンド

コネクションプーリングとトランザクションサポートを備えた大規模デプロイメント向けMySQLサポート。

yaml
database:
  type: mysql
  host: localhost
  database: potato_db
  user: ${DB_USER}
  password: ${DB_PASSWORD}

Potatoは初回起動時に必要なテーブルを自動的に作成します。


アノテーション履歴

タイムスタンプ、ユーザーID、アクションタイプを含むすべてのアノテーション変更の完全な追跡。監査と行動分析が可能になります。

json
{
  "history": [
    {
      "timestamp": "2024-01-15T10:30:00Z",
      "user": "annotator_1",
      "action": "create",
      "schema": "sentiment",
      "value": "Positive"
    }
  ]
}

マルチフェーズワークフロー

複数の順次フェーズを持つ複雑なアノテーションワークフローの構築:

  1. 同意 - インフォームドコンセントの収集
  2. 事前調査 - デモグラフィックとスクリーニング
  3. 指示 - タスクガイドライン
  4. トレーニング - 練習問題
  5. アノテーション - メインタスク
  6. 事後調査 - フィードバック調査
yaml
phases:
  consent:
    enabled: true
    data_file: "data/consent.json"
  prestudy:
    enabled: true
    data_file: "data/demographics.json"
  training:
    enabled: true
    data_file: "data/training.json"
  poststudy:
    enabled: true
    data_file: "data/feedback.json"

マルチフェーズワークフローの詳細 →


v2.0設定の変更

新しい設定構造

Potato 2.0ではよりクリーンな設定形式を使用します:

v1(旧):

yaml
data_files:
  - data.json
id_key: id
text_key: text
output_file: annotations.json

v2(新):

yaml
data_files:
  - "data/data.json"
 
item_properties:
  id_key: id
  text_key: text
 
output_annotation_dir: "output/"
output_annotation_format: "json"

セキュリティ要件

設定ファイルはtask_dir内に配置する必要があります:

yaml
# Valid - config.yaml is in the project directory
task_dir: "."
 
# Valid - config in configs/ subdirectory
task_dir: "my_project/"

クイック比較

機能v1v2.0v2.1v2.2v2.3
AI/LLMサポートなしありあり+ビジュアルAI+根拠+オプションハイライト+ソロモード
エージェンティックアノテーションなしなしなしなし12種類のコンバーター、3種類の表示
ベストワーストスケーリングなしなしなしなしあり(3種類の計分方法)
オーディオアノテーション基本完全な波形完全な波形完全な波形完全な波形
アクティブラーニングなしありありあり+多様性順序付け+ソロモード連携
インスタンス表示なしなしありありあり
スパンリンキングなしなしありありあり
イベントアノテーションなしなしなしありあり
エンティティリンキングなしなしなしありあり
ペアワイズ/トリアージ/共参照/ツリーなしなしなしありあり
レイアウトカスタマイズなし自動生成自動+カスタムテンプレート自動+カスタムテンプレート自動+カスタムテンプレート
トレーニングフェーズなしありありありあり
管理ダッシュボード基本強化強化強化+MACE+BWSタブ、ソロモード
データベースバックエンドファイルのみファイル+MySQLファイル+MySQLファイル+MySQLファイル+MySQL
エクスポートCLIなしなしなしあり(COCO、YOLO、CoNLLなど)+Parquet
認証ユーザー名ユーザー名ユーザー名ユーザー名+Google/GitHub OAuth、OIDC
アンケートなしなしなし55の検証済みアンケート55の検証済みアンケート
リモートデータソースなしなしなしS3、GDrive、HuggingFaceなどS3、GDrive、HuggingFaceなど

移行ガイド

設定の更新(v1からv2へ)

  1. データ設定

    yaml
    # Old
    id_key: id
    text_key: text
     
    # New
    item_properties:
      id_key: id
      text_key: text
  2. 出力設定

    yaml
    # Old
    output_file: annotations.json
     
    # New
    output_annotation_dir: "output/"
    output_annotation_format: "json"
  3. 設定ファイルの場所 設定ファイルがプロジェクトディレクトリ内にあることを確認してください。

サーバーの起動

bash
# v2 command
python -m potato start config.yaml -p 8000
 
# Or shorthand
potato start config.yaml

はじめに

Potatoを試す準備はできましたか?クイックスタートガイドから始めるか、特定の機能を探索してください:

v2.3の機能:

v2.2の機能:

v2.1の機能:

コア機能: