Image-Text-to-Text
MLX
Safetensors
unlimited-ocr
ax-engine
mlx-vlm
ocr
mxfp8
int8
apple-silicon
automatosx
conversational
8-bit precision
Instructions to use AutomatosX/AX-Unlimited-OCR-3B-MoE-MLX-MXFP8 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use AutomatosX/AX-Unlimited-OCR-3B-MoE-MLX-MXFP8 with MLX:
# Make sure mlx-vlm is installed # pip install --upgrade mlx-vlm from mlx_vlm import load, generate from mlx_vlm.prompt_utils import apply_chat_template from mlx_vlm.utils import load_config # Load the model model, processor = load("AutomatosX/AX-Unlimited-OCR-3B-MoE-MLX-MXFP8") config = load_config("AutomatosX/AX-Unlimited-OCR-3B-MoE-MLX-MXFP8") # Prepare input image = ["http://images.cocodataset.org/val2017/000000039769.jpg"] prompt = "Describe this image." # Apply chat template formatted_prompt = apply_chat_template( processor, config, prompt, num_images=1 ) # Generate output output = generate(model, processor, formatted_prompt, image) print(output) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
| [build-system] | |
| requires = ["hatchling"] | |
| build-backend = "hatchling.build" | |
| [project] | |
| name = "unlimited-ocr" | |
| version = "0.3.0" | |
| description = "Unlimited-OCR inference toolkit for Apple MLX and NVIDIA CUDA/vLLM" | |
| readme = "README.md" | |
| license = "MIT" | |
| requires-python = ">=3.10" | |
| authors = [ | |
| { name = "AutomatosX" }, | |
| ] | |
| keywords = ["ocr", "mlx", "cuda", "vllm", "document-parsing", "vision-language-model"] | |
| classifiers = [ | |
| "Development Status :: 4 - Beta", | |
| "Intended Audience :: Developers", | |
| "License :: OSI Approved :: MIT License", | |
| "Programming Language :: Python :: 3.10", | |
| "Programming Language :: Python :: 3.11", | |
| "Programming Language :: Python :: 3.12", | |
| "Environment :: GPU :: NVIDIA CUDA", | |
| "Topic :: Scientific/Engineering :: Artificial Intelligence", | |
| ] | |
| dependencies = [ | |
| "Pillow>=10.0", | |
| "numpy", | |
| "pymupdf>=1.24", | |
| # mlx-vlm already requires the non-headless OpenCV distribution. Requiring | |
| # the headless wheel as well installs two distributions that own `cv2`. | |
| "opencv-python>=4.12", | |
| "click>=8.0", | |
| "rich>=13.0", | |
| "huggingface-hub>=0.20", | |
| ] | |
| [project.optional-dependencies] | |
| mlx = [ | |
| # Unlimited-OCR support first shipped in mlx-vlm 0.6.4. Keeping MLX | |
| # optional lets the same wheel install on Linux CUDA hosts. | |
| "mlx-vlm>=0.6.4; platform_system == 'Darwin'", | |
| "mlx>=0.31.2; platform_system == 'Darwin'", | |
| ] | |
| vllm-client = ["httpx>=0.27,<1"] | |
| vllm-server = [ | |
| # Unlimited-OCR became a native architecture in vLLM 0.25. | |
| "vllm>=0.25.1,<0.26; platform_system == 'Linux' and platform_machine == 'x86_64'", | |
| "httpx>=0.27,<1", | |
| ] | |
| server = ["fastapi>=0.100", "uvicorn[standard]>=0.20", "python-multipart>=0.0.5"] | |
| dev = ["pytest>=7.0", "pytest-asyncio>=0.21", "httpx>=0.24"] | |
| [project.scripts] | |
| unlimited-ocr = "unlimited_ocr.cli:main" | |
| [project.urls] | |
| Homepage = "https://huggingface.co/AutomatosX/AX-Unlimited-OCR-3B-MoE-MLX-MXFP8" | |
| Repository = "https://huggingface.co/AutomatosX/AX-Unlimited-OCR-3B-MoE-MLX-MXFP8" | |
| [tool.hatch.build.targets.wheel] | |
| packages = ["src/unlimited_ocr"] | |