Skip to content

文本標註工具對比:開源與付費 NLP 工具

從命名實體、關係、共指和分類幾個方面對比 Potato、INCEpTION、Prodigy、Label Studio、doccano、brat 與 Argilla,包括許可證、價格和一致性指標。

文本標註工具把文件展示給標註者,並記錄他們標出的內容:給整篇文本的標籤、像命名實體這樣高亮的片段,以及片段之間的關聯。Potato、INCEpTION、doccano 和 Label Studio 的 Community Edition 都可以免費自行部署,也都能處理命名實體識別和關係。它們的差別在於共指、知識庫連結,以及不買付費方案能否衡量標註者之間的一致性。 Prodigy 是付費選項。brat 和 Argilla 已不再增加新功能。

大多數文本任務屬於三種形式之一。文本分類給整篇文件一個標籤。命名實體識別等片段任務標出文本中的某一段。關係抽取共指消解把片段彼此關聯起來。本頁的工具都能處理片段,差別最大的是關聯這一步。

本頁只討論文本。所有資料類型放在一頁裡的對比見 AI 標註工具對比

哪些文本標註工具值得比較?

工具許可證價格適合
PotatoGPL-3.0免費每個條目由多名標註者標註、需要報告一致性的研究
INCEpTIONApache-2.0免費需要連結知識庫的語言學標註
Prodigy專有390 美元,或每席位 490 美元(至少五個席位)想用指令碼、讓模型參與標註迴圈的 spaCy 使用者
Label StudioApache-2.0(Community Edition)免費;Starter 方案每月 99 美元,每增加一名使用者 49 美元同時標註文本和影像、音訊或影片的團隊
doccanoMIT免費快速啟動一個命名實體或分類項目
bratMIT免費讀取或擴充已在 brat 中標註的語料庫
ArgillaApache-2.0免費Hugging Face 生態中的反饋與偏好資料

功能對照

PotatoINCEpTIONProdigyLabel Studiodoccano
文件分類
片段(命名實體)
片段間關係有(span_link有(Relations 標籤)有,作為項目選項
一致性指標有,免費有,免費有,在付費產品中僅付費方案
模型或 LLM 建議13 種端點類型推薦器,另有實驗性 LLM 支援spacy-llmML 後端通過外部 API 自動標註
可自行部署

文本標籤上的一致性

兩名標註者標同一個實體時,邊界很少完全一致。按詞元逐一比較標籤的指標,會把每一處邊界差異都算成對標籤的分歧。所以,工具如何給片段一致性打分,和它是否報告一致性同樣重要。

  • Potato 報告基於 BIO 標籤的詞元級 κ、精確匹配與部分匹配下的片段 F1、單元化形式的 Krippendorff α,以及 Mathet 等人 (2015) 的 γ。後兩者除了片段的類別,還會衡量片段從哪裡開始、到哪裡結束。見衡量片段上的一致性
  • INCEpTION 計算 Cohen κ、Fleiss κ 和 Krippendorff α,並提供用於處理分歧的審定介面。
  • Prodigy 提供 Krippendorff α 和 Gwet AC2,以及用於裁決的 review 配方。
  • Label Studio 把一致性功能留給付費方案。其 Enterprise 版列出的指標是精確匹配、數值差、IoU 和片段重疊。
  • doccano 沒有一致性指標。

一般情況見標註者間一致性詳解

各工具詳情

INCEpTION

INCEpTION 由達姆施塔特工業大學開發,是 WebAnno 的後繼者,也是語言學工作中最接近的比較物件。它有關係層、用於共指的鏈層、文件級標註,以及把標註連結到 Wikidata 或 DBpedia 等知識庫條目的概念特徵。在知識庫連結上,它領先於 Potato。它的推薦器會給出標註建議,並內建主動學習。它是 Java 應用,部署起來比本頁其他工具更費事。該系統見 Eckart de Castilho 等人 (EMNLP 2024)

Prodigy

Explosion 出品的 Prodigy 圍繞"模型參與標註迴圈"而設計,與 spaCy 的結合比這裡任何其他工具都緊密。它覆蓋分類、片段、通過 rel.manual 配方標註的關係,以及通過 coref.manual 標註的共指,並藉助 spacy-llm 呼叫 LLM。任務用 Python 配方定義。它是本頁唯一的付費工具。

Label Studio

Label Studio 的文本功能只是一個同時處理影像、音訊、影片和時間序列的工具的一部分。它的 Relations 標籤用來關聯已標註的區域。Community Edition 免費且開源。一致性、對照標準答案的稽核和品質看板都在付費方案裡,最便宜的是每月 99 美元的 Starter。

doccano

doccano 是文本方面搭建最快的工具。它的項目類型包括文件分類、序列標註、序列到序列、意圖識別與槽位填充,以及語音轉文本。序列標註項目可以允許重疊片段和關係。它沒有共指或事件標註,也沒有一致性指標。

brat

許多 NLP 語料庫是在 brat 中構建的,它的 standoff 格式涵蓋實體、n 元事件、二元關係、等價集合、屬性和規範化。最新版本是 2012 年 11 月的 v1.3,master 分支最後一次提交是在 2021 年 10 月。它的獨立伺服器會匯入 Python 的 cgi 模組,而該模組已在 Python 3.13 中移除,所以不做相容處理的話,在當前的 Python 上無法啟動。讀取 brat 語料庫仍然值得。在 brat 中開新項目就很難說得通了。

Argilla

Argilla 專注於語言模型的反饋與偏好資料,並與 Hugging Face Datasets 整合。它支援文本分類、詞元分類和生成文本評估。它的程式碼倉庫現在寫明,原作者已轉向其他項目,今後會修復缺陷、釋出補丁,但不再增加新功能。

研究系統

有幾個標註系統以 ACL 系統演示的形式發表。Thresh 用 YAML 配置細粒度的文本評估任務,用於摘要、簡化和機器翻譯。GATE Teamware 2 處理文件分類,帶有標註者培訓和品質篩查。

以上內容於 2026 年 8 月和 9 月對照各項目的文件、價格頁和程式碼倉庫核實。

在工具之間遷移語料庫

從 2.9 版起,Potato 可以匯入 brat standoff、doccano JSONL、Prodigy 的 db-out 檔案和 CoNLL,因此在其中任何一個工具裡開始的項目都能在 Potato 中繼續。已有標籤會作為預標註匯入。brat 的關係和事件不會匯入,而是列在匯入警告中。見匯入項目

反過來,Potato 可以匯出 CoNLL-2003、CoNLL-U、Hugging Face 資料集、JSONL、CSV 和 Parquet。見為機器學習匯出標註

Potato 中的實體與關係任務

yaml
annotation_schemes:
  - annotation_type: span
    name: entities
    description: "Highlight each person, organization and location."
    labels: [PERSON, ORGANIZATION, LOCATION]
  - annotation_type: span_link
    name: relations
    description: "Link each person to the organization they work for."
    span_schema: entities
    link_types:
      - name: WORKS_FOR
        directed: true
        allowed_source_labels: [PERSON]
        allowed_target_labels: [ORGANIZATION]

span_linkentities 方案的片段之間畫出帶類型的關聯,allowed_source_labels 防止標註者把錯誤類型的實體連起來。事件和 n 元關係見關係與事件抽取,鏈見共指消解

Potato 在文本上不做的事

  • 它的知識庫連結比 INCEpTION 簡單。
  • 它不會像 Prodigy 的配方那樣,在標註者工作時更新 spaCy 模型。
  • 它沒有 spaCy 匯出器。請從 CoNLL 或 JSONL 轉換。
  • 從 brat 匯入時會跳過關係和事件。

常見問題

最好的免費文本標註工具是哪個?

如果只有一個命名實體或分類項目,doccano 最省事。如果是要把實體連結到知識庫的語言學標註,INCEpTION 最完整。如果研究中每個條目由多名標註者標註、使用眾包工人並需要報告一致性,Potato 不需要付費方案就具備這些功能。

有沒有 Prodigy 的開源替代品?

Potato、INCEpTION 和 doccano 都免費且開源。Prodigy 用 Python 配方的地方,Potato 用 YAML 配置;它還能匯入 Prodigy 的 db-out 檔案,所以在 Prodigy 中已經收集的標註可以沿用。

哪些文本標註工具會報告標註者間一致性?

Potato 和 INCEpTION 在免費版本中報告,Prodigy 在付費產品中報告。Label Studio 把一致性留給付費方案,doccano 沒有。對於片段任務,要檢查指標是否考慮了邊界分歧,例如 Krippendorff 的單元化 α 和 γ。

brat 還在維護嗎?

沒有。它的最後一個版本是 2012 年 11 月的 v1.3,獨立伺服器在 Python 3.13 上不做相容處理就無法啟動。從 2.9 版起,Potato 可以匯入 brat 語料庫,並把已有實體作為預標註保留下來。

能用免費工具標註共指嗎?

可以。INCEpTION 有用於共指的鏈層,Potato 有把提及歸併成鏈的 coreference 方案。doccano 不支援共指。

延伸閱讀