incoai/Qwen3.8-27B-Splash

Model

Qwen3.8-27B-Splash

71

10 commits

1 linked in READMEs

updated Sep 18, 2026

See the code

README

Qwen3.8-27B-Splash

Qwen3.8-27B, packed for Splash on Apple silicon.

Splash is Inco AI's open-source inference engine for Apple silicon, built around the model. This package contains everything Splash needs to serve Qwen3.8-27B: the 4-bit target, its DFlash 2 draft, the vision encoder, and the tokenizer. It is not a Transformers or MLX checkpoint and does not load anywhere but Splash.

Qwen3.8-27B is the dense launch model. The other, Qwen3.6-35B-A3B-Splash, is a mixture-of-experts model with about 3B active parameters per token, and the faster of the two.

Engine · Launch post and benchmarks · DFlash 2

Quick start

Apple M3 or newer, macOS 26.4 or later, Homebrew, and 36 GB of unified memory (48 GB or more recommended).

brew install incoai/tap/splash
splash serve --model incoai/Qwen3.8-27B-Splash

The first run downloads this package (17.4 GB), verifies it, checks available memory, and starts serving on 127.0.0.1:8000. When it prints its Ready line, open http://127.0.0.1:8000 or attach an agent you already have installed from another terminal:

splash opencode    # or: splash claude / splash codex / splash hermes

The server binds 127.0.0.1, and authentication is off by default. Set SPLASH_API_KEY before exposing it beyond your Mac.

The API is OpenAI Chat Completions and Responses, and Anthropic Messages, with streaming, tool calls, JSON Schema output, images, and inline PDFs:

curl http://127.0.0.1:8000/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "incoai/Qwen3.8-27B-Splash",
    "messages": [{"role": "user", "content": "Explain speculative decoding in one sentence."}]
  }'

Reasoning is on by default at xhigh. reasoning_effort takes low, medium, xhigh, or none, and reasoning comes back as reasoning_content.

There is no config file. The only settings are ceilings such as --max-memory and --max-context, which the README lists with their defaults.

Performance

Measured on an M5 Pro (16-core GPU, 48 GB) with selected SPEED-Bench coding prompts over HTTP, with a 1,024-token output limit and reasoning at medium. The ratio in each cell is against the next-fastest engine we measured.

MetricQwen3.8-27B
Decode · short prompt74 tok/s (2.0×)
Prefill · 32K prompt363 tok/s (1.2×)
Time to first token · 32K prompt, uncached96 s (1.2×)
Cached time to first token · 32K replay282 ms (7.3×)
Aggregate decode · 4 concurrent short prompts170 tok/s (3.9×)

Splash led on every measure at every prompt length we tested. With 16 concurrent 32K requests, Splash completed all 16 where a general-purpose memory policy accepted nine. The cached figure replays the prompt exactly, so a real turn also pays for the tokens it adds. The launch post has the method and the full comparison.

Package contents

target/      66 files   14.1 GiB   Qwen3.8-27B, 4-bit, one packed file per layer
draft/        6 files    1.2 GiB   DFlash 2 draft model
vision/       1 file     0.9 GiB   bf16 vision encoder
tokenizer/    5 files              tokenizer and chat template
manifest.json                      provenance, geometry, and SHA-256 of every artifact
ComponentSourceRevision
Target, tokenizer, visionmlx-community/Qwen3.8-27B-4bit3e6447f082e89cc7f0bc6e5441afd38dfce760ff
Draftincoai/Qwen3.8-27B-DFlash2dedf8df68adfb1afeaf7b7480c0a0243108177b4

The weights are fixed-layout binaries that Splash maps directly from disk. The target and the vision encoder total 15 GiB, and the draft is another 1.2 GiB. The draft is a five-layer DFlash 2 model that reads the target's hidden states at five layers and proposes 7 tokens per step, which the target verifies in one pass. The chat template is upstream's with one change: a system message after the first turn is rendered in place instead of rejected, which coding agents that inject instructions mid-conversation need.

manifest.json records the revisions above, the execution geometry, and the size and SHA-256 of every artifact. Splash pins an immutable commit of this repository, checks every artifact's SHA-256 before installing it, and re-checks sizes and alignment on every start. The target is the upstream 4-bit conversion, and the target verifies every drafted token, so speculation changes speed and not the output distribution.

License

Apache-2.0. Every component is Apache-2.0 upstream as well: Qwen3.8-27B (Alibaba), its 4-bit conversion (mlx-community), and the DFlash 2 draft (Inco AI).

Citation

@misc{inco2026splash,
  title  = {{Splash: A Local Engine Built Around the Model}},
  author = {{Inco AI}},
  year   = {2026},
  month  = {September},
  url    = {https://inco.ai/blog/splash/}
}
4-bit
apple-silicon
dflash2
local-inference
metal
qwen3.8
speculative-decoding
splash
text-generation

Contributors

zhijianliu

10 commits

incoai/Qwen3.8-27B-Splash

Model

Qwen3.8-27B-Splash

71

10 commits

1 linked in READMEs

updated Sep 18, 2026

See the code

README

Qwen3.8-27B-Splash

Qwen3.8-27B, packed for Splash on Apple silicon.

Splash is Inco AI's open-source inference engine for Apple silicon, built around the model. This package contains everything Splash needs to serve Qwen3.8-27B: the 4-bit target, its DFlash 2 draft, the vision encoder, and the tokenizer. It is not a Transformers or MLX checkpoint and does not load anywhere but Splash.

Qwen3.8-27B is the dense launch model. The other, Qwen3.6-35B-A3B-Splash, is a mixture-of-experts model with about 3B active parameters per token, and the faster of the two.

Engine · Launch post and benchmarks · DFlash 2

Quick start

Apple M3 or newer, macOS 26.4 or later, Homebrew, and 36 GB of unified memory (48 GB or more recommended).

brew install incoai/tap/splash
splash serve --model incoai/Qwen3.8-27B-Splash

The first run downloads this package (17.4 GB), verifies it, checks available memory, and starts serving on 127.0.0.1:8000. When it prints its Ready line, open http://127.0.0.1:8000 or attach an agent you already have installed from another terminal:

splash opencode    # or: splash claude / splash codex / splash hermes

The server binds 127.0.0.1, and authentication is off by default. Set SPLASH_API_KEY before exposing it beyond your Mac.

The API is OpenAI Chat Completions and Responses, and Anthropic Messages, with streaming, tool calls, JSON Schema output, images, and inline PDFs:

curl http://127.0.0.1:8000/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "incoai/Qwen3.8-27B-Splash",
    "messages": [{"role": "user", "content": "Explain speculative decoding in one sentence."}]
  }'

Reasoning is on by default at xhigh. reasoning_effort takes low, medium, xhigh, or none, and reasoning comes back as reasoning_content.

There is no config file. The only settings are ceilings such as --max-memory and --max-context, which the README lists with their defaults.

Performance

Measured on an M5 Pro (16-core GPU, 48 GB) with selected SPEED-Bench coding prompts over HTTP, with a 1,024-token output limit and reasoning at medium. The ratio in each cell is against the next-fastest engine we measured.

MetricQwen3.8-27B
Decode · short prompt74 tok/s (2.0×)
Prefill · 32K prompt363 tok/s (1.2×)
Time to first token · 32K prompt, uncached96 s (1.2×)
Cached time to first token · 32K replay282 ms (7.3×)
Aggregate decode · 4 concurrent short prompts170 tok/s (3.9×)

Splash led on every measure at every prompt length we tested. With 16 concurrent 32K requests, Splash completed all 16 where a general-purpose memory policy accepted nine. The cached figure replays the prompt exactly, so a real turn also pays for the tokens it adds. The launch post has the method and the full comparison.

Package contents

target/      66 files   14.1 GiB   Qwen3.8-27B, 4-bit, one packed file per layer
draft/        6 files    1.2 GiB   DFlash 2 draft model
vision/       1 file     0.9 GiB   bf16 vision encoder
tokenizer/    5 files              tokenizer and chat template
manifest.json                      provenance, geometry, and SHA-256 of every artifact
ComponentSourceRevision
Target, tokenizer, visionmlx-community/Qwen3.8-27B-4bit3e6447f082e89cc7f0bc6e5441afd38dfce760ff
Draftincoai/Qwen3.8-27B-DFlash2dedf8df68adfb1afeaf7b7480c0a0243108177b4

The weights are fixed-layout binaries that Splash maps directly from disk. The target and the vision encoder total 15 GiB, and the draft is another 1.2 GiB. The draft is a five-layer DFlash 2 model that reads the target's hidden states at five layers and proposes 7 tokens per step, which the target verifies in one pass. The chat template is upstream's with one change: a system message after the first turn is rendered in place instead of rejected, which coding agents that inject instructions mid-conversation need.

manifest.json records the revisions above, the execution geometry, and the size and SHA-256 of every artifact. Splash pins an immutable commit of this repository, checks every artifact's SHA-256 before installing it, and re-checks sizes and alignment on every start. The target is the upstream 4-bit conversion, and the target verifies every drafted token, so speculation changes speed and not the output distribution.

License

Apache-2.0. Every component is Apache-2.0 upstream as well: Qwen3.8-27B (Alibaba), its 4-bit conversion (mlx-community), and the DFlash 2 draft (Inco AI).

Citation

@misc{inco2026splash,
  title  = {{Splash: A Local Engine Built Around the Model}},
  author = {{Inco AI}},
  year   = {2026},
  month  = {September},
  url    = {https://inco.ai/blog/splash/}
}
4-bit
apple-silicon
dflash2
local-inference
metal
qwen3.8
speculative-decoding
splash
text-generation

Contributors

zhijianliu

10 commits