ContextGem

用描述取代提示詞的 Python 文件抽取框架,1.0 版加入「決策模型」,是非題與分類題改用機率回答,又快又省

免費
一句話介紹:用描述取代提示詞的 Python 文件抽取框架,1.0 版加入「決策模型」,是非題與分類題改用機率回答,又快又省

ContextGem 是挪威 Shcherbak AI 開發的開源 Python 框架,10 月 26 日以 1.0 版登上 Product Hunt,GitHub 約兩千顆星。它要解決的是「從合約、報告這類長文件裡可靠地抽資料」:平常要自己寫提示詞、設計驗證用的資料模型、把輸出對回原文段落、串多步驟流程,還要追蹤各模型用量。ContextGem 把這些做成宣告式的管線,官方口號是「Describe, don't prompt」,你只描述要抽什麼,提示詞由框架自動產生。

功能特色與適用場景:它有兩個核心概念。Aspect(面向)是抽出文件裡的某類段落,例如「付款條款」會回傳原文中講付款的段落;Concept(概念)則是推論出新的值,型別有字串、布林、數字、日期、評分、標籤與 JSON 物件。每個抽出的項目都能回溯到原文的段落或句子,也可以要求附上理由。官方範例是在一份顧問合約裡找出「異常內容」,結果抓到兩句和合約無關的句子,並附上來源句與判斷理由。

1.0 版最大的新功能是「決策模型」(decision models)。這類模型不生成文字,而是對封閉式問題(是或否、多選一標籤、量表等級)直接給出每個答案的機率,你自己設門檻。官方建議的分工是:需要推理的開放式問題交給 LLM,大量的是非題與分類題交給決策模型,速度快、成本低。同一份文件可以用模型群組,讓不同問題自動送到合適的模型,也能設定備援。LLM 端透過 LiteLLM 支援 OpenAI、Anthropic、Google、Azure OpenAI、xAI、Ollama、LM Studio 等;決策模型端支援 TypeSafe 的 Jev、OpenAI Decisions API、Microsoft Foundry 等。裝上 docling 擴充套件後,可以直接處理 PDF、DOCX、PPTX、XLSX 與 HTML,並保留頁碼。

要注意的是:1.0 有破壞性變更,部分類別與參數改名或移除,也不再支援 Python 3.10,從 0.x 升級要照遷移指南改。官方也直說小型本機模型可能跟不上詳細的抽取指令,要先用自己的文件抽樣測試。

台灣使用者怎麼用:適合法務科技、會計師事務所、銀行授信或採購部門的開發團隊,例如批次讀取供應商合約,抽出付款天數、終止條款、準據法,並標示原文出處方便法務覆核;大量「有沒有自動續約條款」這種是非題就交給決策模型降低成本。它是給工程師用的函式庫,沒有圖形介面;處理中文文件前,建議先比較不同模型在繁中合約上的表現。

TheAI學院 編輯建議

編輯實測後的真心話

文件抽取這件事,難的從來不是讓 LLM 吐出答案,而是讓答案可驗證、可追溯、成本可控。ContextGem 1.0 加入決策模型這一步很務實:合約裡九成問題其實是「有沒有」「是哪一種」,不需要讓大模型寫一段話。對要做合約審閱、授信文件分析的台灣開發團隊,它是值得放進候選名單的開源方案,但記得先用繁中文件實測模型表現。

— theai 編輯團隊

主要功能

  • 宣告式定義 Aspect(抽原文段落)與 Concept(推論新值),提示詞由框架自動產生
  • 支援字串、布林、數字、日期、評分、標籤與 JSON 物件等型別化、經驗證的輸出
  • 每個抽出項目可回溯到原文段落或句子,並可附上判斷理由
  • 1.0 新增決策模型,對是非、標籤、量表題回傳各答案機率並可自訂門檻
  • 模型群組依問題類型分派給 LLM 或決策模型,並可設定備援模型
  • 透過 LiteLLM 接 OpenAI、Anthropic、Google、Ollama 等雲端或本機 LLM
  • 搭配 Docling 處理 PDF、DOCX、PPTX、XLSX、HTML 並保留頁碼

如何使用 ContextGem

  1. 在 Python 專案中執行 pip install -U contextgem(要處理 PDF、Word 等檔案再加裝 contextgem[docling])
  2. 用 Document 載入文件文字,或先以 Docling 轉換檔案
  3. 以 Aspect 描述要找的段落、以 Concept 描述要推論的值與型別,並視需要開啟出處與理由
  4. 建立 DocumentLLM(填入模型名稱與 API 金鑰),封閉式問題可另建 DocumentDecisionModel
  5. 呼叫 extract_all 取得結果,抽樣比對原文出處後再擴大到整批文件

適用場景

  • 法務團隊批次抽取合約的付款條件、終止條款與準據法並標示出處
  • 銀行或租賃公司從授信文件中判斷是否含特定擔保或違約條款
  • 採購部門比對大量供應商合約,找出異常或缺漏條款
  • 在 AI 代理流程中作為文件攝取工具,輸出型別化資料給下游系統

ContextGem 的優點與缺點

優點

  • Apache 2.0 開源免費,不綁定特定模型供應商
  • 出處回溯與理由說明內建,適合需要人工覆核的法務與稽核場景
  • 大量封閉式問題改用決策模型,可明顯壓低 API 成本與延遲

缺點

  • 1.0 有破壞性變更且不再支援 Python 3.10,舊專案升級要改程式
  • 官方提醒小型本機模型可能無法遵循詳細抽取指令
  • 純 Python 函式庫、沒有圖形介面,需要開發者導入

價格方案

Apache 2.0 開源、免費;呼叫雲端 LLM 或決策模型的 API 費用依你選用的供應商另計,也可接本機模型

ContextGem 常見問題

ContextGem 要錢嗎?

框架本身以 Apache 2.0 授權開源免費,用 pip install -U contextgem 或 uv add contextgem 安裝。實際花費來自你呼叫的 LLM 或決策模型 API,費用依供應商計算;也可以接 Ollama、LM Studio 等本機模型。

什麼是決策模型?跟 LLM 有什麼不同?

決策模型不寫文字,而是對封閉式問題(是或否、多選一標籤、量表等級)直接給出每個可能答案的機率,由你設定門檻。官方建議需要推理的開放問題用 LLM,大量是非題與分類題用決策模型,比較快也比較便宜;交給決策模型前,最好先拿一批文件和 LLM 結果比對。

可以直接丟 PDF 或 Word 檔嗎?

可以。安裝 contextgem[docling] 擴充後,能把 PDF、DOCX、PPTX、XLSX、HTML 轉成保留結構與頁碼的文件,再進行抽取。

從 0.x 版升級要注意什麼?

1.0 有部分類別與參數改名或移除、預設值也有調整,且不再支援 Python 3.10。官方提供遷移指南,也可以把文件索引 llms.txt 交給程式碼代理協助修改。

使用者評價

還沒有足夠評價,搶先分享你的使用心得!

寫下你的評價

評論將經審核後公開。

ContextGem 的替代方案

查看相似的 AI 工具 →

相關 AI 工具

猜你也想看的AI 資料探勘

更多挪威的 AI 工具

同樣來自挪威的 AI 工具,一起看看。

看全部15 款挪威 AI 工具 →

前往官網 ↗