Instructions to use Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx 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("Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx") config = load_config("Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx") # 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 Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx"
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": "Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent
How to use Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx 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 "Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx"
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 Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx"
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 "Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx" \ --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"
qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx
Independent MXFP4 MLX conversion of
AEON-7/Qwen3.8-27B-AEON-ULTIMATE-UNCENSORED-BF16, pinned at a6775a9a8ebb65cab3f707b4ab087fc7aa698634.
This is a community conversion, not an official AEON-7 or Qwen release.
Format
- Language quantization: MXFP4, 4-bit, group size 32
- Vision: 333 source BF16 tensors preserved; patch embedding converted to MLX axes
- Indexed artifact size: 14.98 GiB
- Architecture: dense Qwen3.5-family hybrid attention/GDN, 64 language layers
- Configured context: 262,144 tokens (not exhaustively qualified here)
- Tokenizer, chat template, processor metadata, and Apache-2.0 lineage preserved
MTPLX
This package adds the pinned source checkpoint's 15 native BF16 MTP tensors to the paired vision MLX body. Tensor parity, strict MTPLX inspection, a local AR/D1/D2/D3 tune, and deterministic text/vision smokes passed.
- Local selected depth: D2; decode: 52.67 tok/s; multiplier vs AR: 1.861x; verdict:
mtp-faster-than-arRuntime speed and acceptance depend on host, prompt, context, and MTPLX version; benchmark locally before selecting speculative depth.
mtplx inspect --json --require-mtp <local-path-or-repo-id>
mtplx tune --model <local-path-or-repo-id> --depths 1,2,3 --json
MTPLX 2.9.2 runtime retest
The exact published MXFP4 body and native 15-tensor BF16 MTP sidecar were retested on an Apple M4 Max with 64 GiB unified memory. No model or sidecar tensor was rewritten. The selected runtime applies load-time Q6/G64 affine quantization to the MTP block and Q4/G32 affine quantization to the draft-only vocabulary projection.
| Runtime candidate | Median decode | Mean decode | Decision |
|---|---|---|---|
| D2, BF16 MTP block, Q4/G64 draft head | 44.83 tok/s | 45.26 tok/s | Baseline |
| D2, Q6/G64 MTP block, Q4/G32 draft head | 45.61 tok/s | 46.32 tok/s | Selected |
The eight-sample confirmation improved median decode by 1.75% and mean decode by 2.36%. A separate no-thinking API qualification improved code-smoke decode by 5.50%, hard-suite decode by 8.44%, and hard-suite wall time by 6.75%. Both runtime configurations passed the same 3/3 code-smoke and 4/10 local hard-suite cases, the strict tool smoke, and the long-context needle with zero reasoning tokens.
Fixed D2 remained optimal in the depth screen: D1 reached 44.22 tok/s median, D3 reached 40.09, and experimental D4 reached 40.81. Adaptive D1-D2 streak and expected-value policies did not beat fixed D2. D4 is supported experimentally by MTPLX 2.9.2 but should not be selected for this artifact on the reference host.
These are runtime results, not a new model-quality score. The 8/10 Shiftedx Bench quality result below remains bound to its MTPLX 2.7.1, medium-thinking, D2 contract. The 4/10 result above is a separate thinking-off diagnostic and must not be compared as the same operating point.
Qualification and limitations
- Pinned source metadata and all safetensors headers were checked.
- Quantization used the fixture-matched Qwen3.5 streaming adapter from MLX-LM 0.31.3.
- MXFP4 and MXFP8 were each produced directly from the same BF16 parent.
- Structural inspection and strict local load are required release gates.
This is an experimental quantization of an abliterated, intentionally unaligned checkpoint. Quantization does not restore safety alignment. The source publisher warns that the model can produce unsafe or illegal material and places downstream safety and legal responsibility on operators. Review the source model card before use and add access controls, logging, moderation, and human review appropriate to your deployment.
Basic use
python -m mlx_vlm.generate --model <repo-or-path> --image image.jpg --prompt "Describe this image." --max-tokens 256
Recommended MTPLX 2.9.2 OpenAI server configuration:
MODEL=Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx
mtplx serve \
--model "$MODEL" \
--download \
--host 127.0.0.1 \
--port 8000 \
--generation-mode mtp \
--profile turbo \
--depth 2 \
--context-window 198000 \
--mtp-quant-bits 6 \
--mtp-quant-group-size 64 \
--mtp-quant-mode affine \
--paged-kv-quantization off \
--reasoning on \
--reasoning-effort medium
The high-level mtplx serve wrapper does not expose the lower-level
--draft-lm-head-* flags. To reproduce the selected Q4/G32 draft projection
with this older weight revision, add the following top-level object to the
local mtplx_runtime.json before starting the wrapper:
"recommended_draft_lm_head": {
"bits": 4,
"group_size": 32,
"mode": "affine"
}
This changes runtime metadata only; it does not rewrite model or MTP tensors.
For a request that must suppress reasoning, send the canonical top-level field
"enable_thinking": false. It produced zero reasoning tokens in the MTPLX
2.9.2 validation. Re-test that behavior after runtime upgrades.
Shiftedx Bench post-publication qualification
This table was generated from the frozen lightweight quant gate after the model weights were published. Categories remain separate; the benchmark does not produce a composite intelligence score.
| Lane | Passed | Accuracy | Mean wall time | Mean decode | Peak active memory |
|---|---|---|---|---|---|
| Quality | 8/10 | 80.0% | 21.53 s | 55.22 tok/s | 31.21 GiB |
| Long context | 15/15 | 100.0% | 141.22 s | 43.52 tok/s | 42.23 GiB |
| Tool calling | 6/6 | 100.0% | 4.61 s | 47.30 tok/s | 34.03 GiB |
| Agentic | 2/2 | 100.0% | 15.92 s | — tok/s | — |
| Vision | 4/4 | 100.0% | 3.81 s | 53.76 tok/s | 35.17 GiB |
- Tested model revision:
ff85b7fb563a642bbcbe9645789e11ed496be885 - Benchmark: Shiftedx Bench v0.3.0
- Context lengths represented: 4,096, 16,384, 65,536, 131,072 prompt tokens; effective tested context: 131,072 tokens
- Runtime contract: MTPLX 2.7.1 sustained; thinking on/medium; sampler temperature=1.0, top_p=0.95, top_k=20; Hermes hybrid routing with native explicit-parallel calls; KV cache
off; MTP depth2 - Host: Apple M4 Max, 64 GiB unified memory
- Total measured request wall time: 2408.23 seconds
- 260,096-token status: not run; it is outside the lightweight quant gate.
Scores are specific to the linked model revision, benchmark revision, runtime contract, and host. Changing weight precision, KV-cache precision, reasoning mode, template, or speculative depth creates a different benchmark candidate.
- Downloads last month
- 1,862
4-bit
Model tree for Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx
Base model
Qwen/Qwen3.8-27B
# 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("Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx") config = load_config("Shiftedx/qwen3.8-27b-aeon-ultimate-uncensored-mxfp4-vision-mtplx") # 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)