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
File size: 1,123 Bytes
fd0c04f 6708e4d fd0c04f | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | """Example: OCR a single image file."""
from unlimited_ocr import OCRPipeline
# Initialize the pipeline (model loads lazily on first inference)
pipeline = OCRPipeline(
model_path="AutomatosX/AX-Unlimited-OCR-3B-MoE-MLX-MXFP8",
verbose=True,
)
# --- Basic document OCR ---
result = pipeline.run("your_document.jpg", format="text")
print(result)
# --- Markdown output ---
result = pipeline.run("your_document.jpg", format="markdown", output_path="output.md")
print("Saved to output.md")
# --- With bounding boxes (grounding mode) ---
result = pipeline.run("your_document.jpg", format="json", grounding=True)
print(result)
# --- With image preprocessing (deskew + contrast enhancement) ---
result = pipeline.run("scanned_page.png", format="text", preprocess=True)
print(result)
# --- Different task types ---
# "document" — general document parsing (default)
# "markdown" — convert to markdown structure
# "figure" — parse figures/diagrams
# "free" — free-form OCR
result = pipeline.run("table.png", task="markdown", format="markdown")
print(result)
# Clean up temporary files
pipeline.cleanup()
|