shcherbak-ai/contextgem

ContextGem: Effortless LLM extraction from documents

What it solves

ContextGem 簡化了從文件中提取結構化數據和見解的過程。它消除了手動編寫複雜的提取提示詞、設計驗證模型以及將輸出映射回來源引用的需求,而這些通常是實現可靠結構化提取所必需的。

How it works

ContextGem 使用聲明式方法,用戶使用自然語言描述「要提取什麼」,而框架處理「如何提取」。

  1. Define Extraction Context: 一個 Document 對象被創建,其中包含來源材料的文本或視覺內容。
  2. Define Extraction Targets: 用戶定義 Aspects(用於提取主題或主題等文本段落)和 Concepts(用於提取實體、事實或分類等特定數據點)。
  3. Run LLM Extraction: 配置一個 DocumentLLM(通過 LiteLLM 支持雲端或本地模型)來處理文件並提取定義的 aspects 和 concepts。

Who it’s for

開發人員正在構建需要對單個文件(如合同、發票或報告)進行深度、結構化分析的應用程序,並且希望避免在單個文件任務中因傳統 RAG 檢索而產生的不一致性。

Highlights

  • Granular Reference Mapping: 為提取的數據提供精確的段落級和句子級引用。
  • Automated Prompting and Modeling: 自動處理動態提示詞生成和數據建模。
  • Built-in Justifications: 為提取的信息自動生成理由說明。
  • Hierarchical Extraction: 支持嵌套上下文提取,允許 aspects 包含其他 aspects 或 concepts。
  • Broad LLM Support: 通過 LiteLLM 集成多種雲端和本地 LLM。