enoch3712/ExtractThinker
ExtractThinker is a Document Intelligence library for LLMs, offering ORM-style interaction for flexible and powerful document workflows.
解决的问题
ExtractThinker 简化了将非结构化文档(如 PDF、图像和电子表格)转换为结构化、已验证 Python 对象的流程。它允许用户使用 Pydantic 合约定义所需的数据模式,从而免去了编写复杂解析逻辑的手动工作。
工作原理
该库结合了文档加载器、LLM 和 Pydantic 进行验证。用户定义一个 Contract 类来指定他们想要提取的字段和约束。然后,Extractor 通过选定的解析器加载文档,通过 LLM 处理文本,并将输出映射到已验证的 Pydantic 对象。对于复杂的工作流程,它还包括用于文档分类、拆分混合文档包以及通过完成策略处理长输入的工具。
目标用户
它专为需要从各种文档格式中提取特定数据,并确保所得数据符合严格类型和值模式的开发人员而设计。
特点
- 类型化数据提取:使用 Pydantic 合约确保提取的数据经过验证且具有类型。
- 文档多样性:支持多种用于 PDF、图像、表格和电子表格的加载器(包括 PyMuPDF、Camelot、Tabula 和 Adobe)。
- 工作流工具:内置文档分类和拆分功能。
- 灵活的 LLM 集成:通过 Ollama 与各种提供商和本地模型兼容。
- 高级功能:提供并行字段提取、使用 SQLite 的页面检索以及 MCP 服务。
相关
- 项目
- 项目
- 项目
- 项目