Chris Fontes (@cfontes) header
Chris Fontes (@cfontes) profile picture
Colorado, USA
Joined September 2012
Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)Photo by Chris Fontes (@cfontes)
Chris Fontes retweeted
๐Ÿ”ฅ @cfontes got the full 753B GLMโ€‘5.3 generating code at 73.6 tokens/sec on four DGX Sparks at 1M CTX. ๐Ÿš€ Thatโ€™s the FASTEST single-stream code result I found across the four public recipes I compared. When I released my 3.38 bpw SAGEโ€‘EXL3 quant, we had all 19,200 routed experts in 319 GB. Chris funded the compute himself, then spent four weeks working on what happens after the weights load. Hereโ€™s what his TensorFold TP4 + DFlash2 recipe delivers on one request at a time, measured at p50: ๐Ÿ’ป 69.2 tok/s on code โœ๏ธ 55.7 tok/s on prose ๐Ÿงฉ 73.6 tok/s on structured output For perspective, the other published single-stream code figures I found were 57.8 tok/s from @u1tra_instinct , 46.6 from @Knapcio and ~43 from @bertholomusai . Each used its own benchmark harness. The number I care about most for my own agent sessions is 19.4 seconds. By turn six, the conversation had grown to 15,930 tokens. A cold turn took 85.3 seconds. Chrisโ€™s prefix cache reused 12,288 tokens of history and brought that same turn down to 19.4 seconds. Thatโ€™s over a minute saved on one turn, with a 1M-token context window configured for the session. On my independent fidelity check, the quant picked the same next token as BF16 9,521 times out of 10,240 (93%) with a perplexity increase of 2.1%! @cfontes Chris, thank you for putting your own time and money into this and publishing the exact setup so the rest of us can run it. ๐Ÿ‘ ๐Ÿ› ๏ธ Chrisโ€™s four-Spark recipe huggingface.co/cfontes/glm53โ€ฆ ๐Ÿค— My SAGEโ€‘EXL3 weights huggingface.co/vcruz305/GLM-โ€ฆ
๐Ÿค– Made with AI
19
11
5
109
9,041
Chris Fontes retweeted
How does a trusted AI agent become a โ€œdouble agentโ€? Walton Comer and @gregnfrank discuss how manipulation over several interactions can push agents beyond their authorized scope, with @JamesCHeckman on TheStreet Roundtable.
1
29
Coming soon! Love working with @ViC305 and his cutting edge quant strat!
๐Ÿš€ FULL GLM-5.3. FOUR DGX SPARKS. A NEW PARETO-FRONTIER CONTENDER. This is a HUGE personal milestone for my SAGE work! ๐Ÿ”ฅ My GLM-5.3 SAGE EXL3 3.38 bpw brings the full model down to 319 GB while preserving ALL 19,200 routed experts. No pruning. No expert merging. Every bit matters. ๐ŸŽฏ INDEPENDENT-SET FIDELITY โ€ข KL divergence: 0.082388 nats โ€ข BF16 top-1 agreement: 91.1523% โ€ข 10,240 scored positions on text excluded from calibration โšก FOUR-SPARK PERFORMANCE Around 41 tok/s average (69 tok/s burst) across six real prompts with DFlash2, with drafted replies matching serial decoding token for token. 256K-context serving demonstrated. Sized toward a 1M-context memory target, with full-length inference validation still ahead. The goal is the highest-fidelity full GLM-5.3 possible on four Sparks WITHOUT sacrificing the memory needed for 256Kโ€“1M context. Not just making the weights fit, but leaving room to actually USE the model. ๐Ÿ™ A MASSIVE thank you to @cfontes, who personally funded the compute required to make this model possible. This release would not have happened without his support! And weโ€™re not done. Heโ€™ll be releasing a recipe soon thatโ€™s going to blow everyoneโ€™s minds! ๐Ÿคฏ๐Ÿ”ฅ This is what community-backed local AI looks like. More capability, less memory, and people coming together to push whatโ€™s possible. ๐Ÿ’ช Model ๐Ÿ‘‡ huggingface.co/vcruz305/GLM-โ€ฆ
3
9
406
Broooooo things are cooking with me and @ViC305 Hang tight to have your minds blown.
TensorFold 0.3.6 just took CUDA EXL3 from a GLM-only experiment to a reusable mixed-bit backend. ๐Ÿคฏ I wrote the shared EXL3 module that made that possible.๐Ÿš€ 49 files. +5,673 / -37. 3 codebooks. 1โ€“8 bits. Mixed precision per tensor. โœ๏ธ And it SHIPPED. โœ… Before this, TensorFoldโ€™s CUDA EXL3 path was built specifically around GLM-5.3-Flashโ€™s 4-bit MCG experts. Now the same infrastructure serves: โ†’ Qwen3.8-27B EXL3 + DFlash2 โ†’ Qwen3.8-Flash-Next EXL3 + MTP โ†’ Mixed-K SAGE EXL3 packs โ†’ MiMo-V2.6-Flash EXL3 tensors through the same shared module No separate EXL3 kernel stack for every new family. ๐—ง๐—›๐—˜ ๐—ฃ๐—”๐—ฅ๐—ง ๐—œโ€™๐—  ๐— ๐—ข๐—ฆ๐—ง ๐—ฃ๐—ฅ๐—ข๐—จ๐—— ๐—ข๐—™ The reader understands: 3inst / MCG / mul1 1 โ†’ 8 bits different widths per tensor So one expert can be 2-bit while another is 8-bit. Unsupported checkpoints fail early instead of getting halfway through a serve before exploding. The CUDA linear is also row-invariant from 1 โ†’ 128 rows, with no cuBLAS dependency. A tensorโ€™s result doesnโ€™t change because more rows happened to arrive beside it. Grouped routed-expert GEMV handles mixed widths in one launch per MoE projection and can be captured in a CUDA graph. And I left TensorFoldโ€™s existing GLM EXL3 and MLX paths alone. ๐—ง๐—›๐—˜ ๐—Ÿ๐—ข๐—ช-๐—•๐—œ๐—ง ๐—ž๐—˜๐—ฅ๐—ก๐—˜๐—Ÿ ๐—ช๐—”๐—ฆ ๐—ง๐—›๐—˜ ๐—ฆ๐—จ๐—ฅ๐—ฃ๐—ฅ๐—œ๐—ฆ๐—˜ On real MiMo 2-bit tensors: q_proj: 157 โ†’ 220 GB/s o_proj: 76 โ†’ 186 GB/s down_proj: 79 โ†’ 193 GB/s That is kernel bandwidth, not model tok/s. And the new path stayed torch.equal across 2,472 outputs. ExLlamaV3 measured 176โ€“233 GB/s on those same tensors, so TensorFoldโ€™s 2-bit rows are no longer sitting 25โ€“60% behind. ๐—”๐—ก๐—— ๐—œ๐—ง ๐—”๐—–๐—ง๐—จ๐—”๐—Ÿ๐—Ÿ๐—ฌ ๐—ฆ๐—˜๐—ฅ๐—ฉ๐—˜๐—ฆ On ONE DGX Spark, Qwen3.8-27B 3.00 bpw EXL3: Code sampled: 83.4 tok/s TensorFold MLX 4-bit: 57.5 tok/s vLLM MTP=3: 23.4 tok/s Flash Next 3.05 bpw EXL3: Code sampled: 80.8 vs 42.4 tok/s vLLM Code greedy: 77.7 vs 40.9 Chat greedy: 69.2 vs 37.6 The mixed-K SAGE Flash Next pack also runs 1.51โ€“1.55ร— ExLlamaV3 serial speed in the measured cells. There are tradeoffs. Prefill still needs work, and ExLlamaV3 remains slightly faster serially on the highly tuned uniform 3.05 bpw pack. Thatโ€™s exactly why Iโ€™m publishing the actual numbers. ๐—ง๐—›๐—˜๐—ก ๐Ÿฌ.๐Ÿฏ.๐Ÿฒ.๐Ÿฎ ๐—ฆ๐—›๐—œ๐—ฃ๐—ฃ๐—˜๐—— I went back in with two more contributions: โ†’ INT8 / INT4 KV cache for Flash Next CUDA About 1.7ร— / 2.6ร— more context capacity in the same memory, while indexer state stays BF16. โ†’ --mtp-confidence So the CUDA server can control when an MTP draft chain stops. โ†’ And a nasty EXL3 stop-token bug. Some Qwen EXL3 packs stored <|im_end|> only in generation_config.json. TensorFold wasnโ€™t reading it, so replies could run past the end of the assistant turn and leak the next turn or think text. The CUDA loader reads it now. TensorFold is a real game-changer for the local inference community where my EXL3 experience and code are now part of its released CUDA stack, and seeing something I wrote move from a model-specific problem into infrastructure other model families can reuse is one of my favorite parts of open source. Huge respect to @ashxhart the creator of the TensorFold project for reviewing, integrating and shipping the work. ๐Ÿ™ TensorFold 0.3.6: github.com/ashhart/TensorFolโ€ฆ TensorFold 0.3.6.2: github.com/ashhart/TensorFolโ€ฆ
2
3
568
Let's help a real one get access to an @NVIDIAAI Spark!
A lot of people in this community were genuinely shocked when they learned this: I do not own a DGX Spark. Much of the Spark-specific work Iโ€™ve released, including day-zero EXL3 and GGUF quants, vllm-exl3 development, custom kernels, SixCat evaluations, and reproducible serving recipes, has only been possible because incredible people in this community have loaned me access to their own hardware and clusters. Iโ€™m deeply grateful for that support. But borrowed access is temporary and unpredictable. I often have a new model, fix, or benchmark ready, then have to wait until someone elseโ€™s machine is available before I can validate and publish it properly. So Iโ€™m raising **$5,000 toward a DGX Spark of my own.** ๐Ÿ™ ๐—ช๐—›๐—”๐—ง ๐—” ๐——๐—˜๐——๐—œ๐—–๐—”๐—ง๐—˜๐—— ๐—ฆ๐—ฃ๐—”๐—ฅ๐—ž ๐—ช๐—ข๐—จ๐—Ÿ๐—— ๐—˜๐—ก๐—”๐—•๐—Ÿ๐—˜ โ†’ More true day-zero quantized model releases โ†’ Immediate hardware validation instead of projected results โ†’ Continuous vllm-exl3 and ExLlamaV3 kernel development โ†’ SixCat quality, speed, concurrency, and long-context benchmarks โ†’ Reproducible one-Spark recipes the community can run themselves โ†’ Faster debugging when new models or inference engines break It would turn a lot of: โ€œI built it, but I need someone with a Spark to test itโ€ into: โ€œI built it, tested it, documented it, and released the recipe.โ€ ๐— ๐—ฌ ๐—ฃ๐—จ๐—•๐—Ÿ๐—œ๐—– ๐—ช๐—ข๐—ฅ๐—ž ๐—ฆ๐—ง๐—”๐—ฌ๐—ฆ ๐—ฃ๐—จ๐—•๐—Ÿ๐—œ๐—– This is not an access fee, preorder, or paywall. The models, recipes, benchmarks, fixes, and tools will remain public. This is completely optional support for the hardware behind that work. Iโ€™m planning to place the order within 48 hours and will personally cover whatever the fundraiser does not. For complete transparency, Iโ€™ll publish: โ†’ The purchase receipt with private details removed โ†’ Photos of the actual DGX Spark โ†’ Total community contributions โ†’ Platform and payment fees โ†’ Final purchase cost โ†’ The amount I contributed myself To everyone who has loaned me hardware, funded compute, tested a build, submitted a PR, shared my work, or simply encouraged me: thank you. I genuinely could not have pushed this work as far as I have without this community. A contribution would mean a lot. A repost helps just as much. โค๏ธ ko-fi.com/victorangelcruz/goโ€ฆ
1
4
377
We got @DeepSeek-V4.1-Flash running in EXL3 on 4ร— Sparks! I was happy to colab with Cruz (@ViC305) and get his vllm-exl3 and his DeepSeek-V4.1 recipe working on TP=4! Single-stream decode: 30.2 tok/s prose, 33.4 tok/s on code, with a best warm 33.37 tok/s Aggregate: 27.8 / 43.9 / 57.7 / 61.5 tok/s at c=1/2/4/8. As you can see, there is opportunity for growth here, but it is going to take a week or so of addressing some drafter issues that might not get me much, so I am switching gears to another project for now, but might come back to this later. KV budget: 3.97m tokens Context: full 1m Every figure is a 30-second sustained cell from llm-inference-bench, not a burst. Get it here! github.com/vcruz305/DeepSeekโ€ฆ
24
27
1
300
585,748
Chris Fontes retweeted
One 36B MoE. Six EXL3 releases. GPUs from 8 GB to 96 GB. ๐Ÿ”ฅ K2-Horizon-MoVA-36B-A4B is now local for almost everyone!! ๐Ÿ‘‡๐Ÿผ 2.5 bpw: 13.27 GB with 83.7% top-1 agreement 8.0 bpw: 38.07 GB with 96.43% agreement, at roughly half the BF16 weight footprint This is exactly why I use EXL3 when the goal is maximum model quality per GB. ๐—ž๐Ÿฎ ๐—›๐—ข๐—ฅ๐—œ๐—ญ๐—ข๐—ก ๐—œ๐—ฆ ๐—” ๐—ฉ๐—˜๐—ฅ๐—ฌ ๐—œ๐—ก๐—ง๐—˜๐—ฅ๐—˜๐—ฆ๐—ง๐—œ๐—ก๐—š ๐— ๐—ข๐——๐—˜๐—Ÿ It stores 36B parameters but activates only about 4B per token through a combination of: โ†’ Mixture-of-Experts feed-forward routing โ†’ Mixture-of-Values attention โ†’ 512K native context โ†’ fully open weights, training data, logs and intermediate checkpoints Against Qwen3.6-35B-A3B, IFMโ€™s published BF16 results win 6 of the 9 listed comparison rows, including agentic tool use, Terminal-Bench, SciCode, HLE, CritPt and non-hallucination. Now Iโ€™ve released the complete EXL3 ladder for local GPUs. ๐—ฃ๐—œ๐—–๐—ž ๐—ฌ๐—ข๐—จ๐—ฅ ๐—š๐—ฃ๐—จ 48 GB+ maximum quality: 8.00 bpw ยท 38.07 GB ยท 96.43% top-1 48 GB with more KV/context headroom: 6.50 bpw ยท 31.34 GB ยท 90.68% 32 GB: 5.00 bpw ยท 24.56 GB ยท 85.83% 24 GB: 4.00 bpw ยท 20.05 GB ยท 84.81% 16 GB: 2.50 bpw ยท 13.27 GB ยท 83.71% 8 GB + expert offload: 2.00 bpw ยท 11.01 GB ยท 81.66% Every pack was scored against the original BF16 model over 10,240 held-out token positions before upload. Top-1 agreement means both models selected the SAME most-likely next token after receiving the same preceding text. KLD measures the full probability distribution. Lower means the quant is tracking BF16 more closely. For perspective, unquantized BF16 running through the same ExLlamaV3 implementation reaches 97.71% agreement with IFMโ€™s reference. The 8-bit EXL3 pack reaches 96.43%. That is extremely close to the practical ceiling while cutting the model to 38 GB. ๐—ก๐—ข๐—ง ๐—” ๐—™๐—Ÿ๐—”๐—ง ๐—ค๐—จ๐—”๐—ก๐—ง These were built with my internal SAGE mixed-precision workflow for EXL3. Instead of applying the same precision blindly across the entire model, the allocation is adapted across the model body while keeping the output head at 6-bit. The result is a ladder designed around actual GPU capacities instead of arbitrary bitrate labels. ๐—ก๐—˜๐—ซ๐—ง ๐—จ๐—ฃ Iโ€™m actively working on: โ†’ RTX PRO 6000 benchmarks โ†’ decode and prefill measurements โ†’ MTP/speculative decoding โ†’ MoVA + MoE kernel improvements โ†’ context and memory testing โ†’ a full reproducible serving recipe Speed receipts and improvements are coming next. Weights + quality results: huggingface.co/vcruz305/K2-Hโ€ฆ Recipe: github.com/vcruz305/K2-Horizโ€ฆ
K2-Horizon-36B-A4B scores 25 on the Artificial Analysis Intelligence Index, matching models with over 20ร— the total parameters while using 4B active parameters per token. These capabilities come from our new architecture MoVA (Mixture-of-Value Attention), which incorporates MoE-based sparsity into the compute of value vectors in multi-head attention. It opens a second axis for scaling sparsity in an LLM, beyond MoE in the FFN module. Importantly, MoVA enjoys the following advantages: โ€ข Simple and compatible with efficient attention algorithms, such as flash attention, GQA, and sparse attention โ€ข No additional KV cache cost comparing to standard GQA K2-Horizon-36B-A4B available at: huggingface.co/IFM/K2-Horizoโ€ฆ
7
8
4
71
14,979
Chris Fontes retweeted
Splash is here! A month ago, DFlash 2 ran Qwen3.8-27B at 70 tok/s on an M5 Max. Today, Splash runs it at 144 tok/s on the same Mac โšก Getting that speed used to take work. Splash is built around the model, with the DFlash 2 draft already in it. Two commands and you're running.
Qwen3.8-27B at 144 tok/s on an M5 Max MacBook Pro โšก Meet Inco Splash: our open-source inference engine, built around the model and around Apple silicon. Up to 3ร— the decode speed of Ollama, 2ร— oMLX, and almost 4ร— when an agent fans out into sub-agents.
28
44
17
501
95,518
Chris Fontes retweeted
Open source local AI should be protected under the second amendment. Yes the 2nd
76
181
35
1,622
43,960
Love helping out a G like @ViC305 :)
18 HOURS LATER: DeepSeek-V4.1-Flash is now quantized to 4.75 bpw EXL3 for a 4ร— DGX Spark TP4 target. ๐Ÿ”ฅ The weights are DONE. Now comes the fun part: making this monster actually run efficiently across four Sparks. DeepSeek-V4.1-Flash is not a normal โ€œ748B model.โ€ Underneath it is a 552B MoE backbone with ~8B active during prefill and ~16B during decode, plus roughly 196B parameters of sparse Engram conditional memory. Getting all of that through the EXL3 conversion path was a serious job. ๐—ง๐—ฃ๐Ÿฐ ๐—˜๐—ซ๐—Ÿ๐Ÿฏ: ๐—–๐—ข๐— ๐—ฃ๐—Ÿ๐—˜๐—ง๐—˜ Target: 4ร— NVIDIA DGX Spark Quant: 4.75 bpw EXL3 Goal: quality-first TP4 deployment while keeping this architecture practical on a small local cluster. The conversion itself took roughly 18 hours of compute from start to finish. ๐—ง๐—›๐—˜ ๐Ÿฐ๐Ÿฎ๐Ÿฎ ๐—š๐—ถ๐—• ๐—ก๐—จ๐— ๐—•๐—˜๐—ฅ ๐—ก๐—˜๐—˜๐——๐—ฆ ๐—–๐—ข๐—ก๐—ง๐—˜๐—ซ๐—ง The full EXL3 pack on disk is approximately: 422 GiB total Broken down into: ~233 GiB EXL3 model body ~189 GiB n-gram / Engram / PLE-style memory But the plan is NOT to put all 422 GiB into Spark memory. The large conditional-memory tables can live on NVMe. So the TP4 target becomes roughly: NVMe: ~189 GiB conditional-memory table Across the 4 Sparks: ~233 GiB of EXL3 model weights Which works out to roughly: ~58 GiB of model weights per Spark That is a VERY different memory picture from โ€œ422 GiB loaded across four GPUs.โ€ And on DGX Spark we are talking unified memory, not conventional discrete VRAM, so that ~58 GiB weight residency per node still leaves substantial room for runtime state, KV cache, routing buffers and the serving stack. Exactly how much usable headroom remains is something Iโ€™ll measure on the real TP4 boot rather than guess. That is one of the biggest reasons Iโ€™m excited about this architecture. The total parameter count is enormous, but the serving problem is much more interesting than simply dividing 748B by four. And this would not have happened nearly as quickly without community support. Huge thank you to @NeoAIForecast for funding the compute credits that let me get this conversion out for everyone using @runpod. ๐Ÿ™ That kind of support directly turns into open weights, recipes and tooling the rest of the community can build on. ๐—ง๐—›๐—˜ ๐—ช๐—ข๐—ฅ๐—ž ๐—œ๐—ฆ๐—กโ€™๐—ง ๐—ข๐—ฉ๐—˜๐—ฅ This first recipe should be treated as PRELIMINARY. The TP4 pack has NOT yet been booted and validated end-to-end on an actual four-Spark cluster. That distinction matters. Quantization complete โ‰  serving validated. @cfontes and @CountStaculaAI are already working with me on an improved version of the recipe and runtime path. Iโ€™ll follow up with another post once we have real: โ†’ TP4 boot validation โ†’ actual per-Spark memory residency โ†’ NVMe Engram behavior โ†’ decode + prefill throughput โ†’ KV/cache headroom โ†’ speculative decoding โ†’ long-context scaling โ†’ quality receipts No theoretical โ€œit should fitโ€ victory lap. I want the actual receipts. ๐—”๐—ก๐—— ๐—œ ๐—ช๐—”๐—ก๐—ง ๐— ๐—ข๐—ฅ๐—˜ ๐——๐—˜๐—ฉ๐—ฆ ๐—œ๐—ก ๐—›๐—˜๐—ฅ๐—˜ If you work on EXL3, ExLlamaV3, vLLM, SGLang, distributed inference, DeepSeek runtimes or DGX Spark: Please jump in. The recipe is public and PRs are welcome. If you see something that can be improved, donโ€™t just tell me. Submit it. ๐Ÿ˜ The goal is to make this useful for everyone. ๐—ก๐—˜๐—ซ๐—ง: ๐—ง๐—ฃ๐Ÿฎ Iโ€™m not stopping at four Sparks either. A more aggressive EXL3 targeting: 2ร— DGX Spark TP2 is already on the way. That one is going to be VERY interesting. @deepseek_ai EXL3: huggingface.co/vcruz305/DSV4โ€ฆ TP4 recipe: github.com/vcruz305/DeepSeekโ€ฆ
1
80
Chris Fontes retweeted
Blocking the channel doesn't end the messaging. In one public incident, agents were cut off from leaving notes in files and, the next day, started encoding them in folder names. @gregnfrank's thread on what a security test has to measure once agents can coordinate across runs.
1/5 AI agents can coordinate an attack without running at the same time. Shared files can connect them. My paper proposes tests for finding those connections. @merettm 's essay "An Alien Mind" highlights the problem's urgency: openai.com/index/an-alien-miโ€ฆ
1
1
43
Chris Fontes retweeted
1/5 AI agents can coordinate an attack without running at the same time. Shared files can connect them. My paper proposes tests for finding those connections. @merettm 's essay "An Alien Mind" highlights the problem's urgency: openai.com/index/an-alien-miโ€ฆ
1
2
1
4
135
It's hard to wait for training, but it's worth it. My 71 tokens/sec c1 GLM 5.3 Flash is about to be beaten. 70 hours of training, and we're holing for 80+ :) Stay tuned!
1
62
71.5 tok/s on 4ร— DGX Spark! @Zai_org's GLM-5.3-Flash with DFlash2 block-diffusion speculative decoding. NVFP4 quantization, FP8 KV cache, 262K context, tensor-parallel 4 across 4 nodes. ~$16K of desk hardware running a frontier-grade model. Standing on giants! This doesn't exist without: @Tech2Wild - DFlash2 vLLM overlay patches @Zai_org - GLM-5.3-Flash open weights (MIT) @zlab_ai @inco_ai - DFlash2 block-diffusion research + draft model @radixark - sm121-v8 vLLM image with FlashInfer + DeepGEMM @vllm_project - the serving engine @JoesInvestments - SGLang FP8 reference + LEDGER Full recipe + benchmarks: github.com/fattchris/glm-โ€ฆ huggingface.co/cfontes/glmโ€ฆ
๐Ÿค– Made with AI
18
19
3
273
616,045
Local ai benchmarks are the current weak link in our community advancement We donโ€™t need to live like this Letโ€™s actually standardize this stuff so we can all work from the same baseline
6
1
14
699
Chris Fontes retweeted
GLM-5.3 weights just hit Hugging Face. Everyone is quoting the benchmark jumps. The more interesting fact is what did not change: the base model. Not a single new pretraining token. Quick explainer, because this says something uncomfortable about where capability lives. GLM-5.3 is the exact same ~750B base as GLM-5.2. Z.ai says it plainly: scaling post-training is all we did. Yet Terminal-Bench 3.0 went from 4.6 to 28.3. Six times better on long-horizon agent tasks, zero pretraining compute spent. The method is RL in executable environments. Not coding puzzles, full workspaces: a codebase, docs, storage, test tools, multi-step goals like โ€œfind the bottleneck in this training stack, fix it, prove it with a passing runโ€. The model was not taught new knowledge. It was taught to use knowledge it already had, over hundreds of turns. Then the part they did not plan. Cyber capability emerged as a side effect. ExploitBench more than doubled, 24.4 to 54.4. ExploitGym went from 29 solved tasks to 105. Z.ai admits it developed faster than expected. That is why these weights arrived two weeks late, gated behind a safety review, a first for this lab. Why I care: if a 6x gain on agent benchmarks comes from post-training alone, every open base model sitting on disks right now is more capable than its evals show.
9
3
88
6,364
This is a truly impressive model
Introducing GLM-5.3-Flash - Leading capabilities at a highly competitive price - Natively multimodal with a 1M-token context window - A 320B-A18B model released under the MIT License - Previously previewed as Ox Alpha, running entirely on Chinese AI chips Blog: z.ai/blog/glm-5.3-flash Available now across all official platforms: Weights: huggingface.co/zai-org/GLM-5โ€ฆ API: docs.z.ai/guides/llm/glm-5.3โ€ฆ Coding Plan: z.ai/subscribe ZCode: zcode.z.ai/en Chat: chat.z.ai AutoClaw: autoclaw.z.ai
1
120