Instructions to use divinetribe/AesCode-32B-abliterated-MLX-4bit with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use divinetribe/AesCode-32B-abliterated-MLX-4bit 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("divinetribe/AesCode-32B-abliterated-MLX-4bit") config = load_config("divinetribe/AesCode-32B-abliterated-MLX-4bit") # 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 divinetribe/AesCode-32B-abliterated-MLX-4bit with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "divinetribe/AesCode-32B-abliterated-MLX-4bit"
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": "divinetribe/AesCode-32B-abliterated-MLX-4bit" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent
How to use divinetribe/AesCode-32B-abliterated-MLX-4bit 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 "divinetribe/AesCode-32B-abliterated-MLX-4bit"
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 divinetribe/AesCode-32B-abliterated-MLX-4bit
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use divinetribe/AesCode-32B-abliterated-MLX-4bit with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "divinetribe/AesCode-32B-abliterated-MLX-4bit"
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 "divinetribe/AesCode-32B-abliterated-MLX-4bit" \ --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"
AesCode-32B Abliterated MLX 4bit
A 4-bit MLX quantization of microsoft/AesCode-32B for Apple Silicon, with the vision tower kept in bf16 so it still sees.
AesCode-32B is a Qwen3VLForConditionalGeneration finetune of
Qwen/Qwen3-VL-32B-Instruct
that takes a screenshot and writes the HTML and CSS to recreate it (slides,
posters, dashboards, product pages). This build is refusal-direction abliterated (Arditi et al. 2024 directional
ablation on the language tower only, direction from layer 44 of 64); the vision
tower is untouched. Only the language tower is
quantized to 4-bit; the 351 vision_tower.* tensors stay in bfloat16, so the
image path keeps its quality.
4-bit is about a quarter the size for the smallest machines; bf16 is full quality.
Sizes in this family
- AesCode-32B-abliterated-MLX-bf16 (full quality)
- AesCode-32B-abliterated-MLX-8bit (half size)
- AesCode-32B-abliterated-MLX-4bit (quarter size)
What is in this build
| precision | 4-bit language tower, bf16 vision tower |
| vision | all 351 vision_tower.* tensors kept, vision_config and processor configs intact |
| size | about 18 GB on disk |
| framework | runs with mlx-vlm on Apple Silicon |
Vision was tested before upload
Every size of this model is put through the same gate before it ships: a real screenshot of a live ineedhemp.com product page is fed in and the model is asked for an SEO, marketing and accessibility audit plus image alt-text. A smaller build is only published if it still reads the page about as well as the full-precision one. This 4-bit build passed. From its audit of the real page:
The page is a product detail layout with a dark background and yellow accent. Left side shows a main product image with zoom icon and four thumbnails; right side has breadcrumb, big product title, rating, price, a highlighted feature box, two dropdown options, a quantity selector, a yellow "Add to Cart" button, badges (free shipping, warranty, American-owned), a wishlist link and social icons.
It named the real on-page elements and wrote usable alt-text, so the quantization did not break its vision.
Use
pip install mlx-vlm
python -m mlx_vlm.generate --model divinetribe/AesCode-32B-abliterated-MLX-4bit \
--image screenshot.png \
--prompt "Recreate this screenshot as a single HTML file with inline CSS." \
--max-tokens 1200
Runs on an M-series Mac. No cloud inference, no API keys, no telemetry.
Benchmarks
The most authoritative evaluation that actually covers this model is the one in AesCode's own paper, "AesCode: Aesthetic Code Generation with Decoupled Cross-Modal Rewards" (arXiv:2610.18860). There is no independent public leaderboard that lists AesCode specifically, so these numbers come from the authors' benchmark of 300 infographic-style samples, scored for rule-following correctness and visual quality. Scores quoted from the model card:
| Model (with reference image) | Overall | Visual |
|---|---|---|
| AesCode-32B | 85.89 | 77.44 |
| Claude Opus 4.8 (no reference) | 76.78 | |
| GPT-5.5 (no reference) | 76.31 | |
| Qwen3-VL-32B base (with reference) | 61.10 |
These are the original model's numbers. For general-vision numbers on the backbone itself, see the official Qwen3-VL evaluations (that is the base model's benchmark, not AesCode's).
Credits
This build stands entirely on other people's work. Credit where it is due:
- The AesCode team at Microsoft, who created the model and the benchmark: Xin Gao, Yifan Yang, Xin Li, Pan Wang, Yan Li, Muzhao Tian, Mingxi Cheng, Bei Liu, Kai Qiu, Qi Dai, Dong Chen, Yue Dong, Leandros Tassiulas, Rex Ying, Ji Li and Chong Luo. Paper: arXiv:2610.18860, model: microsoft/AesCode-32B.
- The Qwen team at Alibaba, for the Qwen3-VL-32B-Instruct base.
- Andy Arditi, Oscar Obeso, Aaquib Syed, Daniel Paleka, Nina Panickssery, Wes Gurnee and Neel Nanda, whose paper "Refusal in Language Models Is Mediated by a Single Direction" (arXiv:2406.11717) is the technique this build uses.
- The MLX team at Apple and Prince Canuma and the mlx-vlm contributors, for the open-source tools that let a model like this run natively and privately on a Mac.
Thank you to all of them.
Note
Abliteration removes the model's refusal direction. Quantization trades a little precision for size. It does not add knowledge and it does not make output correct. You are responsible for what you build with it.
Built and published by divinetribe · more models
- Downloads last month
- -
4-bit