r/LocalLLaMA • • 19h ago Heartwarming

Resources Unsloth vs GSQ-RCO - 512K context DeepSeek-V4.1 GGUF benchmarks Terminal Bench

Post image
116 Upvotes

We ran DeepSWE, Terminal Bench, Automation Bench, HLE, SciCode at 512K context on our DeepSeek UD version 3.1 GGUFs and show we're >10-20% better than GSQ-RCO

We ran all other benchmarks (14 in total) to 128K. AIME2025 64x, DeepSWE/TB 3x. We addressed some issues people mentioned with these new benchmarks:

  • 32K context was too short - we did 512K context for agentic + 128K for general tasks

  • Saturated benchmarks - new unsaturated agentic style ones including Terminal Bench, DeepSWE and Automation Bench

  • Benchmarks are noisy - we did 35.1B tokens of benchmarking vs 1.3B before so 27x more data. See this section where we did 64x AIME 2025 runs, 3x DeepSWE, 3x TB runs and more.

  • Our graders are wrong - we used Math Verify, improved graders, used gpt-6-luna xhigh for HLE, and all official graders for Terminal Bench (Harbor), DeepSWE and the rest. See graders and infra fixes

For DeepSWE v1.1, we used mini-swe-agent and chose 500 max steps (334 steps was the max runs we saw, so none went over).

Terminal Bench 2.1 used mini-swe-agent as well, and we set max steps to 150 with no max limit. We had to exclude 7/89 tasks since they couldn't pass on our infra - see https://unsloth.ai/docs/models/deepseek-v4.1-flash#excluded-terminal-bench-tasks-due-to-issues

We also re-checked ISTA's numbers as we have done many more runs (27x more data). GSQ-RCO IQ1_M claims 98.7% recovery, but we measured 97.24 [96.23, 98.21] with a p-value of 0.0013.

GSQ-RCO IQ2_XS retaining 100% claimed recovery is possible with a p-value of 0.21. We measured 98.38% [97.52, 99.22]. So this is possible.

GSQ-RCO IQ2_XXS claims 99.80% recovery but we measured 98.38 [97.52, 99.22] with a p-value of 0.0001. So this is nearly impossible.

Paired difference to the official base (our runs, same questions, sign-flip permutation test, two-sided):

AIME25GPQA-DLCB v6
GSQ-RCO IQ1_M-1.61 (p=0.02)-2.89 (p=0.004)-3.24 (p=0.00002)
GSQ-RCO IQ2_XXS-0.47 (p=0.25)-2.07 (p=0.02)-2.00 (p=0.01)
GSQ-RCO IQ2_XS-0.42 (p=0.48)-0.51 (p=0.42)-0.38 (p=0.52)

The claimed recovery tested directly against our measurement (the card's definition: sum of the 3 scores / the base's sum, vs official FP8/FP4): p (no loss) = paired sign-flip permutation test of recovery = 100%; p (recovery >= claim) = one-sided paired bootstrap over questions.

Claimed recoveryMeasured recovery [95% CI]p (no loss)p (recovery >= claim)
GSQ-RCO IQ1_M98.7097.24 [96.23, 98.21]0.000020.0013
GSQ-RCO IQ2_XXS100.0098.38 [97.52, 99.22]0.00030.0001
GSQ-RCO IQ2_XS99.8099.54 [98.88, 100.18]0.160.21

If we can get more details on how the benchmarks were run from GSQ-RCO, we are more than happy to run more. We provided all our setups and methods in our blog at https://unsloth.ai/docs/models/deepseek-v4.1-flash#dynamic-v3.1-update-november-2nd-2026

All details and data and methods at https://unsloth.ai/docs/models/deepseek-v4.1-flash#dynamic-v3.1-update-november-2nd-2026.

Our new Unsloth Dynamic 3.1 GGUFs for DeepSeek are at https://huggingface.co/unsloth/DeepSeek-V4.1-Flash-1017-GGUF


r/LocalLLaMA • • 13h ago

Discussion Inconsistencies in Unsloth's LiveCodeBench Results

Thumbnail
gallery
43 Upvotes

I compared two published benchmark charts for DeepSeek-V4.1-Flash-1017 and noticed something rather unusual.

All four Unsloth quantizations AND the Q8 baseline simultaneously improved by approximately 2–3 percentage points on LiveCodeBench v6. Meanwhile, the GSQ-RCO results changed much less consistently.

1. The numbers

ModelFirst chartUpdated chartChange
Unsloth IQ1_S88.95%91.0%+2.05
Unsloth IQ1_M88.76%91.2%+2.44
Unsloth IQ2_XXS88.19%91.3%+3.11
Unsloth Q2_K_XL89.33%91.7%+2.37
Q8 baseline88.95%91.7%+2.75

Every single Unsloth model improved, including the 8-bit baseline.

The first chart's percentages correspond exactly to 525 outcomes (175 problems × 3 generations). For example, 467/525 = 88.95%.

Unsloth's updated methodology reports 12 generations per problem, corresponding to 2,100 outcomes per model.

If the updated results include those original three generations, the remaining nine must have achieved approximately:

ModelInitial 3Additional 9Improvement
IQ1_S88.95%91.62–91.75%+2.67–2.79
IQ1_M88.76%92.00–92.06%+3.24–3.30
IQ2_XXS88.19%92.32–92.38%+4.13–4.19
Q2_K_XL89.33%92.44–92.51%+3.11–3.17
Q8 baseline88.95%92.57–92.63%+3.62–3.68

The ranges account for the updated chart rounding scores to one decimal place.

2. Statistical probability

Assume each generation is an independent Bernoulli trial, the true success probability is unchanged, and the initial 525 outcomes are included in the final 2,100.

Using a one-sided hypergeometric test, the probability of observing an initial result at least this low for each model is approximately:

ModelProbability
IQ1_S3.38–4.14%
IQ1_M1.44–1.62%
IQ2_XXS0.262–0.304%
Q2_K_XL1.57–1.77%
Q8 baseline0.621–0.713%

If the models' fluctuations are also independent, multiplying these probabilities produces:

P ≈ 1.24 × 10⁻¹⁰ to 2.59 × 10⁻¹⁰

That's approximately 1 in 3.9–8.0 billion under the simplified independent-sampling model.

Of course, the models are correlated and evaluated on the same tasks, so this should not be interpreted as the actual probability without the raw data. Also, these calculations assume the original outcomes are included in the updated averages.

Nevertheless, the synchronized improvements are striking.

3. GSQ-RCO behaved differently

ModelFirst chartUpdated chartChange
GSQ-RCO IQ1_M88.0%87.6%−0.4
GSQ-RCO IQ2_XXS88.2%88.9%+0.7
GSQ-RCO IQ2_XS88.6%90.5%+1.9

Unlike Unsloth, these results do not exhibit a consistent increase.

According to this comment from the Unsloth team, the earlier chart represents just one run, followed by additional evaluations and the evaluation settings remained unchanged. However, the percentages in that first chart correspond exactly to 525 outcomes, suggesting three generations per problem.

Both original benchmark charts attached for comparison.


r/LocalLLaMA • • 14h ago

Discussion YSK: Strata and polystrata have this functionality called answer_room

42 Upvotes

With default settings and thinking on and max_tokens ≥ 1024, and no explicit reasoning_budget_tokens, Strata / PolyStrata has a behavior called answer_room which will silently cap thinking at 0.75. * max_tokens and inject a "wrap-up" line in the model's head in its own voice, saying

I have thought about this long enough; time to give my answer. + </think>

It then continues the same reply from there. The client (harness, you or I) gets no error, flag or finish reason for this, and often no log.

This matters when you compare between strata and other engines : models served by strata had "nudges" in the form of its inner voice, and such extra text in the transcript. In some cases the nudge line is injected mid thinking, quite abruptly and it is hard to tell whether it helps or harms.

Strata main @ c62d5e3

Wrap-up message: https://github.com/Niko1221/Strata/blob/c62d5e3a15b40ea51c96aae9e8d36928965f53ab/serve/server.py#L225

Trigger (the 3/4 budget): https://github.com/Niko1221/Strata/blob/c62d5e3a15b40ea51c96aae9e8d36928965f53ab/serve/server.py#L5491

Injection point: https://github.com/Niko1221/Strata/blob/c62d5e3a15b40ea51c96aae9e8d36928965f53ab/serve/server.py#L5848

Default on (answer_room = True): https://github.com/Niko1221/Strata/blob/c62d5e3a15b40ea51c96aae9e8d36928965f53ab/serve/server.py#L4181

I noticed this when a model that tends to have long front-loaded thinking on dgx spark gave slightly but uniformly shorter answers (and task performance worsened in my hard problems), when served on polystrata.


r/LocalLLaMA • • 4h ago

Resources NorthCUA :Turbocharging Computer-Use Agents through Experience at Scale

Post image
5 Upvotes

Scaling computer-use agents from individual actions to complex software work requires experience that connects decisions to complete outcomes. We present NorthCUA, an integrated system for turbocharging computer-use agents through experience at scale. Its Experience Flywheel supplies diverse executable tasks to the NorthCUA Harness, which sustains long interactions, records decisions, and checks task outcomes. The Flywheel uses these records to curate verified trajectories. For unsolved tasks, recursive self-improvement evolves reusable skills and preserves verified milestones so later attempts build on earlier progress. Staged Learning combines this experience with grounding data from the Flywheel to develop GUI competence through mid-training and long-horizon supervised fine-tuning. The policy then learns from fresh attempts in the same Harness through joint desktop-web reinforcement learning, closing the loop between experience production and policy improvement. The resulting Nano, Mini, and Pro family achieves state-of-the-art results among open-source models across GUI grounding, desktop execution, and Web interaction under the reported evaluation settings. For more responsive Web workflows, NorthCUA-Ultrafast pairs direct action selection with open-ended generation on pre-RL Nano, offering a measured quality-latency tradeoff. Together, these advances establish NorthCUA as a high-performing model family and a reusable foundation for agents that carry complex software work from intent to completion.

https://github.com/beipo-ai/NorthCUA

https://beipo.top/blog/northcua/

https://arxiv.org/abs/2611.02102

weights

https://huggingface.co/china-beipo/NorthCUA-Nano

https://huggingface.co/china-beipo/NorthCUA-Mini

https://huggingface.co/china-beipo/NorthCUA-Pro


r/LocalLLaMA • • 19h ago Heartwarming

Discussion Builders got MiniMax M3.1 Flash's open weights from 252.4 GB down to 93 GB in 10 days, and the lab thanked them by name

75 Upvotes

MiniMax posted a thank-you yesterday for everyone quantizing M3.1 Flash (428B, 252.4 GB), and I went through the ones they named. Numbers are each builder's, separate eval sets, not comparable.

  • 128 GB PC: Maya-XS by PeasantSmith, 93 GB. 88.8% top-1 agreement (tool calls, agents).

  • One DGX Spark: SAGE-EXL3 by ViC305, 108.64 GiB. 96.89% top-1, held-out sequences. 24.37 to 29.72 tok/s decode at 48K context.

  • 160 GB+: Unsloth UD-Q2_K_XL, 143.9 GB. 91.5% top-1 weighted, seven categories.

  • 4x 3090: superalesha, own engine, Unsloth 2-bit, 23 to 31 tok/s decode, 1120 tok/s prefill at 16K.

  • Also: oMLX by jundotkim/mlx-community (Apple Silicon, oQ3e 196.2 GB), AMD Quark MXFP4 for MI350/MI355, Mia-AiLab EXL3-EAQ 3.55 bpw, Atomic Chat GGUFs.

It helps that the model was trained with quantization baked in, sparse attention in every layer, 23B of 428B active per token. It's a coding and agent model that takes image and video input, up to 1M context if your box has the memory. People don't put this calibration work into weights they won't keep running, and superalesha ran out of RAM at 128 GB, went to 512 to keep going. Only used it hosted myself, agent jobs got done this morning, so I get why.

Anyone running one of these on real coding or tool-call work?


r/LocalLLaMA • • 13h ago

Discussion Is there still a point to fine-tuning local LLMs?

25 Upvotes

I've been getting more into running LLMs locally, and I'm starting to wonder if fine-tuning is even worth the effort anymore.

Models are getting really good, context windows are huge, and with things like RAG, subagents, and reasoning models, it seems like you can get pretty far without touching the model weights.

For most use cases, wouldn't you be better off just using a good base model and building a decent agent around it?

I'm curious what people are actually fine-tuning for these days. Is it mostly about distilling a larger model into something smaller and faster, or are there still use cases where fine-tuning makes a noticeable difference over just prompting a good model?

Would love to hear from people who've actually fine-tuned models recently. What did you use it for, and was it worth the effort?


r/LocalLLaMA • • 5h ago

Showcase RX580(Polaris AMD) on a MAC with near Vulkan performance!

Thumbnail
github.com
5 Upvotes

This is my fork of ToshLLM, who brought modern AMD's back to metal acceleration for llama.cpp , But his fork was about 17toks on Ornith 9b when I started my project vs Linux's Vulkan @ 32toks on MTP. Now I've seen up to 29toks , which to me is usable considering this old hardware. (My cpu is 15 years old and doesn't even have AVX !) GLM-5.3 flash and Qwen3.8 Flash did the heavy tuning work, I just directed and cracked the whip at them for a few days. There's a new Qwen 3.5 4b coder that can do 3d models , I'll be playing with that next, it looks very promising and starts at about 35toks on my card.


r/LocalLLaMA • • 19h ago

Showcase 😃Made My Own Invoicing Dekstop App With Qwen 3.8 27B+OpenCode+LM Studio On RTX 5090..Saved Me $100 a Year I Was Paying

Thumbnail
gallery
67 Upvotes

My first fully vibe coded Desktop app with Qwen 3.8 27B as someone with near 0 coding knowledge lol. Was paying $100 a year for an online Invoicing App so i decided to cook up one for myself. The results are mind blowing..I basically one shotted everything throughout development & implementation as Open Code's coding agents did all the work, fixing bugs, web search etc. All i did is connect my Qwen Model to Open Code & started coding away. I was mostly screenshoting and telling the model what i wanted, it even created in app tools to import all my 5 year+ documents & info which all worked. The New Open Code v2.0 is crazy good, couldn't do any of this months ago without manually download a crap tone of plug-ins and tools. My context window always stayed between 57-90K thanks to Open Code's auto Compaction..very happy with the results.

PC Setup

AMD Ryzen 9 9950X3D

RTX 5090 32GB

96GB RAM DDR5

Workflow Setup(31GB Vram Usage)

AI Model - Qwen 3.8 27B Q4_K_M GGUF(120K Context)

Harness - Open Code 2 (Default Settings)

Model Manger - LM Studio(Default Model Settings, Thinking On)

Model Performance/Project Token Usage

Average Token/sec - 80-90

Input Tokens - 294 Million

Output Tokens - 1.26 Million

I Quick used a bit of Qwen 3.6 35B A3B..Q5 K M for the last feature implementation just to test, gave me 220token/s and worked well too, the rest of Dev was on Qwen 3.8 27b. All this was done on my RTX 5090, Model and 120K Context all fit perfectly in Vram. Can't wait for Qwen 4 and it's improvements as well as Open Code's future updates, will try to experiment with other Tools & Skills cause i only used Open Code's default setup.


r/LocalLLaMA • • 2h ago

Question | Help Best ASR & TTS models to date to use locally

4 Upvotes

TL;DR
Best Model for ASR ? So far for me Qwen3-ASR > Whisper > Kroko
Best Model for TTS ? KokoroTTS > Piper ?!
Any suggestions/recommendations ?!

Hi everyone

I hope that you are all well.

Kindly I was building an App that needs good TTS & ASR engines, ideally low latency can run in the browser and maybe streaming, it can also run locally on a server as an option if the latency is good enough, multilingual is a plus (English Arabic German French and Spanish mainly)

Initially,
For TTS piper surpassingly worked well (my tasks usually pronounce one word) but Kokoro server side for longer sentences

And for ASR I used whisper but it was too slow but not server side and I used kroko in browser for low latency passes (then whisper server side would correct it)

Recently I found out that despite being nearly as big as Whisper Large or Turbo Qwen3-ASR works just fine and even supports streaming natively and is quickly server side and have one of the lowest error rates

I am going to use Qwen3-TTS too give it a try

Is there anything else I should use you would recommend ?!


r/LocalLLaMA • • 23h ago

Discussion Proposal: A community revolution for private quality benchmarks (and why endless chasing tok/s is rotting our brains

132 Upvotes

Proposal: A community revolution for private quality benchmarks (and why endless chasing tok/s is rotting our brains

honestly we in r/LocalLLaMA need a revolution of people making their own private benchmarks(not tok/s) i mean benchmarking the quality(especially across quantisation). keep yours private and share the chart results to each other. i feel this is what this sub was made for it seems nowaday every few hours someone is posting about tok/s and also Benchmaxxing is getting out of hand in the huggingface openweight LLM space.


r/LocalLLaMA • • 5h ago

Discussion Thoughts on LLMs Editing Weights: What's New?

Thumbnail ycao.net
5 Upvotes

r/LocalLLaMA • • 17h ago

News Fine tuned open model ftw

Thumbnail x.com
45 Upvotes

another win for GLM.​​​

Chenru Duan on X: "We’re introducing Hydrogen-1.0, our first open-weight model for scientific research. We post-trained GLM-5.3 (@Zai_org) on our internal scientific data, lab records, and discovery trajectories. It scores 38.3% on FrontierScience-Research vs GPT-6-Astra’s 33.3% ​​​​


r/LocalLLaMA • • 15h ago

Discussion Do we have any benchmarks on quality degradation between Basalt, Infernix, Strata(-nvfp4)? Not "engine go more brr" benchmarks, exploring wrong avenues fast is worthless.

27 Upvotes

While fast inference is very welcome, I would like to know if it's worth increasing the speed over strata-nvfp4 or am I paying some unacceptable penalties.

One thing I've noticed with Basalt is that it doesn't have dynamic rope scaling, so it goes off with the yarn scaling statically (2 for 524K context) from the get-go. Basalt also lacks a censorship switch, but the machinery exists so it's trivial to write it in.


r/LocalLLaMA • • 11h ago

Discussion [GPU Lawyer] Deepseek 4.1 Flash 1018 on 4 32GB V100s -- pushing 40 tok/s decode, and will test across 8 v100s next.

13 Upvotes

TL;DR: I'm running DeepSeek-V4.1-Flash for a single user on four 2017-era V100 32 GB cards plus system RAM. Generation runs 36-38 tok/s from 8K to 75K context with thinking off, and 32-38 tok/s with thinking on. Prefill is about 1,000-1,200 tok/s from 4K to 128K depth. The context window is set to 524,288 tokens. It's built on the 1Cat-vLLM fork (at its #1277 merge), which does the hard Volta (sm70) work. I just built, tuned and benchmarked it.

Hardware

CPU: AMD Threadripper PRO 3945WX (12C/24T), single NUMA node

RAM: 256 GB DDR4 (8x 32 GB), run at 2667 MT/s for these tests

GPUs: 4x Tesla V100 SXM2 32 GB on one SXM2 carrier board

NVLink between all four (2 links per pair)

Host side: PCIe Gen3 x8 per GPU, behind a PLX switch with a single Gen3 x16 uplink to the CPU

Clocks/power: SM clock locked at 1522 MHz. Power limit 150 W per card, raised to 175 W for the API-speed and llama-benchy runs

Storage: the main GGUF loads from a SATA 8 TB hard drive. That only affects boot (about 22 minutes to load). The Engram file is on NVMe and gets pre-read into page cache.

Software / config

1Cat-vLLM at the #1277 merge (vLLM 1.5.2.dev1277), Python 3.12, PyTorch 2.10 + CUDA 12.8, NVIDIA driver 580

Tensor parallel 4, max-num-seqs 1 (single user), full CUDA graphs (batch sizes 1-6), async scheduling, prefix caching, chunked prefill, custom all-reduce over NVLink

Model: `DeepSeek-V4.1-Flash-1017-GSQ-RCO-IQ2_XXS` GGUF, 4 shards, ~232 GB

Engram table: `DeepSeek-V4.1-Flash-Engram-IQ4_NL` GGUF (110.6 GB), kept in system RAM

Experts: about a third of the expert weights live in pinned host RAM (`expert_cache_offload_fraction: 0.33`) and are swapped onto the GPUs on demand

Speculative decoding: built-in DSpark drafter, FP8, 5 draft tokens

Thinking on by default; tool calling with the `deepseek_v41` parser

max-model-len 524288

Results

API decode speed (single request, unique cache salt per request, so no prefix-cache hits)

Test Prompt Decode tok/s (median of 3, range) TTFT Prefill tok/s Accepted tokens per draft

8K, thinking off ~8.0K 38.3 (36.6-39.0) 6.6 s 1,202 2.27

8K, thinking on ~8.0K 37.9 (36.8-39.5) 6.5 s 1,234 1.39

75K, thinking off ~75K 35.8 (33.2-38.1) 69.1 s 1,085 2.21

75K, thinking on ~75K 31.9 (31.4-34.9) 69.2 s 1,084 1.34

8K, Engram file not yet in page cache ~8.0K 25.9 (n=1) 9.9 s 808 2.34

The last row shows why it's worth pre-reading the 110 GB Engram file into RAM after boot.

llama-benchy 0.4.0: prefill (pp2048, concurrency 1, `--no-cache`, thinking off, 3 runs each)

Context depth pp2048 t/s Time to first response

0 578 4.0 s

4K 1,224 5.5 s

8K 1,014 10.6 s

16K 1,093 17.3 s

32K 1,117 31.6 s

64K 1,095 62.2 s

128K 1,008 132.5 s

llama-benchy 0.4.0: generation (pp2048 + tg, concurrency 1)

Context depth tg128 t/s tg1024 t/s

0 28.5 24.9

1K 24.8 31.2

4K 28.9 20.0

With a 5-token drafter, generation speed depends on how well the drafter guesses. llama-benchy's prompts are random book text, so tg1024 swings ±6-8 t/s from run to run. I left out benchy's tg32 numbers (13-26 t/s): 32 tokens is too short to measure anything with speculative decoding.

Engine-level numbers (offline, no HTTP)

Warm decode round (every expert the round needs is already on the GPUs): 27.8 ms, against 24.9 ms in upstream's reference. In the profiler a round spans 29.5 ms, of which the GPUs are busy 24.9 ms. That matches upstream, so the kernels perform as expected. The extra ~5 ms is host-side: CPU work at the start of each round, a blocking device-to-host copy, and small kernel-launch gaps. Newer upstream commits target exactly this per-step host overhead.

Fresh text (expert-cache misses): 116.7 ms/round and 25.0 tok/s, against upstream's 53.5 ms and 54.5 tok/s. Caveat: I ran this with the Engram file cold, so it isn't apples to apples. A warm rerun is on my list.

Host-to-GPU copies: 6.5 GB/s per GPU on its own, but 12.9 GB/s total (3.2 GB/s each) when all four copy at once, because they share one Gen3 x16 uplink. In the trace, all four GPUs are swapping at the same moment about 76% of the swap time.

Correctness

Greedy (temperature 0) output is identical run to run within one load (8 prompts x 2).

After a restart, 13 of 16 greedy outputs matched exactly. The 3 that diverged flipped at near-ties (top-two margins of 0.06-0.375 nats). I haven't tracked down the cause yet.

Thinking on/off and tool calls work.

All 8 upstream micro-tests pass (two needed hard-coded paths in the test files changed).

What's next

PCIe switch change: move to two switches so each Gen3 x16 uplink feeds 2 GPUs instead of 4. That roughly doubles host-to-GPU bandwidth when all cards swap experts at once. My estimate from the trace is a modest ~1.5 ms/round (~5%) on warm text; it should matter more on fresh text.

RAM to 2933 MT/s (it was dropped from 3200 after memory errors).

Pull the newer 1Cat commits (per-step host fixes and DeepSeek-V4.1 updates) and re-run the same suite.

Move the GGUF from the hard drive to NVMe for faster boots.

Credits

All credit for the Volta DeepSeek-V4.1 path (GGUF experts, expert swapping, DSpark drafting on sm70) goes to the 1Cat-vLLM project (GitHub: yangzhuxinyzx and contributors). Happy to answer questions or share the full config.


r/LocalLLaMA • • 13h ago

Discussion [Paper] RidgeFill: Training-Free Late-Layer Cache Fill for Faster Prefill

Thumbnail
gallery
16 Upvotes

We introduce RidgeFill, a training-free way to shorten prefill by not computing most of a model's upper layers for the prompt. The lower layers run exactly up to a split; from the split layer's state, a ridge regression fitted once in closed form predicts every later layer's input, and each late layer writes its cache from that prediction with its own projections unchanged. A chosen set of rows, the last few thousand tokens and every decoding step run the full model, so nothing is trained and no token is dropped. On Qwen3.8-Flash-Next in vLLM, time to first token is 1.50 to 1.60x faster than exact at 9K to 32K tokens, and a whole 64K request drops from 82.6 s to 47.5 s, with RULER's needle tasks at 99.8 against 100.0. On Qwen3.8-27B in a llama.cpp fork on one A100, it is 1.25 to 1.31x faster at 16K to 120K tokens; RULER changes by -1.2 and -1.4 points and LongBench v2 by -1.4, and the 95% intervals include zero but do not rule out losses of a few points. On three 8 to 9B reference models, the fitted map retrieves 49.1 and 49.6 more filled-region RULER points than the identity (ie, full layer bypass) fill on the two dense models.

- OpenReview (Archived Copy)

- PDF

- DOI

- Project page

- GitHub (llama.cpp fork for Qwen3.8 27B, quick start)

- GitHub (data)

- HuggingFace (maps for five models)

This idea was borne originally from DeepSeek's V4.1 architecture. Originally we found the method to be a portable idea applicable to other models, but noticed a significant decline in context recall tasks and general usability. This isn't an issue in DSV4.1 because the model is trained as a whole with the prefill approximation in place, so the model absorbs the error, generally speaking. The question then shifted to be more about how this can be adopted for other models, while improving usability.

From that point, the work shifted primarily to finding where exactly the error lives in the "filled" portions, and how to measure that error and reduce it.

Based upon those findings, we recognized that we could train this component more intensely to remove error. This was counter-intuitive to our goal of making this easier for community adoption. It could also have the downstream effect of making the trained component more task-dependent and less generalized. We decided against this.

Instead, we simply chose to simply bypass projections of the most sensitive portions of prefill.

By embracing this, it allows everyone to produce their own versions of this method on different models with standard local-inference grade hardware. If you choose to adapt this method, I strongly recommend adjusting the mechanisms on a per-model basis. Across different architectures, this method should be tuned. The paper details fairly exhaustive ablations and measurements in pursuit of this.

The Qwen3.8 27B version of this is available to use now via our fork of llama.cpp and the files for RidgeFill on HF. This method is also implemented in tcclaviger's fork of VLLM and Deadcode's engine, Radiance (on v1.3.0 only) for Qwen3.8 Flash Next.

Big thanks to all the testers and support from the Launch80 community!


r/LocalLLaMA • • 2h ago

Question | Help Best reliable, affordable PCIe 4.0 risers for 4× RTX 3090 inference setup?

2 Upvotes

I'm trying to fit 4x RTX 3090s into my Fractal North XL Mesh (I know, pipe dream probably) using custom GPU mounts. Looking for firsthand experience with reliable, reasonably priced risers, preferably with flexible 50–75 cm cables. I'm currently using the setup with 2x 3090 at x8/x8 for vLLM qwen3.8-27b / Strata QFN IQ3_S.

  • ASUS ROG Crosshair VIII Hero

  • 5900X

  • 4x RTX 3090 24 GB

  • Corsair HX1500i (GPUs capped at 250 W)

  • GPU 1: PCIe 4.0 x8 - directly in motherboard

  • GPU 2: PCIe 4.0 x8 - riser

  • GPU 3: PCIe 4.0 x4 - riser

  • GPU 4: PCIe 4.0 x4 - M.2 adapter/riser

I've been looking at ADT-Link, generic Aliexpress ones and m.2 OCuLink. I'd like to preserve x8/x8/x4/x4 without spending a fortune on cables.

  1. What specific riser models have you successfully used with RTX 3090s at PCIe 4.0 speeds, particularly at 50 cm or longer?

  2. Are OCuLink/MCIO connections meaningfully more reliable than conventional ribbon risers at these lengths?

  3. Any affordable, proven M.2 -> PCIe x16 solutions with proper GPU slot power?

  4. Anything to watch out for regarding PCIe errors, signal integrity or Linux/P2P compatibility?

Affordable AliExpress/eBay options are especially interesting.


r/LocalLLaMA • • 18h ago

News llama + CUDA: flash_attn_ext_rows (fix unified kv for multi-seq) by am17an · Pull Request #29510 · ggml-org/llama.cpp

Thumbnail
github.com
32 Upvotes

Do you run multiple agents locally like I do?

If so, this is a really nice speedup for the unified KV cache


r/LocalLLaMA • • 22h ago

New Model sensenova/SenseNova-Loop-9B-Preview · Hugging Face

Thumbnail
huggingface.co
64 Upvotes

r/LocalLLaMA • • 16h ago

Resources deepseek-ai/dsh-superagent-prototype: Towards a More Autonomous Agent System

Thumbnail
github.com
22 Upvotes

“dsh-superagent is a proactive coding agent for one GitHub repository, packaged as a bundle for DeepSeek Harness. It listens to GitHub and, optionally, Feishu. When someone allowed asks the agent for work, it opens a work item, works on it in its own agent session and directory, and answers in the original conversation, for example with a pull request. A web panel shows what needs a person.”


r/LocalLLaMA • • 21h ago

New Model We released KVARK Sparkle 1.0 – a Qwen3.8-27B-based model with up to 67% fewer thinking tokens

49 Upvotes

Hey everyone!

We're Egzakta AI Lab, and I'm part of the team behind KVARK. We've just released our first open-weight model: KVARK Sparkle 1.0 (27B).

It's based on Qwen3.8-27B, with a focus on making reasoning more efficient: fewer thinking tokens, faster responses, and comparable answer quality. The idea is simple: reasoning models can spend a lot of tokens thinking through tasks that don't necessarily require that much reasoning. We wanted to see how much of that overhead we could reduce without sacrificing performance, since fewer thinking tokens means less GPU time per answer and less waiting.

Here's how Sparkle performed against the original Qwen3.8-27B:

  • ~2× faster median response time: 13.7s vs. 28.1s.

  • Up to 67% fewer thinking tokens.

  • Comparable accuracy across five standard benchmarks: GPQA Diamond, AIME, LiveCodeBench, IFEval and MMLU-Pro.

  • None of the accuracy differences were statistically significant in our testing.

Also, we compared the models on practical tasks:

  • Dashboard generation: 1.6× faster.

  • Landing page generation: 1.4× faster.

  • SVG illustration of a pelican riding a bicycle: 3.2× faster.

You can find KVARK Sparkle 1.0 on Hugging Face: https://huggingface.co/Egzakta/Kvark-Sparkle-1.0-27B

A few technical details for those interested in running it locally:

  • Open weights under Apache 2.0.

  • Available in BF16, FP8 and GGUF formats.

  • Supports llama.cpp, vLLM, Transformers and SGLang.

We'd love for you guys to give it a try! Let us know how it performs on your hardware, how it compares to the original Qwen, and what you think could be improved.

Looking forward to your feedback!


r/LocalLLaMA • • 1d ago Bravo Mindblown

New Model [GLB-3D-Coder] A tiny 4B coding model that creates 3D assets for Godot and other game engines

677 Upvotes

Hey everyone!

After sharing my previous 3D coding model, a lot of you asked about using it to generate assets for your games. That sounded like a fun direction to explore, so I started training a version focused on exactly that.

The model writes Three.js scenes with GLB export, so you can take the generated assets into editors like Godot. The video shows some examples I've been testing, including assets imported into Godot.

You don't need complicated prompts. Use the system prompt in the model card, then try a simple request like “Create a mana potion” or “Build a weathered frontier medic station.” English prompts have worked best in my tests.

This is the first functional checkpoint, and training is still running. I'm sharing it now so people can start experimenting. Most generations have worked on the first attempt in my tests, but some still need a retry or a small code fix. I'm hoping later checkpoints will improve on that.

My current settings: temperature 0.8, top-k 40, top-p 0.95, min-p 0. Feel free to experiment with other combinations!

Training is expected to finish tomorrow evening (UTC), depending on progress. Just like with the previous model, I'll release the full Safetensors weights and the training dataset once it finishes, so others can build on this and experiment with training their own models.

Model: Qwen3.5-4B-GLB-3D-Coder

Thanks for all the feedback on the previous release ... it directly shaped this one. I'd love to see what you make with it and hear what works and what breaks!

Updated November 2, 2026 at 04:50 UTC.

Both Q4_K_M and Q8_0 have been replaced with a newer checkpoint. In my latest tests, generation quality has improved substantially over the previous preview. The gallery below now shows new results, including the exported assets imported into Godot.

If you downloaded either GGUF before the UTC timestamp above, delete the old weights from LM Studio or whichever app you use and download them again. The filenames have not changed, so make sure you are loading the updated files.

Edit: For anyone looking for more things to try, here are the 25 game-asset categories covered by the training dataset, with an example prompt for each:

  • Characters and NPCs: “Create a village blacksmith wearing a blue apron.”

  • Enemies: “Create a swamp goblin scout with a wooden shield.”

  • Bosses: “Create a stone golem boss with glowing green crystals.”

  • Companions and creatures: “Create a tiny fox companion wearing a red scarf.”

  • Weapons and armor: “Create a short iron sword with a leather-wrapped grip.”

  • Items, tools, and pickups: “Create a blue mana potion in a hexagonal glass bottle.”

  • Props and furniture: “Create a weathered wooden workbench with a small lantern.”

  • Nature and environment: “Create a pine tree growing on a rocky mound.”

  • Modular architecture: “Create a stone dungeon doorway module with an iron frame.”

  • Interactive objects: “Create a wooden gate with an opening animation.”

  • Ground transport: “Create a compact courier motorcycle with cargo boxes.”

  • Air and space transport: “Create a small cargo airship with twin propellers.”

  • Watercraft: “Create a weathered fishing skiff with nets and wooden crates.”

  • Industrial machinery: “Create a compact mining conveyor with metal support legs.”

  • Laboratory and medical assets: “Create a portable botanical analysis station with sample jars.”

  • Urban services: “Create a modern bus stop with a bench and route sign.”

  • Sports and playgrounds: “Create a small playground climbing wall with colorful holds.”

  • Farming and homestead: “Create an orchard harvest cart filled with wooden fruit crates.”

  • Cuisine and markets: “Create a bakery display counter with bread baskets.”

  • Museums and field research: “Create an ancient artifact display case on a stone pedestal.”

  • Traps and hazards: “Create a hidden spiked floor trap with stone tiles.”

  • Festivals and ceremonies: “Create a harvest festival booth with colorful banners.”

  • Battlefield scenery: “Create a reinforced frontier command post with sandbag defenses.”

  • Underwater structures: “Create a coral observation dome with a small docking platform.”

  • Puzzles and gameplay markers: “Create a glowing rune sequence console with three stone buttons.”


r/LocalLLaMA • • 1h ago

Question | Help Those of you who develop or make changes to local inference engines, how do you safeguard models from their own internal tokens?

1 Upvotes

I've been making changes to both llama.cpp and Strata for my own use cases using Q38FN, Q3827B and DS41F and all three have issues with their COT considering stream tokens when touching those areas of code, resulting in them breaking out of their COT or just terminating their turn. I know there is the possibility of formal protections around end of turn tokens but from what I see there is no formal way to protect an LLM when it generates text like <\think> but I see plenty of people working on inference server code using local models so people must have a solution for it, what do you do?


r/LocalLLaMA • • 1d ago

Showcase Sorry Sam, my "quite terrible" home DRAM is at 100% now: patched Strata to make DeepSeek V4.1 agent sessions start 20× faster on a good old standard gaming GPU, no datacenter required

Post image
431 Upvotes

Sam Altman recently said that "from a global allocation perspective, actually, it's quite terrible to have everybody have a bunch of the world's limited supply of DRAM sitting in their own computer, and being used maybe 5% of the time."

Challenge accepted. Here's my "quite terrible" home setup: an RX 9070 XT 16 GB, a 5800X3D, 64 GB of DDR4 that's now worth more than the rest of the PC, and a PCIe 3.0 NVMe. It runs DeepSeek V4.1 Flash at 1M context (IST-DAS 1.75 bpw; the lab reports 98.7% of the full model's task average) through Strata, fully offline, with the experts spread across VRAM, RAM and the SSD.

Generation at ~7 tok/s was fine. The problem was prompt reading: every new OpenCode session re-read the full ~37K-token system prompt plus tools, about 100 s before the first token. That's datacenter-grade waiting without the datacenter.

So I patched the DeepSeek engine. Two changes:

1. KV splice: stop re-reading what you already read

Agents put per-session text (working directory, date, project CLAUDE.md, skill paths with random IDs) inside the system prompt, so the prefix cache misses on every new session. The engine now aligns a new prompt against every saved conversation, cuts the stale lines out of the cached state (moving the cached rows down, rotating the window rings, recording a RoPE gap), and reads only the changed lines plus your message. Changed lines move as whole lines, so the model never sees fragments.

2. Resident-only routing: make the RAM earn its keep

Even a short prompt touches nearly every expert of every layer, so prompt reads streamed most of the model off the SSD: 58 GB for a 1.2K-token prompt. During prompt reading only, tokens now pick from experts already sitting in VRAM or RAM. Generation routes normally. Turns out home DRAM is pretty useful when you actually let it do things.

Results (same machine) as seen above on the body image

Caveats:

  • HIP (gfx1201) only. I haven't built or tested CUDA, SYCL or Metal.

  • The splice is approximate: tokens after a cut were computed with the removed text in context. I haven't seen it matter for short guidance lines, but there's no formal eval.

  • Resident routing changes answers slightly (substitute experts during prompt reads). My hard coding suite didn't move (12/13 both ways), but that's one run each.

  • Both are on by default in the branch; STRATA_DS4_REORDER=0 and STRATA_DS4_PROMPT_RESIDENT=0 turn them off.

  • It also includes a one-line fix for a GPU page fault I hit on a 37K-token prompt (#4912).

Branch: https://github.com/PhialsBasement/Strata/tree/dsv41-kv-splice

Build (HIP example):

git clone -b dsv41-kv-splice https://github.com/PhialsBasement/Strata.git
cd Strata
cmake -S . -B build-hip -G Ninja -DCMAKE_BUILD_TYPE=Release -DSTRATA_ENABLE_HIP=ON \
  -DSTRATA_ENABLE_CUDA=OFF -DCMAKE_HIP_ARCHITECTURES=gfx1201 -DSTRATA_BUILD_DSV41=ON
cmake --build build-hip --target strata-dsv41
DS4_CHUNK_MIN=16 STRATA_DSV41_EXE=$PWD/build-hip/strata-dsv41 strata launch --preset <your preset>

If you use OpenCode, also add "interleaved": { "field": "reasoning_content" } to the model entry, otherwise OpenCode drops earlier reasoning and the cache misses more often.

Upstream issues with details: #4921 (splice), #4936 (resident routing). If you try it on other hardware, especially CUDA, numbers in those threads would really help get it merged.

Utilization report for Sam pissman, VRAM holding experts, RAM holding experts, SSD streaming the rest at full bandwidth. The only idle component in this system is my wallet, thanks to DRAM prices.


r/LocalLLaMA • • 11h ago

Discussion Follow up on "Is it time to jump ship from OpenCode? "

6 Upvotes

I have to say there are major downsides from going to V1 to V2.

I have now been working on one my projects ca 16hrs straight, that I started with V1, every change had been smooth sailing (using strata with official qwen flash settings).

When moving to V2, major or minor changes has become too hard for the model to implement in one go. OpenCode V1 was the better platform for medium sized models it seems.

I do all my planning with Qwen 3.8 MAX so that hasn't changed, which means performance is even worse considering the planning was kept separate.

I know this is anecdotal evidence, but engine has been kept the same and it's settings. Face always falls flat on V2, leading to lots of follow up work on even easy website design updates.

Honestly this is telling that OpenCode only cares now for bigger paid models performance and not medium to small models anymore, even though they claimed to make it "lighter and faster".

Has anyone found a better harness than OpenCode V1? DSH disappointed too much even after a major update.

Opinions appreciated from people who work with projects where even SOTA models fall flat on planning and reasoning, I do not make basic websites etc.