繁中

人工智慧已經可以提取信息了,為什麼它更敢?

LangExtract是一個免費的Python庫,它利用Gemini等人工智慧模型從報告和書籍等非結構化文本中提取結構化數據,例如姓名、情緒和藥物名稱。該庫可以將每個提取的信息與原始文本中的相應位置準確關聯,還可以生成交互式視覺內容以進行手動驗證。
通過分塊和並行計算,它可以有效地處理大文件,同時與雲和本地模型兼容,無需額外的微調。無論是醫療保健還是學術研究,用戶都可以快速將非結構化文檔轉換為可靠且有組織的數據進行分析,節省時間並提高信息處理的準確性。

使用大型模型進行信息提取會產生一種錯覺:

看來這個問題已經被LL M徹底解決了。

拋出一段文本,就出來了SON結構,看起來又快又準確。但只要你把這個過程投入到 真正的商業,問題就會立即暴露出來。
谷歌的開源 LangExtract 設計時考慮到了這些問題。

為什麼「可以提取」與「可以使用」不一樣

在演示階段,大模型提取幾乎沒有門檻;
但在工程和業務層面,提取存在三個真正的困難。

抽樣結果無法驗證

該模型為您提供了一個很難回答一個簡單問題的領域:

它來自哪句話?

當文本很長並且結果很多時,幾乎不可能手動比較它們。

產出結構不穩定

今天的輸出是這個SON,
明天就會少一片田地,
後天又多了一句「解釋」。

並不是提示寫得不好,而是 生成模型的自然本質.

隨著文本的增加,召回率立即下降

在數萬字的文檔中,目標信息就像「大海撈針」。
在一次提示中找到所有這些幾乎是不可能的。

這三個問題正是LangExtract想要解決的。

LangExtract有什麼作用?我們先來談談結論

如果用一句話概括:

LangExtract是一個「以可互換性為核心目標的信息提取框架」。

這不是讓模型更自由,而是讓它 更有約束性和可追溯性.

它的核心理念實際上是非常「反LLM直覺」的

提取不是「生成」,而是「注釋」

LangExtract在示例和文檔中反覆強調一件事:

  • 提取的內容應該是 直接從原文 儘可能
  • 不鼓勵總結、重寫和集成

這意味著它不認為LLM是「可以編寫SON的作家」,
相反,它用作 智能文本注釋器.

這種定位決定了其所有後續設計。

每個提取結果必須能夠返回原文

LangExtract的輸出不僅包含結構化欄位,還包含以下內容:

  • 原始片段
  • 原文中的精確位置

這使您能夠:

  • 原文中的亮點
  • 快速手動驗證
  • 追蹤錯誤來源

這一步幾乎是醫療、法律和合規場景所需要的。

長文章不是一次處理,而是「多次搜索」

LangExtract並不假設「一個提示就能找到全部」。

它的策略更像是一個搜尋引擎:

  • 文本首先被阻止
  • 並行處理
  • 多次通過

核心目標只有一個: 是為了提高召回率,而不是讓模型看起來很聰明。

為什麼LangExtract強迫你寫幾個例子?

如果您查看過它的REAUTE,您會發現:

例如,幾乎是必需品。

原因很簡單:
在提取任務中, 例子比規則更具約束力.

該示例在這裡扮演了三重角色:

  1. 固定產出結構
  2. 定義「什麼構成合法提取」
  3. 抑制模型的自由發揮

即使當您的規則和示例不一致時,LangExtract也會直接警告您。

這本質上是在強迫你:
明確定義提取任務,然後將其交給模型。

在模式支持方面,非常現實

LangExtract未附加到一個模型:

  • 雲支持Gemini和OpenAI
  • 對Ollama的原生支持(例如gemma 2)
  • 該架構允許提供商擴展自己

文件還非常直接地說了:

  • 快速、廉價的模型-簡單的任務
  • 更強大的模型→複雜提取

它並不假設模型是「足夠可靠的」,
相反,默認模型 註定會犯錯誤.

容易被忽視的一點:審查界面

LangExtract可以生成一個獨立的HTML頁面:

  • 原文在左邊
  • 右側提取結果
  • 單擊該按鈕可以查找

這不是「錦上添花」,而是對現實的承認:

在真實的業務流程中,
總會有一個「人」接受模型結果。

這個HTML本質上是一個 LLM提取的手動接受界面.

Github:https://github.com/google/langextract
管材:

返回頂端