Skip to main content

A CLI tool for OCR using the Nougat model

Project description

MLX Nougat

MLX Nougat is a CLI tool for OCR using the Nougat model.

Installation

  1. Install ImageMagick:

    brew install imagemagick
    
  2. Configure environment variables for ImageMagick:

    Add the following lines to your shell configuration file (e.g., ~/.bashrc, ~/.zshrc):

    export MAGICK_HOME=$(brew --prefix imagemagick)
    export PATH=$MAGICK_HOME/bin:$PATH
    export DYLD_LIBRARY_PATH=$MAGICK_HOME/lib:$DYLD_LIBRARY_PATH
    

    After adding these lines, reload your shell configuration or restart your terminal.

  3. Install MLX Nougat:

    git clone git@github.com:mzbac/mlx-nougat.git
    cd mlx-nougat
    pip install .
    

Usage

After installation, you can use MLX Nougat from the command line:

mlx_nougat --input <path_to_image_or_pdf_or_url> [--output <output_file>] [--model <model_name_or_path>]

Arguments

  • --input: (Required) Path to the input image or PDF file, or a URL to an image or PDF.
  • --output: (Optional) Path to save the output text file. If not provided, the output will be printed to the console.
  • --model: (Optional) Name or path of the Nougat model to use. Default is "facebook/nougat-small".

Examples

  1. Process a local image:

    mlx_nougat --input path/to/your/image.png --output results.txt
    
  2. Process a local PDF:

    mlx_nougat --input path/to/your/document.pdf --output results.txt
    
  3. Process a remote image:

    mlx_nougat --input https://example.com/image.jpg --output results.txt
    
  4. Process a remote PDF:

    mlx_nougat --input https://example.com/document.pdf --output results.txt
    
  5. Use a different model:

    mlx_nougat --input path/to/your/image.png --model facebook/nougat-base --output results.txt
    

TODOs

  • Support quantized model to improve the performance.

Acknowledgements

This project is built upon several open-source projects and research works:

  • Nougat: The original Nougat model developed by Facebook AI Research.
  • faster-nougat: An optimized implementation of Nougat, which inspired this MLX-based version.
  • MLX: The machine learning framework developed by Apple, used for efficient model inference in this project.
  • Transformers: Hugging Face's state-of-the-art natural language processing library.

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

mlx_nougat-0.1.0.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

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

mlx_nougat-0.1.0-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

Details for the file mlx_nougat-0.1.0.tar.gz.

File metadata

  • Download URL: mlx_nougat-0.1.0.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for mlx_nougat-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fbbb631c2e29beb0e350c1a7be0fc22791a6d498c45f8c5c5f401e02f30dca09
MD5 0c3c5d4e2e355deac3ec3d65ee4a7590
BLAKE2b-256 fbd535b82c740e31ecbd6b6d0b8f4e5033a19493dead0a2c8f3f419035172693

See more details on using hashes here.

File details

Details for the file mlx_nougat-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mlx_nougat-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for mlx_nougat-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4eed847fb41905b480b7d90d3c2ed0f62e304364209f98f74ccf3caffdb2b7fa
MD5 253c71ad54eaa8785606a812ef71455c
BLAKE2b-256 73532c46b2af01a95c5bdd5bd4971e2c98c3956f810c09ff1f7c40ce2c35a1d3

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