Instructions to use pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp 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("pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp") config = load_config("pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp") # 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 pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp"
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": "pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent
How to use pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp 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 "pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp"
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 pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp"
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 "pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp" \ --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"
Ornith-1.5-35B-A3B-oQ8e-fixed-mtp
This repository is a complete Apple MLX deployment of Shisa AI Ornith-1.5-35B-A3B-MTP, converted with oMLX v0.6.2 using importance-matrix-enhanced oQ mixed-precision quantization.
Why
fixed-mtpmatters: unlike the original Ornith release, this Shisa AI source replaces the native MTP head that had underperformed with a Qwen3.6-initialized head trained through full-vocabulary KL distillation. The purpose of this upstream is a working MTP component for speculative decoding, and this oQ conversion preserves that replacement head. MTP still has to be enabled explicitly in a compatible oMLX runtime; it was not re-benchmarked on a Mac for this card.
Download the whole repository: the Safetensors shards require the included index, model config, tokenizer, chat template, and image/video processor files. This is not a GGUF, Transformers, or NInfer artifact.
Quick facts
| Item | Value |
|---|---|
| Model type | qwen3_5_moe |
| Quantization layout | Affine 8-bit with group size 64 is the default tier; the stored config records 265 per-tensor precision overrides. Ornith overrides use group sizes 64 and 128, so this is not a uniform 8-bit checkpoint. |
| Tensor payload | 38,604,987,852 bytes / 35.95 GiB |
| Safetensors shards | 8 |
| Conversion runtime | oMLX 0.6.2 |
| Calibration | oqe_code_multilingual, 128 samples × 512 tokens |
| Included model features | Vision resources and one MTP layer |
| Intended runtime | oMLX on Apple Silicon/macOS |
Choose a variant
| Variant | Nominal tier | Tensor payload | Shards |
|---|---|---|---|
| oQ4e | 4-bit | 21,613,325,579 bytes / 20.13 GiB | 5 |
| oQ6e | 6-bit | 30,143,954,255 bytes / 28.07 GiB | 6 |
| oQ8e (this repo) | 8-bit | 38,604,987,852 bytes / 35.95 GiB | 8 |
These tiers differ in storage and quantization layout. No same-Mac quality, memory, TTFT, or throughput comparison is published here, so the table should not be read as a benchmark.
Download
Install the Hugging Face CLI, then place the complete repository below oMLX's model directory:
mkdir -p "$HOME/.omlx/models/pyros-vault"
hf download pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp \
--local-dir "$HOME/.omlx/models/pyros-vault/Ornith-1.5-35B-A3B-oQ8e-fixed-mtp"
Serve with oMLX
Install the current oMLX runtime and start its OpenAI-compatible server:
brew tap jundot/omlx https://github.com/jundot/omlx
brew install jundot/omlx/omlx
omlx serve --model-dir "$HOME/.omlx/models"
Discover the exact model ID exposed by your installed oMLX version:
curl http://127.0.0.1:8000/v1/models
Use that returned ID with the OpenAI-compatible endpoint. MTP files being present does not automatically enable speculative decoding: Lightning MTP is opt-in through oMLX model settings, and behavior can vary by runtime version and Apple chip.
Quantization and verification
The bundled oq_imatrix_report.json records calibration with oqe_code_multilingual over 128 sequences of 512 tokens. The included report records 523 importance entries, 481 applied modules, two missing names, no shape mismatches, and no uncovered experts.
The report and tensor metadata establish how the artifact was built; they are not an end-to-end quality benchmark. Repository structure, configs, shard counts, payload sizes, and quantization metadata were audited for this card. Inference was not rerun on a Mac, so no local speed, memory, MTP-acceptance, Vision-quality, or long-context claim is made.
Provenance
The direct upstream retains the Ornith target model and replaces its native MTP tensors with a Qwen3.6-initialized head that Shisa AI says it KL-distilled after the original head underperformed. This oQ artifact preserves that replacement MTP component and the Vision tower; it does not contain NInfer DFlash weights. That MTP history is an upstream claim. See the source model card and its NOTICE for the training description and attribution.
Limitations
- MLX/oMLX targets Apple Silicon and macOS; this repository is not runnable through CUDA on Windows.
- Hugging Face hosted inference does not serve this custom oMLX layout.
- The config advertises a 262,144-token maximum context. That value is model metadata, not a claim that this full context was tested or will fit your machine.
- Vision preprocessing, tool use, MTP acceptance, memory use, and throughput depend on the oMLX version, client, prompt, and Apple hardware.
- Quantization can change output quality. Evaluate this exact variant on your workload.
License and credits
The direct combined checkpoint is distributed under Apache-2.0 because the replacement MTP head derives from Qwen3.6. The retained Ornith target-model components remain MIT; see the upstream LICENSE and NOTICE for component attribution.
Quantized and packaged by pyros-vault with oMLX/oQ.
- Downloads last month
- 214
8-bit