Repolode
enoch3712

enoch3712/ExtractThinker

基于 LLM 的 Python 文档智能库,将 PDF、图片等文档转换为经过校验的 Pydantic 结构化数据。

Star
1,604
Fork
156
未关闭 Issue
5
最近提交
2个月前

这是什么?

ExtractThinker 是一个用于从文档中提取结构化数据的 Python 库。开发者使用 Pydantic 定义需要的字段,再选择文档加载器和 LLM,库会完成加载、分类、拆分和提取,最终返回经过校验的对象。

它覆盖文档处理流程中的常见环节:可读取 PDF、图片、表格和电子表格的文档加载器,用于拆分混合文档包的分类与切分功能,以及处理长输入或不完整模型响应的补全策略。通过 Ollama 可以接入本地模型。主分支还新增了基于 SQLite 的页面检索、字段并行提取、模型路由、本地实体脱敏和 MCP 服务,但这些功能尚未发布到 PyPI,需要从源码安装。

结构校验并不能保证提取结果的事实准确性,建议在自己的文档上评估效果。提取过程会调用所配置的模型服务商,可能产生费用。

核心功能

  • 01使用 Pydantic 模型定义提取目标,并支持字段约束与校验。
  • 02通过可插拔的文档加载器读取 PDF、图片、表格和电子表格。
  • 03对混合文档包进行分类和拆分。
  • 04支持通过 Ollama 使用本地模型,也支持云端 LLM 服务商。
  • 05通过补全策略处理长文档和不完整的模型响应。

适用场景

  • 从扫描件或电子发票中提取发票号、金额和供应商信息。
  • 在处理前对混合业务文档包进行分类和拆分。
  • 构建文档处理流水线,将结果输出为类型化数据供下游 Python 代码使用。

快速上手

  1. 1

    从 PyPI 安装该库

    pip install extract-thinker
  2. 2

    设置 EXTRACT_THINKER_MODEL 和对应服务商的 API 密钥,然后运行示例提取脚本

使用前须知

  • 需要 LLM 服务商和 API 密钥,提取过程可能产生费用。
  • 扫描件需要 OCR 或支持视觉的模型。
  • 2026 年新增功能尚未发布到 PyPI,需要从 git 源码安装。

收录于专题

标签

#document-intelligence#llm#pdf#ocr#pydantic#document-parsing#structured-extraction#ai#document-image-analysis#document-processing

常见问题

ExtractThinker 是什么?
基于 LLM 的 Python 文档智能库,将 PDF、图片等文档转换为经过校验的 Pydantic 结构化数据。 ExtractThinker 是一个用于从文档中提取结构化数据的 Python 库。开发者使用 Pydantic 定义需要的字段,再选择文档加载器和 LLM,库会完成加载、分类、拆分和提取,最终返回经过校验的对象。
ExtractThinker 可以免费使用吗?用的什么许可证?
ExtractThinker 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
ExtractThinker 还在维护吗?
半年内有更新。ExtractThinker 最近一次提交是在 2026年9月16日。
ExtractThinker 适合用来做什么?
从扫描件或电子发票中提取发票号、金额和供应商信息。 在处理前对混合业务文档包进行分类和拆分。 构建文档处理流水线,将结果输出为类型化数据供下游 Python 代码使用。
ExtractThinker 怎么安装和运行?
从 PyPI 安装该库: pip install extract-thinker 设置 EXTRACT_THINKER_MODEL 和对应服务商的 API 密钥,然后运行示例提取脚本
在哪里获取 ExtractThinker?
源代码和安装说明在 GitHub 上:https://github.com/enoch3712/ExtractThinker

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目