Instructions to use jakejharris/jspark3 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use jakejharris/jspark3 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="jakejharris/jspark3") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("jakejharris/jspark3") model = AutoModelForMultimodalLM.from_pretrained("jakejharris/jspark3", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use jakejharris/jspark3 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "jakejharris/jspark3" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "jakejharris/jspark3", "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/jakejharris/jspark3
- SGLang
How to use jakejharris/jspark3 with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "jakejharris/jspark3" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "jakejharris/jspark3", "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 images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "jakejharris/jspark3" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "jakejharris/jspark3", "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" } } ] } ] }' - Docker Model Runner
How to use jakejharris/jspark3 with Docker Model Runner:
docker model run hf.co/jakejharris/jspark3
JSpark3 v1
Three DGX Sparks, one OpenAI-compatible GLM-5.3 Flash endpoint, with the recipe and evidence to rebuild it.
JSpark3 is the measured three-Spark path for the EXL3/TR3 checkpoint in this repository. It combines the exact mirrored weights with a pinned serving stack and a fail-closed fleet controller.
Results
| Measured result | JSpark3 v1 |
|---|---|
| Single-stream code decode | 1.49x faster, 66.3 vs 44.6 tok/s on the two-Spark recipe |
| sparkDash clamp-code time to first token | 391 ms, down from 719 ms on two Sparks |
| Four-stream aggregate decode | 251 tok/s, up from 146.5 tok/s on two Sparks |
| Same agent task and prompt | 1.8x the throughput, 44.6 vs 24.7 tok/s on two Sparks |
| Configured context | 1,000,000 tokens |
The code-screen comparison and agent task were run on the JSpark3 fleet against the compatibility-adapted current Mia two-Spark recipe. sparkDash used the same pinned author protocol as Mia's published figures, on separate fleets and dates. See the machine-readable results and exact figures, receipts, and caveats.
What you get
- An exact, hash-verifiable mirror of Brandon M. Music's ShapleyMcg EXL3/TR3 quantization, as re-hosted by Mia-AiLab, with its provenance intact.
- A TP3 and EP3 serving recipe with DFlash2, FP8 KV cache, prefix caching, and a selective W8A16 trunk overlay.
- A fail-closed preflight, start, health, and verification path.
- Public measurements with the regressions and missed gates left in.
Install and run it with the GitHub recipe.
License and weight provenance: JSpark3's original recipe code and documentation are Apache-2.0. The weights here are Brandon M. Music's exact EXL3/TR3 quantization, re-hosted byte-for-byte by Mia-AiLab and mirrored by JSpark3 without changing a weight byte. They remain under the attribution-required, source-available ShapleyMcg License v1.0, including its named exclusion; Z.AI's base model remains MIT. DFlash2 is not mirrored and remains a separate CC BY-NC-ND 4.0 dependency.
JSpark3 turns three NVIDIA DGX Sparks into one fast GLM-5.3 Flash server, with a reproducible TP3 recipe and public benchmarks. The recipe uses tensor parallel 3, expert parallel 3, a two-leg RoCE-v2 triangle, EXL3/TR3 4-bpw target weights, a DFlash2 k=7 draft, FP8 KV cache, prefix caching, a 1,000,000-token configured context, and a selective INT8 (W8A16 Marlin) overlay for the model trunk.
This public repository is the release home for the card, results, license set,
and attributed target-weight mirror. All 123 allowlisted Git LFS payloads were
verified by size and SHA-256 against the pinned manifest, and
jspark3/MIRROR-COMPLETION.json was verified
byte for byte before merge into the public main revision. The recipe,
documentation, and evidence are in the
v1.0.0 GitHub release,
released 2026-09-02.
Weights
These weights are not ours. This repository carries an exact,
hash-verifiable mirror of
Mia-AiLab/GLM-5.3-Flash-EXL3-TR3-4bpw
at revision 25a44fdbf16862a46b7cc9921142c6c81350af2f, which is itself a
byte-identical re-host of
brandonmusic/GLM-5.3-Flash-tr3-4bpw
at revision 5ab363a8dcf6405955fd5f99671e01a1c9fb124b. Brandon M. Music is the
quantization author; Z.AI created the base model. JSpark3 trained nothing,
quantized nothing, and modified no weight byte.
The mirror is described file by file in
jspark3/WEIGHTS-MANIFEST.json: every file at
the pinned revision with its size, SHA-256, and how that hash was obtained. The
chain, the verification method, and one recorded discrepancy in the upstream
checksum file are in jspark3/PROVENANCE.md. The
upstream card is preserved verbatim as
UPSTREAM_MODEL_CARD.md, and every other upstream
file keeps its exact upstream path so that a checkpoint contract validating a
download from this mirror validates exactly as it does upstream.
The DFlash2 speculative draft is a separate checkpoint from Inco AI under CC BY-NC-ND 4.0. It is not mirrored here; operators fetch it from its own repository at its own pinned revision.
Hub status: all 123 allowlisted Git LFS payloads and
jspark3/MIRROR-COMPLETION.jsonwere remotely verified before merge into the public main revision. Seejspark3/UPLOAD.mdfor the recorded procedure.
Pinned inputs
| Input | Identity |
|---|---|
| Target checkpoint | Mia-AiLab/GLM-5.3-Flash-EXL3-TR3-4bpw at 25a44fdbf16862a46b7cc9921142c6c81350af2f, declared byte-identical to brandonmusic/GLM-5.3-Flash-tr3-4bpw at 5ab363a8dcf6405955fd5f99671e01a1c9fb124b |
| Draft checkpoint | incoai/GLM-5.3-Flash-DFlash2 at dc77ff1c99eeb2df044ee3d4f0094eb033fee410 |
| Serving image | ghcr.io/miaai-lab/glm-5.3-flash-2x-dgx-sparks@sha256:9bb1557a4234fce63d59599e44d10747eabd742beb337eebf9e7070be8a0fd58 |
| Base model | zai-org/GLM-5.3-Flash (Z.AI) |
How it compares with what was already public
The comparison that matters for a Spark owner is against recipes that were publicly available before this release. The reference rows below are author-reported: measured by each recipe's own author, on that author's hardware, with that author's harness. The JSpark3 v1 row is our own local measurement, and the Basis column states the conditions of every row. Rows without a matched local protocol remain context because node counts, quantization lanes, speculation, context, clocking, safety envelope, and estimators differ. The headline exceptions use the same frozen screen, the same sparkDash author protocol, or the same agent task and prompt, with each remaining mismatch stated in the linked benchmark page.
| Recipe | Nodes | Lane | Context | Decode (tok/s) | Basis |
|---|---|---|---|---|---|
JSpark3 v1 v1.0.0 |
3 | EXL3/TR3 4 bpw, DFlash2, W8A16 trunk overlay | 1,000,000 | structured count 81.962; code 66.257; prose 29.049 | local; frozen 24-request screen, thinking off, temperature 0, 400 max tokens, warm server; medians of three batteries; per-stream estimator |
FlyCockpit TP3 9093765c |
3 | EXL3/TR3 4 bpw, DFlash2 | 1,000,000 | structured count 69.0 / 68.5 / 71.2; code 52.3 / 58.7 / 58.2 | author-reported |
| neko-legends TP4 | 4 | EXL3/TR3 4 bpw, DFlash2 | 1,000,000 | code 64.5; structured 100.9; math 77.8; prose 23.1; C4 aggregate 253 | author-reported; four DGX Sparks, warm client-wall bench_exl3.py, thinking off |
Mia TP2 c190db1a |
2 | EXL3/TR3 4 bpw, DFlash2 | 1,000,000 | sparkDash C1 62.9; lab structured 65.1; lab prose 27.1 | author-reported |
jetnet TP3 bfc820ec |
3 | NVFP4 with Marlin W4A16, MTP-4 | 512K | 35.2; DFlash2 lane, thinking on, 47.2 | author-reported |
Three of those recipes were also run on this fleet, each with a pinned source revision and every adaptation disclosed. None is an exact reproduction and none replays a source's own published harness, so these are separate evidence rather than a restatement of the rows above. Their same-task agent runs used independent trajectories, so the rates compare achieved product throughput rather than isolate an engine-only effect.
| Same agent task | Fidelity | Nodes | Agent aggregate decode (tok/s) |
|---|---|---|---|
| JSpark3 v1 | this release | 3 | 44.583 |
mia-tp2-historical-0e2e78f |
site/safety-adapted | 2 | 24.913 |
mia-tp2-current-c190db1a-adapted |
compatibility-adapted | 2 | 24.728 |
fly-derived-9093765c-adapted |
minimal-correctness/safety-adapted | 3 | 29.042 |
On this task, JSpark3 delivered 1.8x the aggregate decode throughput of the current adapted two-Spark run, 44.583 versus 24.728 tok/s. The agents followed independent trajectories.
No literal FlyCockpit run and no jetnet run exists here; jetnet was studied statically and never run on this fleet.
What the overlay changed, internally
Separately from the comparison above, the project ran a matched A/B against the matched three-Spark control (same recipe, overlay disabled), an unreleased internal development build. That control is not a product, was never published, and is not a market comparison. It is the only comparison in this release where hardware, topology, checkpoint, draft, image, serving envelope, workload, estimator, and safety contract are all matched.
Hardware: three DGX Sparks (GB10, SM 12.1), two RoCE-v2 legs per node at MTU
9000. Server warm. Single-stream decode on a frozen 24-request plan (4
warm-up, 20 scored), thinking disabled, temperature 0, top-p 1, fixed seed,
400 max tokens; per-request rate is (completion tokens minus one) over the
interval between the first and last visible streamed token, and the phase
value is the median. All numbers are in RESULTS.json with their estimators.
| Phase | Earlier control battery | JSpark3 v1 (median of 3) | Delta | Same-day paired control | JSpark3 v1 r3 | Paired delta |
|---|---|---|---|---|---|---|
| Code | 63.861 | 66.257 | +3.75% | 61.768 | 66.257 | +7.27% |
| Structured count | 77.510 | 81.962 | +5.74% | 76.863 | 81.962 | +6.63% |
| Prose | 28.308 | 29.049 | +2.62% | 26.810 | 29.049 | +8.35% |
| C3 per-stream median | 67.591 | 69.634 | +3.02% | 65.208 | 51.382 | -21.20% |
| C6 per-stream median | 37.460 | 54.694 | +46.01% | 53.149 | 54.694 | +2.91% |
The C6 gain against the older control battery mostly reflects that battery's state; the paired +2.91% is the credible figure. C3 was variable and lost its strict pairing.
Token pacing in the paired battery: median inter-token interval 98.645 to 91.912 ms (-6.83%), p99 120.472 to 108.105 ms (-10.27%), worst interval 364.416 to 148.344 ms (-59.29%).
Matched concurrency waves (aggregate service throughput, one wave each, 84 requests, thinking disabled): C12 155.733 to 155.986 tok/s (+0.16%), C24 206.235 to 208.723 (+1.21%), C48 229.966 to 237.946 (+3.47%). DFlash2 acceptance 64.323%, 65.935%, 64.562%. Fairness did not improve; C48 time to first token at p90 was 96.722 s.
Matched 113,908-token prefill proxy: 1277.443 to 1234.246 tok/s (-3.38%); time to first token 89.169 to 92.290 s (+3.50%). A measured regression.
Internal promotion gates the measured build missed, kept as disclosed evidence: campaign code median 66.257 tok/s against a 67.0 floor (short by 0.743 tok/s, 1.11%), and a longest uncompensated interior slow run of 14 against a limit below 5 in the agent demonstration. Neither is a correctness or stability failure.
Evidence grade for everything measured here: ENGINEERING-EVIDENCE, produced
by the project on its own fleet; no third-party reproduction yet.
Intended use
Serving GLM-5.3 Flash on a three-DGX-Spark fleet you operate, for research, evaluation, and internal use consistent with the upstream licenses. JSpark3 is a serving recipe, not a model and not a fine-tune; the weights here are a mirror of someone else's quantization.
Limitations
Exactly three DGX Sparks; every input pinned; prefill slower than the matched
control; three-stream waves variable; long time to first token at 48 streams;
single-fleet evidence with small sample sizes; the sparkDash comparison uses
the same author protocol but separate fleets and dates; the agent comparison
uses independent trajectories; no literal FlyCockpit or jetnet reproduction
and no jetnet run at all; no public accuracy benchmark for this release; no
authentication on the endpoint. The full list is in the GitHub repository's
docs/LIMITATIONS.md.
Licenses
The weights in this repository are licensed under the ShapleyMcg License
v1.0, reproduced in full as LICENSE. It is a source-available,
attribution-required license; it is not OSI-approved open source, and the
license text says so itself. Downstream copies of the Work stay under it, and
the license contains a named exclusion, reproduced as written in the license
file. Attribution is a condition of the grant, not a courtesy.
The base model zai-org/GLM-5.3-Flash is MIT, Copyright (c) 2026 Z.AI Co.,
Ltd.; keep that notice with any copy of the base work. Third-party notices
carried by the upstream repository are in
THIRD_PARTY_NOTICES.md and
THIRD_PARTY_LICENSES/.
JSpark3's own recipe code, tooling, and prose are Apache-2.0, in
jspark3/RECIPE-LICENSE with its notices in
jspark3/THIRD_PARTY_NOTICES.md. That
license covers none of the weights. The DFlash2 draft is CC BY-NC-ND 4.0 for
research and evaluation use; commercial use requires separate permission from
Inco AI. The assembled endpoint is therefore neither unrestricted open source
nor commercial-ready.
Attribution
This work includes or was produced using ShapleyMcg, created by Brandon M. Music (https://github.com/brandonmmusic-max/shapleymcg). ShapleyMcg is licensed under the ShapleyMcg License v1.0, an attribution-required license that grants no rights to the person known as "0xSero." Use of ShapleyMcg without this attribution is unlicensed.
DFlash2 is non-commercial research and evaluation use only absent separate permission from Inco AI. Apache-2.0 covers only this package's own code and prose.
@misc{music2026shapleymcg,
author = {Music, Brandon M.},
title = {ShapleyMCG: An Auditable Calibration-to-Encoding Pipeline for
Low-Bit Mixture-of-Experts Models},
year = {2026},
url = {https://github.com/brandonmmusic-max/shapleymcg},
note = {Licensed under the ShapleyMcg License v1.0}
}
Citation
@software{jspark3v1_2026,
author = {{JSpark3 authors}},
title = {JSpark3 v1: a reproducible three-DGX-Spark serving recipe for GLM-5.3 Flash},
version = {1.0.0},
year = {2026},
url = {https://github.com/jakejharris/jspark3}
}
Cite the upstream works alongside it: Z.AI (GLM-5.3 Flash), Brandon M. Music (ShapleyMcg), Inco AI (DFlash2), z-lab (DFlash), MiaAI-Lab, FlyCockpit, vcruz305, vLLM, and ExLlamaV3.
- Downloads last month
- -
Model tree for jakejharris/jspark3
Base model
zai-org/GLM-5.3-Flash