Image-Text-to-Text
GGUF
llama.cpp
qwen
amd
rocm
gfx1151
strix-halo
iu4
mtp
long-context
vision
conversational
Instructions to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0 # Run inference directly in the terminal: llama cli -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0 # Run inference directly in the terminal: llama cli -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0 # Run inference directly in the terminal: ./llama-cli -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0 # Run inference directly in the terminal: ./build/bin/llama-cli -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
Use Docker
docker model run hf.co/jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
- LM Studio
- Jan
- vLLM
How to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
- Ollama
How to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with Ollama:
ollama run hf.co/jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
- Unsloth Desktop
- Pi
How to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with Docker Model Runner:
docker model run hf.co/jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
- Lemonade
How to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
Run and chat with the model
lemonade run user.Qwen3.8-Flash-CIRU-STRIX-IU4-Q8_0
List all available models
lemonade list
- Hermes Agent
How to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
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 jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0
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 "jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4:Q8_0" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
|
Download README.md from jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4: direct link, hf CLI and curl.
- Browser
- Download file 19.6 kB
-
https://huggingface.co/jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4/resolve/b31a9870a4cdab97fd3ffe9dd5b6cfa3c2231b64/README.md
- Command line
-
hf download hf://jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4@b31a9870a4cdab97fd3ffe9dd5b6cfa3c2231b64/README.md
-
curl -L -o README.md https://huggingface.co/jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4/resolve/b31a9870a4cdab97fd3ffe9dd5b6cfa3c2231b64/README.md
19.6 kB
| license: other | |
| license_name: qwen-community-1.0 | |
| license_link: LICENSE | |
| base_model: | |
| - Qwen/Qwen3.8-Flash-Next | |
| - Qwen/Qwen3.8-Flash-Next-FP8 | |
| base_model_relation: quantized | |
| library_name: llama.cpp | |
| pipeline_tag: text-generation | |
| inference: false | |
| tags: | |
| - qwen | |
| - qwen3.8 | |
| - qwen3.8-flash-next | |
| - gguf | |
| - llama.cpp | |
| - amd | |
| - rocm | |
| - gfx1151 | |
| - ryzen-ai-max-395 | |
| - strix-halo | |
| - mixture-of-experts | |
| - iu4 | |
| - mtp | |
| - speculative-decoding | |
| - nvme | |
| - ple | |
| - long-context | |
| - local-inference | |
| [](https://llm.ciru.ai/research) | |
| # Qwen3.8-Flash-CIRU-STRIX-IU4 · runtime v3.0.0 | |
| **V3 brings faster long-context serving and the qualified QSA conversation-isolation fixes to the Strix-only runner. Model weights are unchanged.** It adds parallel attention-cell selection, indexed decode attention, cached derived history, guarded PLE lookups and wider prefill. The general profile retains maximum MTP depth 6 and batch/microbatch 1024. | |
| Use the [v3 source archive](runtime/v3.0.0/ciru-runtime-v3.0.0-source.tar.gz) or [matching GitHub tag](https://github.com/ciru-ai/Qwen3.8-Flash-CIRU-STRIX-IU4/tree/v3.0.0). This text-only package requires the custom CIRU runtime, the target GGUF and all three `ple/` files. The `mtp/` head enables speculative decoding. Stock llama.cpp and Hugging Face hosted inference do not support this package. | |
| ## V3 serving comparison | |
| Measured on one Ryzen AI Max+ 395 / gfx1151 / 128 GB shared-memory NixOS machine, with one model workload at a time. Inputs are identical token IDs, cold prompt cache, 128 generated tokens, one slot and 262,144-token configured capacity. Nonthinking sampler: temperature 0.7, top-p 0.8, top-k 20, min-p 0, presence penalty 1.5, repeat penalty 1, frequency penalty 0 and seed 123. EOS is honored. | |
| | Input tokens | Profile | Prompt tok/s | Generation tok/s | First streamed piece (s) | Whole request (s) | | |
| | ---: | --- | ---: | ---: | ---: | ---: | | |
| | 4,096 | Previous CIRU | 392.00 | 22.52 | 10.70 | 16.34 | | |
| | 4,096 | CIRU v3 | 455.65 | 24.60 | 9.25 | 14.41 | | |
| | 4,096 | Halo | 381.49 | 35.30 | 11.09 | 14.69 | | |
| | 65,536 | Previous CIRU | 284.49 | 13.33 | 230.46 | 239.99 | | |
| | 65,536 | CIRU v3 | 369.81 | 24.22 | 177.32 | 182.57 | | |
| | 65,536 | Halo | 263.42 | 23.28 | 248.91 | 254.37 | | |
| **Versus the previous CIRU profile, v3 reduces whole-request time by 11.80% at 4K and 23.93% at 64K.** At 64K, prompt throughput improves 29.99% and generation throughput 81.66%. These are separate metrics; the first-piece times above are the first streamed content-field event. | |
| MTP 2 is a useful optional setting for the tested lower-acceptance long requests, but it was not promoted as the general default. Across 20 short HumanEval requests, v3 MTP 6 measured 53.24 generation tok/s versus 39.63 with MTP 2. Both passed 20/20 base and extended tests. Keeping MTP 6 avoids that short-coding regression; target verification retains the full vocabulary at either depth. | |
| | Input tokens | Optional v3 MTP 2 prompt tok/s | Generation tok/s | Whole request (s) | | |
| | ---: | ---: | ---: | ---: | | |
| | 4,096 | 453.09 | 29.39 | 13.62 | | |
| | 65,536 | 373.08 | 24.88 | 180.87 | | |
| The previous CIRU arm is the locally qualified v2.0.1 runner under its original MTP 6, b2048/u512 profile. The v3 arm uses the same weights and MTP 6, with b1024/u1024. Halo is the unmodified current fork at commit `5f851647fe5ed795dfd6c0a3fba543114879e874`, using its recommended Vulkan backend, Unsloth UD-Q4_K_XL target and published EasiiX Strix Q8 MTP head. Native KV, batch, thread, fitting and cache defaults are retained. | |
| Halo maximum depths 2, 3, 4, 6 and native adaptive 6 were screened. Depth 3 won its short-context screen at **35.37 tok/s**, versus **31.4** at depth 2, **30.04** at depth 4, **25.91** at depth 6 and **29.31** with adaptive 6. The final comparison above uses depth 3. Halo source and weights were not modified. | |
| CIRU and Halo have different quantizations and execution profiles: this is a serving-package comparison. Generation throughput, prompt processing and whole-request latency are separate metrics. At 4K, the general MTP 6 profile is close to Halo in total time; the optional MTP 2 setting provides the clearer latency benefit on this fixture. Long-context prompt processing shows the larger gain. The tables retain Halo's generation advantage where present; a CIRU request-time win is not a claim of winning every metric. Three clean v3 loads, two selected Halo loads and one previous-CIRU load are a bounded experiment, not a confidence interval or general ranking. | |
| The 2.79 GB Unsloth shared Q8 head intentionally omits tensors a supporting loader borrows from the main model. The pinned Halo loader fails for missing `token_embd.weight`; Unsloth's self-contained Q8 head also fails for missing `output_hc_norm.weight`. Both attempts are recorded. The compatible [EasiiX Strix Q8 head](https://huggingface.co/EasiiX/Qwen3.8-Flash-Next-MTP-Strix-Halo-GGUF/tree/6f7900648b1c6b14f067a182c640e47971e9ab35) is used as published. | |
| [Full report, first-piece latency and memory](benchmarks/v3.0.0/COMPARISON.md) · [Structured results](benchmarks/v3.0.0/comparison.json) · [Raw evidence archive](benchmarks/v3.0.0/strix-v3.0.0-evidence.tar.gz) | |
| ## Quality and capacity checks | |
| | Profile | HumanEval base | EvalPlus extended tests | Recall at about 8K and 64K | | |
| | --- | ---: | ---: | --- | | |
| | Previous CIRU | 20/20 | 20/20 | Both keys and exact cached replay | | |
| | CIRU v3 | 20/20 | 20/20 | Both keys and exact cached replay | | |
| | Halo | 20/20 | 20/20 | Both keys and exact cached replay | | |
| These are canonical HumanEval tasks 0–19, EvalPlus v0.1.10, one first sample per task, no retries and a 4096-token cap; truncations fail. Generated code runs inside a filesystem/network sandbox. This small nonthinking coding and recall panel is a regression check. It does not establish broad model equality, thinking-mode quality, tool reliability or leaderboard standing. | |
| V3 also completed **261,888 input tokens plus 128 generated tokens** at **257.44 prompt tok/s and 18.00 generation tok/s**, with a **1024.44 s** whole request. This is a CIRU-only serving-capacity check, not a filled-256K Halo comparison or full-context accuracy result. | |
| The final inference source passes 69 QSA mapping/state/guard cases with flags on and off, 33 actual ROCm operator reference cases and the existing 30 batch allocator tests. A separate short four-prefix diagnostic matches 15,892,480 F32 logits byte-for-byte against the previous runner. Radix selection can change threshold-tie membership and selected-list order; general bitwise equivalence is not claimed. | |
| ## Additional task benchmarks · 9 September 2026 | |
| The post-release **Ornith difficulty panel** measures complete task execution, including tool work, scoring and harness overhead. All arms ran sequentially on the same Ciru machine using one server slot: previous CIRU v2.0.1 and v3 use MTP6; the unchanged Halo Vulkan arm uses MTP3. These are the same serving profiles described above. | |
| | Benchmark stage | Previous CIRU | CIRU v3 | Halo MTP3 | | |
| | --- | ---: | ---: | ---: | | |
| | **Complete mixed panel, after readiness** | **29m 17.11s** | **25m 18.32s** | **24m 34.43s** | | |
| | Additional model load | 31.17s | 31.15s | 33.62s | | |
| | Short scored stage | 5m 20.33s | 5m 20.85s | 4m 35.60s | | |
| | Hermes, two rounds combined | 12m 28.01s | 11m 37.57s | 10m 08.12s | | |
| | Shared 63K-token history seeding | 3m 26.33s | 2m 42.80s | 3m 21.00s | | |
| | Long hard stage, history already loaded | 4m 43.92s | 2m 41.90s | 3m 22.96s | | |
| | Total generated tokens | 33,294 | 33,451 | 31,058 | | |
| V3 takes **13.59% less total time than previous CIRU**, saving 3m 58.79s. Halo finishes 43.89s sooner than v3. Long hard-stage wall time falls **42.98%** against previous CIRU; output lengths differ, so this is a workload result rather than an equal-output decode comparison. Short-stage time is effectively unchanged. Stage rows are components of the full panel; coding health checks and other overhead also contribute. | |
| The panel includes 22 short academic tasks, six Hermes scenarios repeated twice, eight hard tasks returning to a shared long history, and 10 short / eight long coding health checks. Cases were selected from earlier Ornith disagreements and failures. They do not estimate general dataset accuracy or leaderboard performance. | |
| | Profile | Short IFEval strict | Short GSM8K | Short HumanEval | Long IFEval strict | Long GSM8K | Long HumanEval | | |
| | --- | ---: | ---: | ---: | ---: | ---: | ---: | | |
| | Previous CIRU | 5/8 | 8/8 | 5/6 | 2/2 | 2/2 | 2/4 | | |
| | CIRU v3 | 5/8 | 8/8 | 5/6 | 2/2 | 2/2 | 2/4 | | |
| | Halo MTP3 | 6/8 | 8/8 | 5/6 | 2/2 | 2/2 | 3/4 | | |
| | Profile | Hermes native full passes | Native mean points / 100 | Reviewed end states | | |
| | --- | ---: | ---: | ---: | | |
| | Previous CIRU | 7/12 | 80.83 | 11/12 | | |
| | CIRU v3 | 11/12 | 95.83 | 12/12 | | |
| | Halo MTP3 | 11/12 | 95.83 | 12/12 | | |
| Native scores are retained. Reviewed end states separately account for demonstrated grader artifacts; previous CIRU and Halo each had a memory-case wording mismatch. All three arms passed the short 10-task and long eight-task coding health checks on base and extended tests. Two Hermes repetitions are a bounded comparison, not a reliable failure-rate estimate. | |
| Short-task generation rates were **38.44 / 39.09 / 43.97 tok/s** for previous CIRU / v3 / Halo. Long hard-stage generation rates were **21.75 / 35.93 / 31.25 tok/s**. Native short tasks use temperature 0, seed 15035, nonthinking, a 32,768-token output allowance, first samples and no answer repair. Hermes uses temperature 0.6, top-p 0.95, top-k 20, thinking enabled and full remaining context. Long history seeding is timed separately. Interrupted or instrumented captures are excluded. | |
| [Full hard-panel report and case review](benchmarks/v3-followup-20260909/HARD-PANEL.md) · [Measured results JSON](benchmarks/v3-followup-20260909/results.json) · [Wall times CSV](benchmarks/v3-followup-20260909/v3-benchmark-walltimes.csv) · [Interactive research page](https://llm.ciru.ai/research/qwen38-v2/) | |
| ### Coding throughput and MTP depth | |
| The separate 20-task HumanEval regression panel quantifies the high-acceptance coding workload. Every profile below passed **20/20 base and 20/20 extended tests**. These are summed API request times, excluding grading overhead. | |
| | Profile | Generated tokens | Prompt tok/s | Generation tok/s | Sum of request times | | |
| | --- | ---: | ---: | ---: | ---: | | |
| | Previous CIRU MTP6 | 3,179 | 148.53 | 53.33 | 75.49s | | |
| | CIRU v3 MTP6 | 3,179 | 219.51 | 53.24 | 70.67s | | |
| | CIRU v3 MTP2 | 3,212 | 226.25 | 39.63 | 91.57s | | |
| | Halo MTP3 | 3,241 | 176.10 | 49.48 | 79.15s | | |
| Previous CIRU and v3 MTP6 produced identical token IDs on all 20 tasks. V3 reduces their summed request time by **6.39%**, principally through prefill; decode throughput is effectively unchanged. Different output lengths are retained for MTP2 and Halo. This reinforces retaining MTP6 as the general profile while exposing MTP2 as a workload-specific option. | |
| ## Historical full and sampled quality results | |
| These results used the same released model artifacts on earlier runtimes. They are historical results, **not full-suite v3 reruns**; the new v3 checks are shown separately above. | |
| | Benchmark | Historical score | Scope | | |
| | --- | ---: | --- | | |
| | HumanEval | 160/164 (97.56%) | Full local-custom chat run | | |
| | HumanEval+ | 155/164 (94.51%) | Full 164-task EvalPlus extended tests | | |
| | ARC-Challenge | 1,143/1,172 (97.53%) | Full EvalScope dataset | | |
| | GPQA-Diamond | 46/50 (92.0%) | Sampled subset | | |
| | MMLU-Pro | 61/70 (87.14%) | Five questions per subject | | |
| | GSM8K | 97/100 (97.0%) | Sampled subset | | |
| | IFEval prompt strict | 92/100 (92.0%) | Sampled subset | | |
| | ToolEval Standard | 115/138 points (83.33%) | 69 local-custom cases | | |
| | ToolEval Hard | 23/30 points (76.67%) | 15 local-custom cases | | |
| ### Recorded EvalScope wall time | |
| The completed **29 August H96 / MTP1** run used one request at a time and uncapped natural-EOS generation. The table records stage start/end intervals for 1,492 items, excluding setup and earlier failed attempts. | |
| | Dataset | Items | Wall time | | |
| | --- | ---: | ---: | | |
| | ARC-Challenge | 1,172 | 24m 42s | | |
| | GPQA-Diamond | 50 | 1h 33m 21s | | |
| | MMLU-Pro | 70 | 36m 37s | | |
| | GSM8K | 100 | 20m 19s | | |
| | IFEval | 100 | 22m 50s | | |
| | **Quality suite total** | **1,492** | **3h 17m 50s** | | |
| Including the separate performance probe, the run took **3h 20m 46s**. This is a different workload from the 25-minute v3 mixed panel. No measured full EvalScope wall time is available for v3. [Timestamp-derived records](benchmarks/v3-followup-20260909/results.json) · [Historical quality methodology](https://github.com/ciru-ai/Qwen3.8-Flash-CIRU-STRIX-IU4/blob/v1.1/docs/BENCHMARKS.md) | |
| ## Download, build and run | |
| The unchanged model files total **135,962,881,135 bytes (126.625 GiB)**, excluding runtime and reports. The target is 73.945 GiB, the PLE payload 48.828 GiB and the Q8 MTP head 3.852 GiB. Allow at least 160 GiB for model storage/verification plus SDK and build space. Use fast NVMe and a Strix Halo machine with 128 GiB unified memory. | |
| On Ubuntu/Debian, install Git and a Python virtual environment, then download the model and build the source: | |
| ```bash | |
| sudo apt-get update | |
| sudo apt-get install -y git python3-venv | |
| python3 -m venv .venv-hf | |
| .venv-hf/bin/python -m pip install -U huggingface_hub | |
| . .venv-hf/bin/activate | |
| hf download jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4 \ | |
| --revision v3.0.0 --local-dir ./model | |
| (cd model && sha256sum -c checksums.sha256 && sha256sum -c v3.0.0-checksums.sha256) | |
| git clone --branch v3.0.0 --single-branch \ | |
| https://github.com/ciru-ai/Qwen3.8-Flash-CIRU-STRIX-IU4.git ciru-runtime-v3.0.0 | |
| cd ciru-runtime-v3.0.0 | |
| ./scripts/ciru/setup-linux-amd.sh --install-host-deps | |
| BUILD_DIR="$PWD/build-gfx1151-sdk" MODEL_DIR="$(realpath ../model)" \ | |
| ./scripts/ciru/run-server.sh | |
| ``` | |
| The helper installs a private complete ROCm 10.0.0 SDK with gfx1151 libraries. Keep the SDK directory used by the build; the host needs a compatible AMD driver and access to `/dev/kfd` and its render node. New v3 GPU qualification is NixOS/ROCm 10/gfx1151. The prior clean Ubuntu qualification belongs to v2.0.1, so the Ubuntu instructions are retained build guidance, not a new v3 Ubuntu test result. See [platform/build instructions](https://github.com/ciru-ai/Qwen3.8-Flash-CIRU-STRIX-IU4/blob/v3.0.0/docs/BUILD_LINUX.md). | |
| Existing users can keep their model directory and clone/build only the new runtime. The source archive is equivalent to the Git tag including executable modes and symlinks. The optional [tested NixOS binary payload](runtime/v3.0.0/ciru-runtime-v3.0.0-nixos-gfx1151.tar.gz) requires the recorded Nix store and ROCm SDK paths; use the source build for another installation. | |
| The launcher enables 262,144 context capacity, F16 target KV, Q8 draft KV, the 32,768-row draft shortlist, maximum MTP depth 6, b1024/u1024, eight CPU threads and prefix caching. MTP uses `--parallel 1`; multi-slot MTP is rejected before model load. For target-only parallel serving, set `ENABLE_MTP=0` and follow the [parallel instructions](https://github.com/ciru-ai/Qwen3.8-Flash-CIRU-STRIX-IU4/blob/v3.0.0/docs/RUNNING.md#parallel-requests-and-unified-kv-cache). | |
| Confirm `CIRU MTP shortlist enabled: 32768 / 248320 vocabulary rows; full target verification retained` in the startup log. The shortlist limits draft projection; target verification retains the full vocabulary. `MTP_DEPTH=2` selects the tested option for low-acceptance long requests; the screen does not establish the optimum for every prompt. New v3 optimization switches accept literal `0`. The optional draft attention window remains off and is unqualified when enabled. | |
| Thinking mode remains the model default: temperature 1.0, top-p 0.95, top-k 20, min-p 0. For the nonthinking mode evaluated here: | |
| ```bash | |
| curl http://127.0.0.1:8080/v1/chat/completions \ | |
| -H "Content-Type: application/json" \ | |
| -d '{ | |
| "model": "Qwen3.8-Flash-CIRU-STRIX-IU4", | |
| "messages": [{"role": "user", "content": "Write a Python CSV validator with tests."}], | |
| "chat_template_kwargs": {"enable_thinking": false}, | |
| "temperature": 0.7, "top_p": 0.8, "top_k": 20, | |
| "min_p": 0, "presence_penalty": 1.5, "cache_prompt": true | |
| }' | |
| ``` | |
| These sampling defaults follow the [Qwen model card](https://huggingface.co/Qwen/Qwen3.8-Flash-Next/blob/f5d08274bafd880402bd16f5e3e6c514136ec06c/README.md#best-practices). Ordinary chat can retain prefix caching; the benchmark's cold requests, fixed seed and output cap are measurement controls. | |
| ## What ships in v3 | |
| V3 combines the previously qualified QSA sequence isolation/indexer-copy fixes with the portable retained hybrid work: wider aligned QSA prefill, J32 expert tiling for supported prefill shapes, radix selection, indexed F16 attention, direct guarded PLE lookup, derived-history caching keyed by sequence and packed tiny F32 gathers. The F32 derived cache adds about 192 MiB at 256K. Hybrid external-GPU ownership, peer transfers, expert splitting, scheduler overlap and experimental compact masks are excluded. | |
| The original READY package, source, evidence and checksum trees are included in the [prior-package archive](benchmarks/v3.0.0/qsa-v2.0.1-prior-package.tar.gz). Its v2.0.1 fixes ship as part of v3; no separate public v2.0.1 tag is claimed. Existing public v2.0 tags and weight identities remain unchanged. [Historical v2.0 results](https://huggingface.co/jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4/blob/v2.0/README.md) remain available; their 42.3 tok/s short greedy probe and broader older quality suites are different workloads and were not rerun as full suites for v3. | |
| The IU4 model name is retained. The target has 1,223 tensors: 144 Q4_1 routed-expert tensors, 328 Q5_K, 290 Q8_0, 48 Q5_1, 25 BF16 and 388 F32. The standard launcher uses ordinary GGUF types; its Q4_1 matrix path expands packed values into byte lanes for IU8 WMMA. It does not activate the separate native IU4/E3 bank path. The PLE payload preserves exact FP8 E4M3 weights with one BF16 scale. | |
| [Model file tree](https://huggingface.co/jcbtc/Qwen3.8-Flash-CIRU-STRIX-IU4/tree/v3.0.0) · [Weight checksums](checksums.sha256) · [V3 runtime/report checksums](v3.0.0-checksums.sha256) · [Source identity](benchmarks/v3.0.0/git-source.json) · [GitHub release](https://github.com/ciru-ai/Qwen3.8-Flash-CIRU-STRIX-IU4/releases/tag/v3.0.0) | |
| ## Lineage, license and credit | |
| Text lineage is [Qwen/Qwen3.8-Flash-Next](https://huggingface.co/Qwen/Qwen3.8-Flash-Next/tree/f5d08274bafd880402bd16f5e3e6c514136ec06c); PLE lineage is [Qwen3.8-Flash-Next-FP8](https://huggingface.co/Qwen/Qwen3.8-Flash-Next-FP8/tree/bcd9f01ddc9cff2316eb84281bebcd5b058bddce). Runtime lineage starts from [ggml-org/llama.cpp](https://github.com/ggml-org/llama.cpp/commit/f5e85d43a048f3d5adefb4c5e29867d8077fba62). Model artifacts use the included Qwen Community License 1.0; runtime code retains MIT and component notices. | |
| Credits include Qwen, ggml-org, Ryan Monsurate's MTP integration, AMD's ROCm ecosystem and the contributors in the source notices. Daniel Han's authorship of the imported QSA repair is preserved. Thanks to halo-box, EasiiX, Unsloth, Daniel Han Chen, Laurent Zuijdwijk and Agention AI for public models/runtimes, and the HumanEval and EvalPlus authors for evaluation tools. CIRU is an independent community research project; AMD and Qwen marks do not imply sponsorship. | |