Image-Text-to-Text
Safetensors
MLX
Arabic
mlx-vlm
qwen3_vl
vision
ocr
arabic
arabic-ocr
conversational
4-bit precision
Instructions to use Alsamir/Abjad_0.2 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use Alsamir/Abjad_0.2 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("Alsamir/Abjad_0.2") config = load_config("Alsamir/Abjad_0.2") # 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
- Pi
How to use Alsamir/Abjad_0.2 with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Alsamir/Abjad_0.2"
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "Alsamir/Abjad_0.2" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent
How to use Alsamir/Abjad_0.2 with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Alsamir/Abjad_0.2"
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default Alsamir/Abjad_0.2
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use Alsamir/Abjad_0.2 with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Alsamir/Abjad_0.2"
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "Alsamir/Abjad_0.2" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
|
Download docs/evaluation.md from Alsamir/Abjad_0.2: direct link, hf CLI and curl.
- Browser
- Download file 1.35 kB
-
https://huggingface.co/Alsamir/Abjad_0.2/resolve/main/docs/evaluation.md
- Command line
-
hf download hf://Alsamir/Abjad_0.2/docs/evaluation.md
-
curl -L -o evaluation.md https://huggingface.co/Alsamir/Abjad_0.2/resolve/main/docs/evaluation.md
1.35 kB
Evaluation guide
Compare models on the same rendered pages, prompt, resolution, and output budget. A single successful page is not enough to rank OCR systems.
Recommended protocol
- Keep a held-out set of Arabic scans with verified text.
- Render each PDF page once and use the same image for every model.
- Use deterministic decoding and the same instruction: exact visible transcription, preserve RTL order and digit shapes, ignore watermarks and signatures, and never repeat text.
- Compare normalized character error rate (CER), word error rate (WER), digit accuracy, and table-cell accuracy.
- Review layout separately from text accuracy. A model can have good text but poor reading order.
Reproducible Abjad command
.venv/bin/python mlx_ocr_pipeline.py page.pdf \
-o outputs/eval_abjad.txt \
--model /path/to/Abjad_0.2 \
--no-adapter \
--regions \
--preserve-digit-shapes \
--max-tokens 4096
Keep the raw output. Post-processing that collapses a runaway repetition is a safety filter, not evidence that the model recognized the original page correctly.
Reporting
Report the page count, source type, whether labels were human verified, prompt, resolution, model revision, and the exact metrics. If no ground truth exists, describe the result qualitatively and do not assign a numeric score.