Skip to main content

AI-powered document extraction system that classifies documents and extracts structured data

Project description

ext_data

Lightweight AI-based document extraction package for automatic document classification and structured data extraction using a hybrid NLP pipeline (spaCy + GLiNER).

Features

  • Multi-format support -- PDF, DOCX, PPTX, PNG, JPG
  • Automatic document classification
  • Hybrid extraction -- spaCy, GLiNER, regex, rules
  • Line item extraction -- tables and text
  • OCR support via Tesseract OCR
  • Structured JSON output with confidence scores

Installation

Prerequisites

Install package

pip install ext_data

Or from source:

git clone https://github.com/your-repo/ext_data.git
cd ext_data
pip install -e .

Usage

Single file

python -m ext_data.main --input file.pdf

Folder

python -m ext_data.main --input documents/

Output

Results are saved as JSON:

{
  "document_type": "invoice",
  "fields": {
    "invoice_number": "INV-001",
    "vendor_name": "Company",
    "total_amount": "1000.00"
  },
  "line_items": [],
  "overall_confidence": 0.8,
  "status": "success"
}

Supported Types

  • Invoice (enabled)
  • Other types available in codebase (can be enabled manually)

Project Structure

ext_data/
├── main.py
├── ingestion/
├── parsers/
├── extraction/
└── output/

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ext_data-0.1.1.tar.gz (67.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ext_data-0.1.1-py3-none-any.whl (78.9 kB view details)

Uploaded Python 3

File details

Details for the file ext_data-0.1.1.tar.gz.

File metadata

  • Download URL: ext_data-0.1.1.tar.gz
  • Upload date:
  • Size: 67.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for ext_data-0.1.1.tar.gz
Algorithm Hash digest
SHA256 6eac84924f9bf2c6fa5988f8a6c24201aec40906f61ad638d7ed4359fe415b03
MD5 3e8a49b260df1f3e16217914aae5498c
BLAKE2b-256 e0e71d5ebeda5505d2e41507b29a5b6dc1dcf9dcd32ce172357efa2bf4f205ca

See more details on using hashes here.

File details

Details for the file ext_data-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: ext_data-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 78.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for ext_data-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6b5590c4cdfe3143362b250665a1963aed0444f261fb073acd712e5f77e2d1d6
MD5 be2731378f0de5ed3cbbb15f1078f46c
BLAKE2b-256 c4311145798f549a3e55ec9b822c3fbd8ab54f4bcca82f7697aab6efff509138

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page