--- license: apache-2.0 license_link: https://www.apache.org/licenses/LICENSE-2.0 pipeline_tag: text-generation base_model: Qwen/Qwen3-Coder-Next language: - en tags: - deployment-pack - evaluation-pack - runtime-pack - preview - qwen3-coder-next - agentic-coding - coding - tool-use - function-calling - dgx-spark - nvidia - vllm - openai-compatible - not-a-model --- # Qwen3-Coder-Next-Spark-Agentic ## Parameters | | | |--|--| | **Total** | **~80B** (HF count 79.67B BF16; non-embedding ~79B) | | **Active / token** | **~3B** | | **Arch** | MoE · `Qwen3NextForCausalLM` · 512 experts · 10 act · 1 shared | | **Upstream native context** | **262,144** tokens | | **This launch profile** | **32,768**-token configured ceiling; effective context unmeasured | | **Day-0 artifact** | Official `Qwen3-Coder-Next-FP8` | | **Source** | [Qwen/Qwen3-Coder-Next](https://huggingface.co/Qwen/Qwen3-Coder-Next) | | **This pack** | **deployment / evaluation pack only** — no weights here | > HF native **Parameters** badge stays empty (no checkpoint in this repo) — size is the table above. > Native **Model tree** is enabled via YAML `base_model: Qwen/Qwen3-Coder-Next` for findability only — this is **not** a finetune/adapter/quant of that checkpoint. ## What is ready | Component | Audited day-0 choice | |---|---| | Checkpoint | Official FP8, revision `da6e2ed27304dd39abadd9c82ef50e8de67bdd4c` | | Integrity | Complete 52-file snapshot bound by SHA-256, including 40/40 shards | | Runtime | vLLM `0.25.1`, immutable OCI index and explicit `linux/arm64` selection | | Spark profile | TP=1 · 32K context ceiling · one sequence · memory utilization ≤0.80 | | Endpoint | OpenAI-compatible · host-published `127.0.0.1:8001/v1` · `/v1` key required | | Tool parser | Native `qwen3_coder` parser | | Residency | Single-model policy; automated known-process/container, memory, and swap screen | | Public class | **Preview**; future SAQS certification is a separate process | The canonical machine-readable deployment manifest is [`config.yaml`](./config.yaml). `INSTALL.yaml` and `hermes/config.yaml` are discovery/compatibility pointers only. ## Requirements - DGX Spark with 128 GB unified memory - A Git checkout pinned to the published 40-hex release commit - Local Docker `default` context on `/var/run/docker.sock` plus NVIDIA Container Toolkit - A reviewed Hugging Face CLI executable bound by its absolute path and SHA-256 - A 32–256 character random `VLLM_API_KEY` - At least 96 GiB of available memory before loading; no active swap - Roughly 90 GB of free storage for the official FP8 snapshot and download overhead - No Laguna, DeepSeek, llama.cpp, vLLM, SGLang, or other model server resident The launcher fails closed on known model-server processes/containers, insufficient available memory, and active swap. That screen does **not** enumerate every GPU compute process, so the freeze operator must separately attest that the host is quiescent. Using a different port does **not** make two large models safely co-resident. ## Install the pack without a floating source Use the exact 40-hex commit recorded by the authorized release. `main`, a branch, a moving tag, and a self-derived “current HEAD” are not source-authority pins: ```bash git clone https://github.com/hizrianraz/Qwen3-Coder-Next-Spark-Agentic.git cd Qwen3-Coder-Next-Spark-Agentic PUBLISHED_COMMIT='REPLACE_WITH_AUTHORIZED_40_HEX_COMMIT' git checkout --detach "$PUBLISHED_COMMIT" export QWEN_ALLOWED_PACK_ROOT="$PWD" export QWEN_EXPECT_PACK_REVISION="$PUBLISHED_COMMIT" install -d -m 0700 "$HOME/models/qwen3-coder-next" export QWEN_ALLOWED_MODEL_ROOT="$HOME/models/qwen3-coder-next" ``` Review [`config.yaml`](./config.yaml), then download and verify the official FP8 weights. Bind the reviewed `hf` executable before use. The puller uses an exact upstream revision, a new private staging directory, 52 hashes, and no-overwrite publication; it removes proxy and Hub endpoint overrides and gives the downloader a fresh private home instead of exposing the operator's home configuration. ```bash export QWEN_HF_BIN=/absolute/reviewed/path/to/hf export QWEN_HF_BIN_SHA256='REPLACE_WITH_REVIEWED_64_HEX_SHA256' ./scripts/pull_official_fp8.sh # Pre-pull the exact arm64 image; the launcher itself uses --pull never. docker pull --platform linux/arm64 \ vllm/vllm-openai@sha256:e4f88a835143cd22aee2397a26ec6bb80b3a4a6fe0c882bcbc63822904766089 export VLLM_API_KEY='REPLACE_ME' # Deliberately too short; replace before launch. ./scripts/serve_vllm_fp8.sh ``` The only accepted model path is `$QWEN_ALLOWED_MODEL_ROOT/Qwen3-Coder-Next-FP8`; `QWEN_FP8_DIR` may be set only to that exact path. Broad roots, temporary roots, symlinks, hard-linked files, untrusted ownership/modes, dirty pack trees, and alternate origins fail closed. The compatibility commands `./scripts/serve_spark.sh` and `./scripts/serve_spark_vllm.sh` invoke the same FP8/vLLM launcher. It is not a GGUF or llama.cpp path. Check the local endpoint: ```bash curl --fail --silent \ -H "Authorization: Bearer $VLLM_API_KEY" \ http://127.0.0.1:8001/v1/models OPENAI_BASE_URL=http://127.0.0.1:8001/v1 \ OPENAI_API_KEY="$VLLM_API_KEY" \ SMOKE_MODEL=local-qwen3-coder-next \ /usr/bin/python3 -I -S eval/agent_smoke/run_smoke.py ``` vLLM applies `VLLM_API_KEY` to requests whose paths begin with `/v1`, `/v2`, or `/inference`. Other paths are not authenticated by that mechanism. This Preview profile is therefore for a trusted single-user host: Docker host-loopback publication reduces network reachability, but it is not isolation from other local processes/users, a firewall, or whole-server authentication. The key is also passed through Docker's environment and is inspectable by local root or Docker administrators; Docker environment variables are not a secret store. ## Remote access Direct LAN binding is deliberately disabled. Use an authenticated SSH tunnel: ```bash ssh -L 18001:127.0.0.1:8001 spark ``` Then connect the client to `http://127.0.0.1:18001/v1` with the same API key. For a shared service, a separately reviewed TLS proxy must authenticate and authorize the **entire** vLLM service, including paths outside `/v1`, `/v2`, and `/inference`; do not change `HOST` to `0.0.0.0`. ## Exact provenance and runtime pins | Field | Value | |---|---| | Upstream base | [`Qwen/Qwen3-Coder-Next`](https://huggingface.co/Qwen/Qwen3-Coder-Next) | | FP8 repository | [`Qwen/Qwen3-Coder-Next-FP8`](https://huggingface.co/Qwen/Qwen3-Coder-Next-FP8) | | FP8 revision | `da6e2ed27304dd39abadd9c82ef50e8de67bdd4c` | | Expected shards | exactly 40 | | Verified snapshot files | exactly 52, including tokenizer/template/parser support files | | Manifest SHA-256 | `d7269c078ec614ae57792ec63da00b3e13cf88e61f421ef4bcf4bdaac54b0190` | | vLLM version | `0.25.1` | | vLLM commit | `752a3a504485790a2e8491cacbb35c137339ad34` | | OCI index digest / image reference | `sha256:e4f88a835143cd22aee2397a26ec6bb80b3a4a6fe0c882bcbc63822904766089` | | Selected platform | `linux/arm64` | | arm64 platform-manifest digest | `sha256:2cc49b81319f7a66a33dd8bd63a7bfddae079122b33ce51989b6828a1f038c37` | | Image-config digest / Docker image ID | `sha256:30a38a1d74a17365eca400e83ffd885b250e0c8c0d3c5b508afa8c412d2ddf95` | | Docker boundary | clean client environment · explicit local Unix socket · exact image · remote daemon variables removed | | Pack source | canonical GitHub origin + externally supplied 40-hex commit + clean tracked tree | `scripts/pull_official_fp8.sh` writes both `.verified-revision` and an atomic `PULL_COMPLETE` marker containing the repository, revision, checksum-manifest digest, verified file count, and verified shard count. The launcher validates all of those fields before loading the model. ## Evidence: what 2/2 means The historical receipt in [`results/agent_smoke.json`](./results/agent_smoke.json) records two successful **API/chat availability** prompts: an exact `pong` response and a small Python `add` response. Neither prompt supplied tools. Therefore 2/2 is **not** evidence of tool-call formatting, routing, tool execution, closed-loop recovery, coding benchmark quality, throughput, concurrency, or long-horizon reliability. That historical probe used a floating vLLM image and does not validate the newly pinned runtime. It is retained as historical evidence, not promoted as a launch headline. A Preview listing does not imply SAQS certification. For optional post-listing protocol work, the [`qwen_native_closed_loop`](./eval/qwen_native_closed_loop/) harness executes three dynamic tool roundtrips, including dependency chaining and error recovery. It has no checked-in pass receipt and is not a new prerequisite for the Preview listing. ## Known limits - One active request is the day-0 default; concurrency is unmeasured. - The tested public ceiling is not established beyond the historical 8K probe; 32K is a conservative launcher ceiling, not a measured effective-context claim. - The pack has no reference-vs-quant retention study and hosts no weights. - The native parser is configured, but tool correctness remains unmeasured. - GGUF helper files are retained for research history only. They are not the supported day-0 path and `scripts/serve_spark.sh` does not serve GGUF. - Trust-remote-code is not enabled. - `VLLM_API_KEY` covers only the `/v1`, `/v2`, and `/inference` path prefixes. Other paths are not authenticated by that mechanism, and host loopback is reachable by local software/users. Use a whole-service boundary when shared. - Path, ownership, link, Docker-context, image, residency, and port checks are point-in-time guards. The complete 52-file snapshot and Docker boundary are revalidated after both locks. Same-UID and privileged mutation remain outside this script’s sandbox. - Pull and serve share a Qwen operation lock; serve also uses the same host-wide model-residency lock as the Laguna launcher. Stale locks require manual inspection. ## Troubleshooting | Failure | Meaning / action | |---|---| | checksum-manifest mismatch | Use the pack’s unchanged `results/SHA256SUMS.fp8` | | missing or invalid marker | Re-run `scripts/pull_official_fp8.sh` | | pack commit/origin/dirty-tree rejection | Use the canonical clean checkout at the independently recorded release commit | | Docker context/socket rejection | Restore local `default` context on the root-owned Unix socket; remote daemons are unsupported | | image ID/platform rejection | Pull the exact `linux/arm64` digest shown above; do not substitute a tag | | API-key rejection | Set a random URL-safe `VLLM_API_KEY` of 32–256 characters | | stale operation/residency lock | Inspect the host and lock owner; never auto-delete an unexplained lock | | resident process/container | Stop every sibling model server, then retry | | available memory below 96 GiB | Restore the required single-model state; do not lower the bar casually | | swap already used | Stop memory pressure, clear swap safely, and retry | | non-loopback host rejected | Use SSH tunneling or an authenticated TLS proxy | | model id error | Request `local-qwen3-coder-next` | ## Release integrity - Source is **freeze-attested** (2026-08-02); class remains **Preview** only. Exact-runtime DGX Spark evidence is still pending — not `runnable_day0` / not hero. - [`LAUNCH_GATE.md`](./LAUNCH_GATE.md) separates Preview listing readiness from future measured claims. - [`SPARK_AGENTIC_QUANT_STANDARD.md`](./SPARK_AGENTIC_QUANT_STANDARD.md) defines the shared future certification bar. - [`results/RELEASE_MANIFEST.json`](./results/RELEASE_MANIFEST.json) binds the public class, exact runtime, and conditional promotion posture. - `smoke != headline`; `verification != gate clearance`. ## License and affiliation Pack code and documentation are Apache-2.0; see [`LICENSE`](./LICENSE). Upstream weights remain governed by their upstream repository. This is an independent personal deployment pack, not an Alibaba, Qwen, NVIDIA, or vLLM product.