ExtractThinker:基于大语言模型的智能文档处理工具

你是否曾经为从各种文档中提取结构化数据而烦恼?无论是处理发票、收据还是身份证件,手动录入数据既耗时又容易出错。ExtractThinker 的出现,旨在彻底解决这个问题。它是一个基于大语言模型的文档智能处理库,采用类似 ORM 的交互方式,让开发者能够轻松地从各类文档中提取和分类结构化数据。

截至收录:
ExtractThinker项目stars数:1456
ExtractThinker项目forks数:143

ExtractThinker项目目录截图

ExtractThinker项目核心亮点

🚀 灵活的文档加载器:支持多种文档加载器,包括 Tesseract OCR、Azure Form Recognizer、AWS Textract、Google Document AI 等主流 OCR 服务。
📝 可定制的数据契约:使用 Pydantic 模型定义自定义提取契约,实现精确的数据提取和类型验证。
🎯 智能文档分类:支持自定义分类策略,能够准确识别文档类型并应用相应的处理流程。
⚡ 异步处理能力:采用异步处理机制,高效处理大型文档和批量任务。
🔧 多格式文档支持:无缝支持 PDF、图片、电子表格等多种文档格式。
🤖 多 LLM 提供商集成:轻松集成 OpenAI、Anthropic、Cohere、Azure OpenAI 及本地模型(如 Ollama)。

ExtractThinker项目快速开始

只需几步,你就能开始使用 ExtractThinker 进行文档处理:

  1. 安装
    pip install extract_thinker
  2. 基础数据提取示例
    import os
    from extract_thinker import Extractor, DocumentLoaderPyPdf, Contractclass InvoiceContract(Contract):
    invoice_number: str
    invoice_date: str
    
    extractor = Extractor()
    extractor.load_document_loader(DocumentLoaderPyPdf())
    extractor.load_llm("gpt-4o-mini")
    
    result = extractor.extract("invoice.pdf", InvoiceContract)
    print("Invoice Number:", result.invoice_number)
    print("Invoice Date:", result.invoice_date)
    
  3. 文档分类示例
    result = extractor.classify(
    "document.pdf",
    classifications,
    image=True
    )
    print(f"Document classified as: {result.name}")

ExtractThinker项目应用场景

企业财务处理:自动从发票、收据中提取关键信息,如发票号码、日期、金额等,大幅提升财务处理效率。
证件信息提取:快速处理身份证、驾驶证等证件,提取姓名、证件号码等结构化数据。
批量文档处理:支持批量处理大量文档,适用于银行、保险等行业的文档自动化处理需求。
智能文档分类:自动识别和分类不同类型的文档,为后续处理流程提供基础。

ExtractThinker项目链接

enoch3712 / ExtractThinker项目地址:https://github.com/enoch3712/ExtractThinker

本文地址:https://www.tgoos.com/27647

声明:本站资源均整理自互联网,版权归原作者所有,仅供学习交流使用,请勿直接商用,若需商用请购买正版授权。因违规使用产生的版权及法律责任由使用者自负。部分资源可能包含水印或引流信息,请自行甄别。若链接失效可联系站长尝试补链。若侵犯您的权益,请邮件(将 # 替换为 @)至 feedback#tgoos.com,我们将及时处理删除。转载请保留原文链接,感谢支持原创。