NeoHorse-1-9B-mlx-8bit

8-bit MLX conversion of TokenRhythm/NeoHorse-1-9B optimized for Apple Silicon native GPU inference.

Converted by: SirSahOl
Source Model: TokenRhythm/NeoHorse-1-9B
Framework: MLX by Apple
Quantization: 8-bit (Average 8.25 bits per weight)
Format: safetensors
License: apache-2.0


Model Details

  • Architecture: Qwen3_5ForCausalLM
  • Parameters: 9.0B
  • Context Length: 262,144 tokens
  • Format: MLX (Apple Silicon native GPU format)
  • Quantization: 8-bit (Average 8.25 bits per weight)
  • Active VRAM Footprint: ~10.4 GB (Minimum recommended: 16 GB Unified Memory)

Quick Start

Installation

pip install mlx-lm

CLI Usage

# Chat interactively
mlx_lm.chat --model SirSahOl/NeoHorse-1-9B-chat-mlx-8bit

# Generate text
mlx_lm.generate --model SirSahOl/NeoHorse-1-9B-chat-mlx-8bit --prompt "Write a short poem about artificial intelligence."

Python API (with Chat Template)

from mlx_lm import load, generate

model, tokenizer = load("SirSahOl/NeoHorse-1-9B-chat-mlx-8bit")

messages = [
    {"role": "user", "content": "Explain quantum superposition in simple terms."}
]
prompt = tokenizer.apply_chat_template(
    messages, tokenize=False, add_generation_prompt=True
)

response = generate(model, tokenizer, prompt=prompt, verbose=True)
print(response)

Performance Benchmarks

Apple Silicon Hardware Sizing Matrix

Estimated decoding throughput, time-to-first-token (TTFT), and active unified memory footprint across Apple Silicon tiers:

Apple Silicon Tier Unified Memory Active VRAM Estimated Speed Est. TTFT Recommended Use Case
M1 / M2 / M3 / M4 (Base) 16 GB Unified Memory ~10.5 GB ~19 tokens/sec ~200 ms Everyday interactive assistant & fast local completions
M1 / M2 / M3 / M4 Pro 18 GB – 36 GB ~10.5 GB ~28 tokens/sec ~136 ms Balanced daily driver for coding, tool invocation, and multi-turn chat
M1 / M2 / M3 / M4 Max 36 GB – 128 GB ~10.5 GB ~41 tokens/sec ~84 ms High-throughput generation, low latency, agent orchestration
M1 / M2 / M3 Ultra 64 GB – 192 GB ~10.5 GB ~57 tokens/sec ~56 ms Peak concurrency, batch document extraction, production serving

Estimates based on Apple Silicon unified memory bandwidth and active parameter footprint. Real-world speeds may vary with context length.


Multi-Quantization Comparison

Evaluate your hardware budget and choose the optimal precision:

Variant Disk Size VRAM Footprint Target Apple Silicon Hardware Key Advantage
4-bit MLX ~5.3 GB ~5.3 GB M1 / M2 / M3 / M4 (8GB+) Maximum generation speed and lowest RAM overhead.
8-bit MLX (This Repository) ~9.9 GB ~9.9 GB M1 / M2 / M3 / M4 Pro/Max (16GB+) Balanced accuracy and generation speed; near-lossless reasoning.
16-bit MLX ~18.8 GB ~18.8 GB M2 / M3 / M4 Max/Ultra (32GB+) Full unquantized precision; reference evaluation quality.

Who Should Use This?

Your Hardware Recommended Quantization
M1/M2/M3/M4 (8GB – 16GB) 4-bit β€” Best balance of speed, low memory, and multitasking capability
M1/M2/M3/M4 Pro/Max (18GB – 36GB) 8-bit β€” Higher quality reasoning with comfortable memory headroom
M1/M2/M3/M4 Max/Ultra (36GB – 192GB) 16-bit β€” Unquantized full precision, zero quality degradation

General guidance:

  • Use 4-bit if you want to run this model alongside IDEs, browsers, and background development tools.
  • Use 8-bit if you have 16GB+ unified memory and require superior reasoning and code accuracy.
  • Use 16-bit for research, benchmarking, evaluation, or high-end workstation deployments.

Other Quantization Variants


LM Studio & Local Inference Setup Guide

To prevent runaway loops and ensure correct conversational turn-taking, configure custom stop strings in your local inference runtime.

Custom Stop Strings Configuration

Ensure the following sequence tokens are configured as strict stop boundaries:

  1. <|im_start|>
  2. <|im_end|>
  3. <|endoftext|>

Option A: Automatic Preset (Recommended for LM Studio)

Create a custom prompt preset JSON file named ChatML.json in your LM Studio config directory:

  • macOS / Linux: ~/.lmstudio/config-presets/ChatML.json
  • Windows: %USERPROFILE%\.lmstudio\config-presets\ChatML.json
{
  "name": "ChatML",
  "inference_params": {
    "pre_prompt": "You are a helpful, respectful, and honest assistant.",
    "input_prefix": "<|im_start|>user\n",
    "input_suffix": "<|im_end|>\n",
    "pre_prompt_prefix": "<|im_start|>system\n",
    "pre_prompt_suffix": "<|im_end|>\n",
    "antiprompt": [
      "<|im_start|>",
      "<|im_end|>",
      "<|endoftext|>"
    ],
    "stopStrings": [
      "<|im_start|>",
      "<|im_end|>",
      "<|endoftext|>"
    ],
    "temperature": 0.7,
    "max_tokens": 2048
  }
}

Restart LM Studio, load SirSahOl/NeoHorse-1-9B-chat-mlx-8bit, and select "ChatML" from the Prompt Template dropdown.

Option B: Manual LM Studio Configuration

  1. Load SirSahOl/NeoHorse-1-9B-chat-mlx-8bit in LM Studio.
  2. In the right-hand Advanced Configuration / Inference Parameters panel:
    • Stop Strings (antiprompt / stopStrings): Add <|im_start|>, <|im_end|>, <|endoftext|>
    • System Prefix: <|im_start|>system\n
    • System Suffix: <|im_end|>\n
    • User Prefix: <|im_start|>user\n
    • Assistant Suffix: <|im_end|>\n<|im_start|>assistant\n

Option C: Ollama Modelfile Setup

Create a Modelfile to run this model in Ollama:

FROM SirSahOl/NeoHorse-1-9B-chat-mlx-8bit

PARAMETER stop "<|im_start|>"
PARAMETER stop "<|im_end|>"
PARAMETER stop "<|endoftext|>"
PARAMETER temperature 0.7

TEMPLATE """{{ if .System }}<|im_start|>system
{{ .System }}<|im_end|>
{{ end }}{{ if .Prompt }}<|im_start|>user
{{ .Prompt }}<|im_end|>
{{ end }}<|im_start|>assistant
"""

Create and run with Ollama:

ollama create neohorse-1-9b-chat-mlx-8bit -f Modelfile
ollama run neohorse-1-9b-chat-mlx-8bit

Conversion Details

Property Value
Source Model TokenRhythm/NeoHorse-1-9B
Quantization 8-bit
mlx-lm Version 0.31.3
Conversion Time 153.22s
Output Size 8.9 GB
Date 2026-09-14T23:34:27.205369+00:00

Reproduction

To reproduce this conversion:

pip install mlx-lm==0.31.3
python3 -m mlx_lm.convert --hf-path /root/.cache/huggingface/hub/models--TokenRhythm--NeoHorse-1-9B/snapshots/ba5b6e40d88a6ddf4591e176738254a3bc715765 --mlx-path output/NeoHorse-1-9B-mlx-8bit -q --q-bits 8

Limitations & Known Issues

  • 4-bit group-wise quantization introduces minor precision loss compared to unquantized weights; for deep mathematical derivations or precision-critical reasoning, test the 8-bit or 16-bit variants.
  • High context sequences (>32K tokens) require sufficient unified memory headroom; ensure unified memory is not overcommitted.
  • This is a weight-only MLX conversion designed specifically for Apple Silicon GPUs (M1/M2/M3/M4 series).

License

This model conversion inherits the license of the source model: apache-2.0.

See the original model card for full license details.


Changelog

Version Date Changes
v1.0 2026-09-14 Initial conversion

Converted with MLX Foundry β€” a professional pipeline for converting models to Apple MLX format.

Downloads last month
20
Safetensors
Model size
9B params
Tensor type
U32
Β·
BF16
Β·
MLX
Hardware compatibility
Log In to add your hardware

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for SirSahOl/NeoHorse-1-9B-chat-mlx-8bit

Finetuned
Qwen/Qwen3.5-9B
Quantized
(15)
this model

Space using SirSahOl/NeoHorse-1-9B-chat-mlx-8bit 1

Collection including SirSahOl/NeoHorse-1-9B-chat-mlx-8bit