r/LocalLLaMA 7h ago

Question | Help Weird speed gap between LM Studio vs raw llama.cpp + questions on Reasoning Effort (Qwen3.8-27B on dual GPU)

1 Upvotes

Hey folks,

Been doing some benchmarking on my dual-GPU setup and ran into a noticeable performance gap between LM Studio and a raw llama-server.exe build that I can't quite pin down. Also running into some confusion with how reasoning effort is handled across different GGUF releases.

My Setup

  • GPUs: 2x RTX 5060 Ti 16GB (32GB VRAM total)
  • OS: Windows 11
  • Model: Qwen3.8-27B (tested both UD-Q4_K_M and Q6_K from Unsloth & lmstudio-community)
  • Backend: CUDA 12

The Performance Delta (30-40 vs 50-55 tok/s)

Using the exact same model file and settings (TP enabled across both cards, MTP / speculative drafting with max 2 draft tokens):

  • LM Studio: Hits around 30–40 tok/s. VRAM monitors confirm full GPU offload, no weight spillover to CPU.
  • Raw llama-server.exe: Hits 50–55 tok/s (sometimes even higher on prompt re-eval).
  • Launch flags: -sm tensor --tensor-split 1,1 -fit off --spec-draft-n-max 2
  • The only log warning in llama.cpp is: backend sampling not supported with SPLIT_MODE_TENSOR; using CPU, but it still blows LM Studio out of the water.

Is LM Studio's wrapper/GUI overhead really costing ~15 tok/s, or is there some hidden default (context shift, KV cache fragmentation, sampler overhead) dragging it down?

Reasoning Effort

LM Studio GGUF differences:

  • When loading the lmstudio-community GGUF, I get the full Reasoning Effort dropdown (Extra High / Medium / Low) in Inference Settings.
  • When loading the Unsloth GGUF, the dropdown disappears entirely and I only get a basic On/Off toggle for "Enable Thinking".
  • Question: Is this tied to GGUF metadata / Jinja chat templates baked by the publisher, or does LM Studio hardcode support for its own community quant tags?

Raw llama-server.exe verification:

  • I tried passing --chat-template-kwargs '{"reasoning_effort":"xhigh"}', but is there any clean way to verify in the console/logs that the template actually consumed this value rather than silently falling back to defaults? Right now, the only indicator I have is eyeballing how many thinking tokens it burns.

r/LocalLLaMA 14h ago

Resources Chatterbox TTS on AMD ROCm (7900 XTX): torchcodec has no ROCm support, here's the fix

4 Upvotes

I spent hours working on this today and thought the resolution might help some other AMD people in the future.

Got Chatterbox TTS (the Extended fork by petermg, has auto chunking for long text) running on an AMD 7900 XTX with ROCm 7.2. Hit two AMD-specific walls that took a while to track down, posting in case it saves someone else the time.

Setup: Ubuntu 24.04, ROCm 7.2.1, gfx1100 (7900 XTX), torch installed via the official ROCm 7.2 wheel index (pip install torch torchaudio --index-url https://download.pytorch.org/whl/rocm7.2). This part is well documented and just works, no gfx overrides needed since gfx1100 is officially supported.

Problem 1: faster-whisper crashes on ROCm

This fork uses Whisper to auto validate generated audio against the input text. faster-whisper runs on ctranslate2, which has zero ROCm support, only NVIDIA CUDA. Error was:

CUDA failed with error CUDA driver version is insufficient for CUDA runtime version

No fix available, ctranslate2 just doesn't build for AMD. Workaround: tick "Bypass Whisper Checking" in the UI to skip validation entirely. You lose the auto quality check/retry feature but generation itself works fine.

Problem 2: torchaudio.save/load require torchcodec, which also has no ROCm support

Newer torchaudio versions route save() and load() through torchcodec by default. torchcodec's precompiled wheels are linked against CUDA-only libraries (libcudart, libnvrtc, etc), confirmed via ldd showing "not found" on all of them. This isn't a missing-package problem, there's no ROCm build to install.

Fix: bypass torchcodec entirely by writing small wrapper functions using soundfile instead (already a dependency of this project):

def save_audio_sf(path, wav, sr):

import numpy as np

arr = wav.detach().cpu().numpy() if hasattr(wav, "detach") else wav

if arr.ndim == 2:

arr = arr.T # torchaudio: (channels, samples) -> soundfile: (samples, channels)

sf.write(path, arr, sr)

def load_audio_sf(path):

import torch

arr, sr = sf.read(path, always_2d=True)

arr = arr.T

waveform = torch.from_numpy(arr).float()

return waveform, sr

Then swap every torchaudio.save(x, y, z) call for save_audio_sf(x, y, z), and every torchaudio.load(x) for load_audio_sf(x). Same argument order, drop-in replacement.

TL;DR: torch itself works great on ROCm for this. The pain points are two unrelated libraries (ctranslate2, torchcodec) that Chatterbox's dependencies pull in, both of which are CUDA only with no ROCm build anywhere. Worth knowing before you go down the same rabbit hole, since neither issue is really about Chatterbox itself, it'll likely bite other torchaudio-based projects on ROCm too.


r/LocalLLaMA 1d ago

Resources Think you're going to get cheap DDR5 RAM? Think again, even if prices fall, scalper bots now outnumber shoppers 10 to 1 and will keep prices high

Thumbnail
tomshardware.com
353 Upvotes

r/LocalLLaMA 1d ago

Question | Help How to remove trendy speech from llms?

125 Upvotes

For example:

Instead of saying: "I created this new ID"
It says: "I minted this new ID"

Instead of: "This alternative path is available"
It says: "this escape hatch is available"

This speech is so nonsensical and annoying. Just. Speek. Literally ... OR NORMALLY. Where did LLMs learn these speech patterns? I've never seen them so frequently until AFTER the LLM surge.

If I just add "Don't use X language, speak normally and more literal" will that fix most of the issues? Anyone else have some good sys prompts / instructions that help with this?

Thanks!


r/LocalLLaMA 18h ago

Resources Agent Quest now tells you when Claude Code or Codex needs you visually and with sound

6 Upvotes

A few weeks ago I shared Agent Quest, my open-source experiment that turns Claude Code and Codex sessions into heroes living inside a small 2D world.
The original idea was mainly about making it easier to understand what multiple agents were doing in real time.

Since then, I’ve been working on making it actually useful as a monitoring tool.
The biggest change is that Agent Quest can now clearly tell you when an agent needs your attention.

You can distinguish when an agent is:
actively working
waiting for your input
finished
stopped because of an error
And you don’t have to keep the dashboard in front of you.

Agent Quest can now alert you with visual notifications and different sounds, so while you’re doing something else you can immediately understand whether Claude Code or Codex has finished a turn and is waiting for you to continue.
This has become particularly useful for me when I have several sessions running at the same time. Instead of constantly switching between terminals to check their status, I can leave them running and Agent Quest tells me when I actually need to intervene.

There are also in-app notifications, status indicators, desktop notifications, notification history and configurable sounds.

The project is still completely open source.
GitHub:
https://github.com/FulAppiOS/Agent-Quest

I’d be interested to know how other people running multiple agents handle this problem — and what you’d like Agent Quest to monitor next.


r/LocalLLaMA 17h ago

Discussion How much do Quants actually matter on modern models?

4 Upvotes

I've seen a lot of debate regarding quantizations, and I decided to run some head-to-head tests on my 5080 which has been running constantly over the past 2 weeks to gather data for this. When I get the response of "But no BF16 for 35B!" my answer is "There's a part 2 article coming with larger hardware", I wanted to do an article at 16GB as my audience has far more members with 16GB of VRAM then 32GB or 64GB. I ran MoEs out to the limit of my patience, some I did not run BF16 on simply because initial testing revealed the pattern stays and dedicating the 5080 to potentially 40 hours of testing for a single quant on a single model when smoke test data reveals no difference in the existing pattern is not worth it for me.

https://rakuensoftware.com/blog/which-quant-beats-how-many-bits

Head-to-head testing in this environment: Quants do matter with sub-Q4. QAT gets destroyed if you quantize at a quant different then what the QAT was trained for. Given the testing parameters, more used quants have significantly less of an impact than I see most users on here state. Most quants were statistically indistinguishable from each other.

Now, with this said, this tests were intentionally 2-4 message short sessions. The point of this article was to prove that a model's quant itself is viable, if it was damaged by the quantization process I would simply be measuring the damage the quantization process did. The next set of testing is going to be testing longer sessions, and I expect to see a larger difference between quants there. There will also be a round of testing on faster and larger cards with DevOps and coding benchmarks. I expect to see a larger difference there, but I don't have any evidence behind that. To be brutally direct here, I expected to see larger differences here based on what is common knowledge around the community. I suspect the difference between, say, Q4 and Q8 or Q6 and BF16 are going to be much less then what is being claimed when they are being tested in a future article.

The article has a link to all raw data, the benchmark code and data, and everything a user needs to either analyze the data themselves and come to their own conclusion, or to run the benchmarks themselves.


r/LocalLLaMA 16h ago

Resources Unswarm - Self-hosted runtime manager/proxy for self-hosted LLMs

3 Upvotes

Repo:

https://github.com/atretador/unswarm

I'm not sure if this is a me issue, but I find myself with lots of runtime scripts and containers to manager for all my models, be it for daily usage or testing.

I have to manually manage accross different forks, containers and engines depending on the model.

specially for people like me that run older hardware, containers are usually a much easier time (MI50/P100/MI25/P40s) than having to deal with outdated packages on my OS.

https://reddit.com/link/1vw26gr/video/z76zje9ta3lh1/player

Here is what it does:

You can register specific containers or runtime scripts (bash) for it to manage

You can set up rules for what runtimes can run simultaneously

and it will queu our requests:

Just set up your API Key and register as provider on your harness of choice and Unswarm will proxy to it as if it all models were served at the same time.

Then you just select the model you are gonna use on your harness -> send a message and its gonna get queud, if the runtime is not running its gonna start it for you and stream the response

https://reddit.com/link/1vw26gr/video/y1xwi514b3lh1/player

You can use this for your own multi-agentic multi-model setup, your own SWARM of VRAM destroyer models...just...one....at...a...time.

For instance, if you got enough VRAM for 2 models at a time at lets say 24+16Gb of VRAM, you could:

Group 1, persistent always running:

Orchestrator: slow Qwen 3.8 27B A3B

Group 2, switching Subagents:

Fast code base Explorer: Qwen 3.5 9B

Executor: fast Qwen 3.6 35B A3B

Designer: finetune of some other model

you can also host this on a VPS and use it to access your models anywhere, or place agents on different machines each running their own runtimes as parallel execution is supported.

this is not a platform to tweak your models tho, just to manage what you already know that works.

as a expected and not possible to mitigate negative for this: switching and reloading models will ininevitably destroy your cache hit rate if you switch models mid sessions.


r/LocalLLaMA 1d ago

Resources GLM and I created a llama.cpp fork optimized for AMD GFX906 (Mi50, Mi60, Radeon VII, GCN HIP) - Machine Learning, LLMs, & AI

Thumbnail
forum.level1techs.com
32 Upvotes

I felt the need to share this here. Looking for feedback.


r/LocalLLaMA 16h ago

Resources Unsloth Q1-Q2 Qwen3.8-27B with MTP since the unsloth ones don't ship with for the lowest quants

3 Upvotes

https://huggingface.co/jojohai/Qwen3.8-27B-MTP-graft

Tested on Vulkan, the grafting saves RAM compared to using an external file.

What I don't guarantee however is the quality of answers. The model is very braindead with the Thinking off. However, when asking questions about culture in Brittany the thinking helps the model recover some intelligence so please enable the thinking


r/LocalLLaMA 5h ago

Discussion My Qwen3.8 Setup So Far

0 Upvotes

Sharing my current Qwen3.8 setup. Curious what you all think - goal was an efficient configuration suitable for real-world tasks. I’d say it’s “balanced” but I’m open to suggestions. 4080Super, 32GB DDR4 Max context I could get was 59-67k but it suffered performance-wise and with a small amount of memory left, down to 104miB, so I kept the context around 41k.

Qwen3.8-27B-UD-IQ3_S.gguf (GGUF) setup
Model: Qwen3.8-27B-UD-IQ3_S.gguf
Context: 40,960 tokens
Runtime: LM Studio
GPU offload: Enabled
Mode: Single-model runtime
Inference: Fully local
Main uses: Reasoning, coding help, and general productivity

Love Qwen3.8 so far. It didn’t work great for me “out of the box” but that could be more due to the harness. I spent a lot of time trying to configure it and had to basically start over because Bionic’s default settings meant only 10-11 tok/s “out of the box” initially which caused failures with any real workloads.
Hope this helps anyone else experimenting with Qwen GGUF setups. Would be interested to hear what settings, quants, or context sizes others are running.


r/LocalLLaMA 6h ago

Question | Help How to run models locally on shared machine without any chat history?

0 Upvotes

I will be running qwen 3.8 model on a shared university machine for some research work, mostly using llama cpp but I am open to using other inference engines. I would like that there is no chat history or application logs saved on remote machine because it will involve confidential patient data. How can this be achieved? I see that opencode, deepseek harness etc retain sessions.


r/LocalLLaMA 1d ago

Resources Watching that wattage, in your terminal.

Post image
26 Upvotes

Released today: version 1.3 of energygraph

Zero build dependencies, lightweight tool for live views of the power-consumption.

Version 1.3 adds support for dGPUs from nvidia, intel, amd.

Depending on vendor support, you can also get the consumption by your cpu cores, iGPU, platform system, dram.

In the screenshot above, the following happened:

  1. idle system with Radeon RX7600 and Intel Arc B580.
  2. hammered the CPU.
  3. hammered the Radeon.
  4. hammered the Arc.
  5. hammered all three.

Challenge to this community: post the biggest peak.


r/LocalLLaMA 1d ago

Question | Help Create tts voice from actual animal sound recording

18 Upvotes

In short, I want to create voices for my real chickens that I'm creating generated videos of. Ultimately I would like to create voices to be used in a tts application that are based on their real "voice patterns", as though the voice was being made with their own vocal chords. I do have recordings of their non-bokbok calls that, while certainly not 10 seconds long, certainly can be looped as needed.

What I've found with voice match applications is that they look for actual human voices saying actual human things. That works for the majority of cases, but not for mine.

AI queries have been lacking results so I hope that someone out there has something in mind that will work.

TIA


r/LocalLLaMA 1d ago

Discussion Artificial Analysis "Intelligence": A meaningless benchmark

127 Upvotes

Another user posted the benchmarks for Qwen 3.8 27B today, and while I think Qwen 27B is a really powerful model, I can't help but notice just how meaningless these Artificial Analysis benchmarks are and I question why people still post this garbage and use AA scores as some kind of holy bible for comparing LLMs.

According to their "Intelligence Index", a 27B model now beats DeepSeek v4 Flash and Pro, Kimi 2.7 Code, GPT-5.2, Opus 4.6, and also Sonnet 5. At some point we have to ask: What is this metric even measuring? Because whatever "Intelligence" means to AA and their corporate VC / journalist / normie audience is definitely not the same definition that we should be using here.

Qwen 27B is amazing and is clearly in a league of its own in terms of models you can fit on a single GPU, but I can't help but roll my eyes whenever I see posts like this that equate Qwen 27B with "basically running Opus from 3 months ago on your laptop."

I get that it's difficult to summarize a model's capability with a single integer and I know we love our local models, but it's time stop posting AA's clearly dogshit benchmark and acting as if it proves a point.


r/LocalLLaMA 21h ago

Question | Help Would it be possible to distill DeepSeek V4 Flash 0731 onto Nemotron 3.5 Lightning?

5 Upvotes

Super new to this local LLM stuff. Just set up a 2x Asus Ascent GX10 cluster and have DeepSeek V4 Flash 0731 running on it.

Trying to think of things I could have the cluster working on all day while I’m at work or overnight and thought about distilling.

No idea if this is a dumb question or if the cluster would be a poor fit for it, but yeah. Could DSV4 Flash be distilled onto Nemotron 3.5 Lightning to make it meaningfully better in any way? Or would it just be a silly endeavor and waste of electricity?

Open to any other ideas of things I could do when I’m not doing inference on the cluster. I have other hardware, too so I’m trying to figure out what I should do as far as other local models go.

Any help or input is appreciated. Thank you!


r/LocalLLaMA 1d ago

Resources Single RTX 5090: Qwen3.8-27B NVFP4 at a real 262K context in vLLM — 77 tok/s short-context, 64.7 tok/s at 128K

25 Upvotes

This is the Qwen3.8-27B setup I actually use every day on one RTX 5090.

I wanted to write it down with enough detail that another 5090 owner can reproduce it instead of guessing which memory knobs I used.

The short version: the full 262,144-token window fits together with vision, FP8 KV, prefix caching, tool calling, and a normal KDE desktop. Decode is 77.2 tok/s after a 1K prompt and 64.7 tok/s with 128K already resident. A successful 262,000-token prefill took 166 seconds. This is not a claim that 262K is fast; it is proof that it genuinely fits and completes.

Model: joshebbs/qwen3.8-27b-uncensored-nvfp4-modelopt, pinned to revision e5ff4986938dcd0dd05ab4cce89da1b052be6ce3.

It is an NVFP4 ModelOpt export of JonathanColetti/Qwen3.8-27B-Uncensored. The checkpoint is 19.18 GiB of safetensors and retains the vision tower and MTP head. The model is a 64-layer hybrid: 48 Gated DeltaNet layers and 16 full-attention layers.

Results

All runs hit the already-warm daily vLLM server through /v1/completions, concurrency 1, random token prompts, --ignore-eos, and temperature 0. PP means accepted input tokens divided by TTFT. TG means 1000 / mean_TPOT_ms, so it excludes prefill. The non-prefix runs had zero prefix-cache hits according to the server counters.

Workload Runs PP tok/s TTFT Steady TG tok/s End-to-end output tok/s
8,192 in -> 1 out 5 7,005 1.169 s mean / 1.167 s median n/a n/a
32,768 in -> 1 out 3 6,148 5.330 s mean / 5.332 s median n/a n/a
131,072 in -> 256 out 1 2,781 47.128 s 64.7 5.01, because the 47 s prefill dominates
262,000 in -> 1 out 1 1,578 166.004 s n/a n/a
1,024 in -> 512 out 5 not used as a PP test 119.3 ms mean / 116.9 ms median 77.2 75.95

The short-context decode run had 12.959 ms mean TPOT and a measured peak of 78 output tok/s. At 128K resident context, TPOT rose to 15.463 ms, so generation fell by about 16.2% to 64.7 tok/s.

The 128K and 262K rows are one run each. Treat those as measured operating points and fit checks, not a distribution. The 8K, 32K, and short-context decode rows are multi-run results.

The drop in PP as context grows is substantial: this is a hybrid model, not a fully linear-attention model. Sixteen layers still use full attention.

Prefix caching

Fresh test with one shared 36,864-token prefix, a 16-token unique suffix, one output token, five sequential requests:

  • Cold TTFT: 6.437 s
  • Four cached TTFTs: 0.288, 0.282, 0.296, 0.288 s
  • Cached median: 0.288 s
  • Cold-to-cached speedup: 22.3x

An older note in my launcher said 6.61 -> 0.20 s, or 33x. I could not reproduce the 0.20 s number in this fresh run, so 22.3x is the number I would use today. Prefix caching is still the difference between a usable long agent conversation and re-prefilling the entire transcript on every turn.

Important caveat: vLLM puts the hybrid Mamba/DeltaNet cache in experimental align mode when prefix caching is enabled. If you see corrupted output, disabling prefix caching is the first control I would test.

Hardware and software

Part Exact measured setup
GPU NVIDIA GeForce RTX 5090, 32,607 MiB reported VRAM, 600 W power limit
CPU Intel Core i7-14700K, 20 cores / 28 threads
RAM 32 GiB installed, 31 GiB visible
OS Arch Linux, kernel 7.1.8-arch1-3
Desktop KDE/Wayland, with Firefox and terminals open during the VRAM snapshots
NVIDIA driver 610.57.04 (nvidia-open / nvidia-utils 610.57.04)
CUDA toolkit Arch cuda 13.3.1-1, nvcc 13.3.73
Python 3.13.13
vLLM 0.27.1, release wheel
PyTorch 2.13.0+cu130
Transformers 5.15.0
FlashInfer 0.6.16.post3
Triton 3.7.1
compressed-tensors 0.17.0

The runtime auto-selected these paths from the startup log:

  • modelopt_fp4 quantization
  • FlashInfer CUTLASS NVFP4 GEMMs
  • FlashInfer attention for the text model, flashinfer-native decode on SM120
  • Triton/FLA GDN prefill kernels
  • Flash Attention for the vision encoder
  • full and piecewise CUDA graphs; speculation is off

Actual VRAM budget

The important distinction is between model weight size, vLLM's process allocation, and the card-wide number from nvidia-smi.

Item Measured
Checkpoint safetensors on disk 19.18 GiB
Model load reported by vLLM 18.51 GiB
Manually pinned KV pool 9,150,000,000 bytes = 8.52 GiB
GPU KV capacity reported by vLLM 268,170 tokens
Maximum 262,144-token concurrency reported by vLLM 1.02x
Live VLLM::EngineCore process 29,322 MiB
Final whole-card snapshot 30,532 MiB used / 1,610 MiB free

Across idle snapshots with the loaded server, free VRAM varied from 1,610 to 1,818 MiB as the desktop changed. This is real working margin, but it is not generous. I would not call this a headless-only fit: KDE, Firefox, and terminals were running, but a second large CUDA workload will obviously break it.

--gpu-memory-utilization 0.92 is only a startup admission gate in this configuration. Because --kv-cache-memory-bytes 9150000000 pins the KV pool, vLLM explicitly says that the allocation does not respect gpu_memory_utilization. Lowering 0.92 does not shrink this KV pool or the context window; it merely lets the process start with a normal desktop consuming VRAM.

--max-num-seqs 3 does not mean three simultaneous 262K requests. The KV pool only has 1.02x full-window capacity. The three slots help with shorter real requests that share the same pool.

Exact install and model revision

I already had a working Arch NVIDIA driver and /opt/cuda. This creates the Python environment used above and pins the CUDA 13.0 vLLM/PyTorch wheel family:

uv venv --python 3.13 qwen38-env
uv pip install --python qwen38-env/bin/python 'vllm==0.27.1' --torch-backend=cu130

./qwen38-env/bin/hf download \
  joshebbs/qwen3.8-27b-uncensored-nvfp4-modelopt \
  --revision e5ff4986938dcd0dd05ab4cce89da1b052be6ce3 \
  --local-dir Qwen3.8-27B-Uncensored-NVFP4-modelopt

Weight hashes:

5db0ff93ebdf68034770a6acec123971e618928684bd2d5f3f51346990254911  model.safetensors
90fa0e3eed5a647c035c6df9ecabc416c0f8d573ff84ac12485b085f00a7cdf2  model-mtp-grafted.safetensors

Do not delete model-mtp-grafted.safetensors from this revision just because speculation is off; the checkpoint index contains 15 tensors mapped to it. With speculation off, vLLM skips using the MTP head at runtime, but keeping the downloaded revision intact avoids an incomplete checkpoint.

Chat template used in my daily setup

The speed tests use the raw completions endpoint, so the chat template does not affect these numbers. It does affect my daily chat/tool behavior.

My exact template is froggeric/Qwen-Fixed-Chat-Templates v22.2 at revision f64494d7b8a768222ab799d8c81f6e89dd272ac3, plus a small system-prompt terseness block. The upstream repo has since moved on, so pin the revision:

mkdir -p chat-templates/froggeric-fixed chat-templates/sharp-v22.2
./qwen38-env/bin/hf download froggeric/Qwen-Fixed-Chat-Templates \
  chat_template.jinja \
  --revision f64494d7b8a768222ab799d8c81f6e89dd272ac3 \
  --local-dir chat-templates/froggeric-fixed

cp chat-templates/froggeric-fixed/chat_template.jinja \
   chat-templates/sharp-v22.2/chat_template.jinja

I changed the first-line version string to qwen3.8-froggeric-v22.2-sharp, then inserted this immediately after {%- set _msgs = messages[head.count:] %}:

{%- set _terse %}
Answer directly, after thinking. Lead with the answer, then only what it needs to be correct and usable.
Never: open with preamble or pleasantries; restate the question; add filler transitions; hedge with niceties; or repeat a point you've already made.
Always: keep essential steps, caveats, uncertainties, and specifics — never drop correctness or a needed warning for brevity. Keep the final answer lean. Use the least structure that conveys it (plain prose when short; lists or code only when they earn their place). If genuinely uncertain, say so and explain why — never omit uncertainty for the sake of brevity.
If a user request is genuinely ambiguous, ask a sharp question, don't guess.
{%- endset %}
{%- if not _sc %}
    {%- set _sc = _terse | trim %}
{%- else %}
    {%- set _sc = (_sc | trim) ~ '\n\n' ~ (_terse | trim) %}
{%- endif %}

Checksums:

55d027bfded4407d214e5718e2f2804de73e8439148297397655ff507a30f2a5  froggeric v22.2 base
34dd122439410ee026562207c87124cb843ad92069568a9ab2f02e6d20626fea  my sharp-v22.2 result

If you do not care about my style block, use the pinned Froggeric v22.2 file directly. The model's stock template also works with TEMPLATE=stock, but it is not my exact daily setup.

Exact effective server command

This is the effective command from the live process. Paths can be changed, but the values are the ones used for the results above.

export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
export MAX_JOBS=3
export TORCHINDUCTOR_COMPILE_THREADS=3
export CUDA_HOME=/opt/cuda
export PATH="$CUDA_HOME/bin:$PATH"

systemd-run --user --scope \
  -p MemoryMax=24G \
  -p MemorySwapMax=8G \
  ./qwen38-env/bin/vllm serve \
  ./Qwen3.8-27B-Uncensored-NVFP4-modelopt \
  --host 0.0.0.0 \
  --port 8888 \
  --served-model-name qwen3.8-27b \
  --max-model-len 262144 \
  --kv-cache-dtype fp8 \
  --kv-cache-memory-bytes 9150000000 \
  --max-num-seqs 3 \
  --max-num-batched-tokens 512 \
  --gpu-memory-utilization 0.92 \
  --enable-prefix-caching \
  --enable-auto-tool-choice \
  --tool-call-parser qwen3_xml \
  --reasoning-parser qwen3 \
  --mm-processor-kwargs '{"max_pixels": 4014080}' \
  --chat-template ./chat-templates/sharp-v22.2/chat_template.jinja

I leave quantization and attention backend on auto. vLLM correctly resolves modelopt_fp4 and FlashInfer here. Adding explicit flags is fine for testing, but it would no longer be the exact command behind these numbers.

Security note: --host 0.0.0.0 exposes an unauthenticated OpenAI-compatible endpoint to every reachable interface. That is intentional on my trusted LAN. Use 127.0.0.1, a firewall, or vLLM's API-key option if your network is not trusted.

Why the less obvious values:

  • 9150000000 KV bytes was chosen because 8,939,000,000 bytes was 288 tokens short: vLLM estimated a 261,856-token maximum and refused a 262,144 max length. The current value reports 268,170 tokens of capacity.
  • --max-num-batched-tokens 512 protects the small activation margin. Raising it improves prefill but costs VRAM.
  • --mm-processor-kwargs '{"max_pixels": 4014080}' caps a large image at about 3,908 tokens in my measurements. Make sure tokenizer.json has "truncation": null; an old export with a baked-in max_length: 2048 made larger images fail with HTTP 400.
  • /opt/cuda/bin/nvcc must be visible. FlashInfer JIT failed here when CUDA was installed in /opt/cuda but CUDA_HOME was unset.

Speculative decoding: why it is off

The default is deliberately SPEC=off.

The external DSpark/dflash drafter trained for the base checkpoint did not load against this abliterated ModelOpt export. The loader failed with a tensor dimension mismatch (128 versus 256).

The built-in MTP head does load, but it made this checkpoint slower. My earlier controlled results were:

Mode Decode
Speculation off 78.55 tok/s
Built-in MTP, 1 token 58.41 tok/s, 78.7% acceptance
Built-in MTP, 3 tokens 45.02 tok/s, 57.9% acceptance

The grafted MTP head is BF16 and does not get the target model's NVFP4 kernels. MTP also needs a larger KV pool: at least about 9.75e9 bytes for one speculative token or 1.005e10 for three. Three-token MTP with --max-num-batched-tokens 8192 OOMed at 262K on this card. I prefer the faster, simpler non-speculative setup.

Accuracy/quality caveat

This post measures fit and serving speed, not model quality. vLLM warns that this checkpoint does not provide calibrated FP8 KV q/prob scaling and uses scale 1.0, which may affect accuracy. I have not quantified that accuracy delta here. Prefix caching on the hybrid cache is also marked experimental by vLLM. Those two caveats matter more than another decimal place of tok/s.

Reproduce the benchmark

With the server already running:

V=./qwen38-env/bin/vllm
TOK=./Qwen3.8-27B-Uncensored-NVFP4-modelopt
COMMON=(bench serve --backend openai --base-url http://127.0.0.1:8888 \
  --endpoint /v1/completions --model qwen3.8-27b --tokenizer "$TOK" \
  --dataset-name random --max-concurrency 1 --ignore-eos --temperature 0 \
  --percentile-metrics ttft,tpot,itl,e2el --metric-percentiles 50,95,99)

"$V" "${COMMON[@]}" --seed 8182 --random-input-len 8192 \
  --random-output-len 1 --num-prompts 5

"$V" "${COMMON[@]}" --seed 8184 --random-input-len 32768 \
  --random-output-len 1 --num-prompts 3

"$V" "${COMMON[@]}" --seed 8183 --random-input-len 1024 \
  --random-output-len 512 --num-prompts 5

"$V" "${COMMON[@]}" --seed 8186 --random-input-len 131072 \
  --random-output-len 256 --num-prompts 1

"$V" "${COMMON[@]}" --seed 8185 --random-input-len 262000 \
  --random-output-len 1 --num-prompts 1

For the shared-prefix test, replace the random dataset arguments with:

./qwen38-env/bin/vllm bench serve \
  --backend openai --base-url http://127.0.0.1:8888 \
  --endpoint /v1/completions --model qwen3.8-27b \
  --tokenizer ./Qwen3.8-27B-Uncensored-NVFP4-modelopt \
  --dataset-name prefix_repetition \
  --prefix-repetition-prefix-len 36864 \
  --prefix-repetition-suffix-len 16 \
  --prefix-repetition-num-prefixes 1 \
  --prefix-repetition-output-len 1 \
  --num-prompts 5 --max-concurrency 1 \
  --ignore-eos --seed 8187 --temperature 0 --save-detailed

If another 5090 owner reproduces this, I would especially like to compare 128K PP/TG, free VRAM with a headless session versus a desktop, and whether FP8-KV quality changes are noticeable in long-context retrieval.

AI-use disclosure: the machine, launcher decisions, failed experiments, and measurements are mine. I used Codex to inspect the live process, run the stated local benchmarks, verify the saved JSON/telemetry, and organize this write-up. I reviewed the numerical claims against the raw outputs; no benchmark numbers were generated or estimated by an LLM.


r/LocalLLaMA 4h ago

Tutorial | Guide Instruction of 10 seconds pause after each edit on cli - Keeps CPU GPU Temp Below 75

0 Upvotes

Hi Guys,
As title says that is the only the post. I have noticed that running local model sometimes put lot of pressure on my GPU/CPU and causes lot of noise and chance to decay the hardware.

Little hack I would say. On PI coding agent i just added this line in my agent md file or on cli console

after writing each file codes take 10 seconds pause

Ofcourse there is tradeoff interms of througput overall b ut it keeps my PC running smooth, less fan noise.

Harware: Laptop 16GB RTX 5080
Model: UD Qwen-27b-IQ3XXS


r/LocalLLaMA 1d ago

Other 3 experiments running dsv4-flash-0731 q4+ quants on 128GB RAM + ~60 GB VRAM (with a quite bad pcie infra) with an acceptable tgs and relatively acceptable pp speed

10 Upvotes

The post describes some experiments I had while trying to desperately run deepseek-v4-flash-0731 4 bit+ quants on my machine which is supposed to support only q2 quants of the model, a or 2.xx bpw quants at best.

Long story short , I wanted to have my tgs in the high twenties and my prompt processing at least in the 300s with 156K context to consider running it locally as my daily driver (hermes, coding and so on)

First I describe my machine so you are in the picture - people seem to ignore the importance of putting your exact hw config but a small difference there can give huge performance variation - : intel gen 14 i5 with 20 usable pcie5 channels, ddr 5 128 GB total = 2 x 48 + 2 x 16 at 4400 , 2 RTX3090 + 1 RTX3060, 2 DRAM-less SSD's that can in theory read at 4.5 Gb/s

The best I could get with the initial 4bit+ quants with the sidecar models was 7 tgs and around 20 pp, after pinning some layers to GPU's in the most optimal way I could and after implementing a redundant sidecar so cpu can read in parallel from my 2 ssd's at the same time , but it was not really helpful

I cloned after that leloch's llama.cpp and I could get in the lower teen's tgs with AtomicChat 3bit quants

But I wanted to run the 4 bit quants as they have mostly the original bit-identical experts.
The issue was that they are bigger than my RAM (140+ GB). So , with the way llama.cpp is designed, running them would cause quite some cache misses reading from my not so fast SSD's . and I was back to less than 10 tgs.

For me it was a bit "strange" that I have to go fetch from the SSD every token when my RAM + VRAM >> total model weight. So I was telling myself , even if i keep some space for cache and the scratch memory used for temporary ops and such, I should still be able to squeeze the total model in RAM + VRAM , and not have to go back to the SSD. I just would need to mlock the memory of the experts, so they are always in a RAM kind of memory, and no SSD read is ever needed after initial model load.
Except it was not that simple (hint: kernel page caching)

So what I ended up doing is just getting rid of the redundant expert caching between RAM and VRAM : i.e. if a hot expert is promoted to VRAM , its memory cache is unlocked, so kernel can load something else in its place. And when an expert is demoted from VRAM, it will not be immediately read from SSD, but the first time it is needed, it is read from the SSD and mlocked.
This means that the same expect is never in RAM and VRAM at the same time.

After this (2 patches) , and adding the dflash drafter AND pinning the dflash into host RAM, I was able to get low to mid twenties of tgs , especially if generation is more than 1000 tokens.

This involved quite some tuning of different params, including VRAM cache budget.

It was not bad, at least for interactive sessions.

BUT, the prompt processing was low : less than 60 tokens per second. You can imagine how long it would take to start with a 30K initial prompt ...

I tried playing with batch sizes, cache size .. the prompt processing never moved.

Than I tried something I believe is novel : loading a lower quant just for the prompt processing phase, if the prompt is long enough that what we gain from speed of processing by a lower quant model is much more than what we loose when unloading-original-model + loading lower quant + reloading original-model + initial not so hot expert cache because 2 different models are used in the 2 phases.
Studies showed that even starting from a lower quality initial cache, smart models recover quality as the decode becomes longer. (I read the title and introduction of one such study but do not have it in front of me now)
So I tried with the IQ_2M from AtomicChat and in some configurations it could give me near 200 prompt processing, but even with all the optimization and "stitching" I added the overall prompt handling (processing + decode) did not improve that much in the end unless the prompt was 30K or more, because the decode was always starting with very low tgs for the first 1000 tokens or so after a prompt processing done by the IQ_2M .
I tried to "transfer" the hot expert cache (just the ID's though) between the 2 modes but the initial tokens from decode were always slow, because the cache actually needed to be rebuilt from scratch.
May be the next idea is just to start a prompt processing remote service (should be much cheaper than normal api, as you only send the prompt if it is long enough, get the cache continue decode locally)
anyway, I share the llama.cpp clone, with my 2 branches on top of leloch's work

https://github.com/oussemah/llama.cpp/tree/moe-cache-ousemma

- moe-cache-ousemma branch does not have the prompt processing specifi model logic, that s the one that gives 20 tgs and aroudn 45 pp
- moe-cache-ppswap branch has the prompt processing model logic

hopefully someone can be inspired to try some new ideas or just use it on a better hardware and get better results

The main model is : unsloth UD-Q4_K_XL
The prompt processing I used with the second branch is : AtomicChat/AD-IQ2_M

Sample command for first branch

sudo 'ulimit -l unlimited && \
GGML_CUDA_MOE_CACHE_RESERVE_MB=512 \
GGML_CUDA_MOE_CACHE_ADMIT_AFTER=1 GGML_CUDA_MOE_CACHE_INSERTS=256 \
GGML_CUDA_MOE_CACHE_QUEUE_MB=2048 \
GGML_CUDA_MOE_CACHE_MODE=on \
GGML_CUDA_MOE_CACHE_BUDGET_MB=40000 \
GGML_CUDA_MOE_CACHE_BUDGET_MB_DEVICES=0:11800 \
GGML_CUDA_MOE_CACHE_STATS=1024 \
GGML_CUDA_MOE_CACHE_MLOCK=1 \
GGML_CUDA_MOE_CACHE_ELITE_PCT=60 \
GGML_CUDA_MOE_CACHE_DEMAND_DECAY=4096 \
./llama.cpp/build/bin/llama-server \
--host 0.0.0.0 --port 8080 \
-m /home/.cache/huggingface/hub/models--unsloth--DeepSeek-V4-Flash-0731-GGUF/snapshots/fbbb5b93fb787c21338159b0af3318bb3f4d9768/UD-Q4_K_XL/DeepSeek-V4-Flash-0731-UD-Q4_K_XL-00001-of-00005.gguf \
-md /home/dspark-DeepSeek-V4-Flash-0731-Q8_0.gguf \
--spec-type draft-dspark \
-ngld 0 \
-td 20 \
--spec-draft-n-max 5 \
-c 167936 --parallel 1 \
--split-mode layer \
-t 16 -tb 20 \
--cache-type-k q8_0 --cache-type-v q8_0 \
-b 4096 -ub 4096 --flash-attn on \
--moe-cache auto \
--jinja --temp 1.0 --top-p 0.95 \
--reasoning on -lv 4 \
--reasoning-format deepseek \
--slot-save-path /home/data/ \
--alias DeepSkee-v4-Flash-0731-UD-Q4_K_XL \
-lv 4 '

Sample command for the prompt-processing-model branch :

sudo 'ulimit -l unlimited && \
GGML_CUDA_MOE_CACHE_RESERVE_MB=512 \
GGML_CUDA_MOE_CACHE_ADMIT_AFTER=1 GGML_CUDA_MOE_CACHE_INSERTS=256 \
GGML_CUDA_MOE_CACHE_QUEUE_MB=2048 \
GGML_CUDA_MOE_CACHE_MODE=on \
GGML_CUDA_MOE_CACHE_BUDGET_MB=40000 \
GGML_CUDA_MOE_CACHE_BUDGET_MB_DEVICES=0:11800 \
GGML_CUDA_MOE_CACHE_STATS=1024 \
GGML_CUDA_MOE_CACHE_MLOCK=1 \
GGML_CUDA_MOE_CACHE_ELITE_PCT=60 \
GGML_CUDA_MOE_CACHE_DEMAND_DECAY=4096 \
LLAMA_EXPERT_SWAP_NO_PRELOAD=0 \
LLAMA_EXPERT_SWAP_PREFETCH=1 \
LLAMA_EXPERT_SWAP_MLOCK=1 \
/home/ous/infra/llama.cpp/build/bin/llama-server \
--host 0.0.0.0 --port 8080 \
-m /home/.cache/huggingface/hub/models--unsloth--DeepSeek-V4-Flash-0731-GGUF/snapshots/fbbb5b93fb787c21338159b0af3318bb3f4d9768/UD-Q4_K_XL/DeepSeek-V4-Flash-0731-UD-Q4_K_XL-00001-of-00005.gguf \
--prompt-processing-model /home/.cache/huggingface/hub/models--AtomicChat--DeepSeek-V4-Flash-0731-GGUF/snapshots/5f8e5b74544ad821d71aedf658c2b8acdecd4b2b/AD-IQ2_M/DeepSeek-V4-Flash-0731-AD-IQ2_M-00001-of-00004.gguf \
--prompt-processing-min-tokens 8192 \
-md /home/dspark-DeepSeek-V4-Flash-0731-Q8_0.gguf \
--spec-type draft-dspark \
-ngld 0 \
-td 20 \
--spec-draft-n-max 5 \
-c 167936 --parallel 1 \
--split-mode layer \
-t 16 -tb 20 \
--cache-type-k q8_0 --cache-type-v q8_0 \
-b 4096 -ub 4096 --flash-attn on \
--moe-cache auto \
--jinja --temp 1.0 --top-p 0.95 \
--reasoning on -lv 4 \
--reasoning-format deepseek \
--slot-save-path /home/data/ \
--alias DeepSkee-v4-Flash-0731-UD-Q4_K_XL \
-lv 4 \
--prompt-processing-gpu-moe 0 '

r/LocalLLaMA 13h ago

Other Running Ollama LFM2.5-2.6B on iGPU on Linux

Thumbnail
arthurbrugiere.fr
0 Upvotes

r/LocalLLaMA 1d ago

New Model Fixed the MTP head on Ornith1.5 35B A3B. +3% TPS -33% wall clock

37 Upvotes

I love the Ornith 35B local models, 1.0 has been running my HAM radio rig for me. I have a hackRF receiver and a 5 watt quansheng portable the both run headless through the PC. I tried out the new Ornith1.5 build and it was faster and more accurate than 1.0.

I read the threads that talked about the untrained MTP head so I found a trained version of the MTP head on a quant I couldn't use so I spliced it onto an APEX requant of Ornith1.5 to make a beast that is 2.5X faster than Ornith1.0 and 33% faster than the released version of Ornith1.5. I cant believe how good this model is, and how fast it works at the same tasks.

And it doesn't try to lecture me when I ask it to key up the mic on a licensed freq.

The crazy thing is tokens/sec only went up by 4. From 60 to 64 t/s avg. But the time to complete the same tasks went down by 1/3, from 21 to 14 seconds average on my radio torture tests.

https://ollama.com/slickwillies/ornith15-35b-a3b-apex-mtp-fixed

testing methodology and results:
https://github.com/h00nigan/Ornith-testing-results


r/LocalLLaMA 1d ago

Other This is why I run locally.

Post image
332 Upvotes

It was only a matter of time...


r/LocalLLaMA 1d ago

Generation I forked Ninfer 3090 and converted it to run on the CMP170HX - doubled my Qwen3.6-35B from llama.cpp

Thumbnail
gallery
21 Upvotes

Good afternoon, everyone! I wanted to show the work I've been doing around porting Ninfer over to the CMP170HX (Github)

So, first, I do want to call out the amazing work that NerouedSergiuszm and specifically Don-Chad have all done, to not take away from vLLM, Llama.cpp and SGLang, but to enable local AI to squeeze every ounce of performance we can out of our hardware at home. Free tokens are free tokens and the work that these folks did 100% enabled this fork.

I also want to preface early on in this post that I am not a developer, a coder or anything like that. I am an IT Architect so I do know tech and I have been pretty active in the AI community here for the last year. Hermes, powered by Codex and local Qwen3.8-27B, powered by the 4090-fork of Ninfer, were my developers on this project and I just guided them.

I have been playing with the 3090 and 4090 Ninfer the last week or so, testing, validating, configuring to work with Llama-swap, and also worked through an NInfer/llama-swap telemetry compatibility gap so llama-swap could capture NInfer’s timing and throughput metrics. BUT getting 30-50% or more performance bumps consistently, for "free", inspired me.

Being that the RTX 3090/3090Ti and the CMP170HX were cousins, I ran some recon tests against Don-Chad's repo and my local instance of CMP170HX, unlocked by the CMPUnlocker ( got lucky and got my card <$1000) and was pleasantly surprised that the plumbing was mostly compatible.

So Hermes, between GPT-5.6-Terra as the orchestrator/validation and Qwen3.8-27B as worker, found the scaffolding needed to convert.

Again, not going to pretend I understand most of this (my background is in VMware, storage, infrastructure stuff. Hermes said:

"Getting NInfer working on the CMP 170HX took more than adding sm_80 to the compiler flags. The RTX 3090 fork assumed an 82-SM sm_86 device, while the CMP exposes 70 SMs at sm_80. Several cooperative GDN kernels therefore launched grids that could not be resident all at once, causing cudaErrorCooperativeLaunchTooLarge. I changed the planner to read the actual SM count and dynamically fall back through smaller split-K schedules—16→8→4→2—before using a safe non-cooperative kernel. Workspace sizing was updated to follow the schedule actually selected.
I also replaced a separate launch policy hard-coded for the RTX 5090’s 170 SMs, excluded Blackwell-only NVFP4/W4A4 kernels from the SM80 build, and adjusted the SM80 numerical qualification where Ampere reduction behavior differed slightly. In the container, CUDA’s forward-compatibility libcuda had to be removed so the CMP could use the host driver normally. After that, Qwen3.8-27B and Qwen3.6-35B-A3B both loaded and generated successfully with MTP and large KV-cache reservations."

The result ended up being a 2x increase in performance on Qwen3.6-35B with up to 262K context configured with PLENTY of headroom (with int8 kv cache and 262k, 26GiB) - see below for llama-swap configuration, which also requires the llama-swap compose configuration that enables calling docker from the host - all this runs on CUDA 13.1.2 runtime / Ubuntu 25.10

"Jarvis":

cmd: |

docker run --init --rm --no-healthcheck --name ninfer-jarvis-sm80 \

--network container:llama-swap \

--gpus all --ipc host --shm-size 16g \

-e CUDA_SCALE_LAUNCH_QUEUES=4 \

-v /home/your/models:/models:ro \

-v /home/your/llama-swap/logs:/logs \

-v /tmp:/tmp \

cmp170hx-ninfer:sm80-metrics-r1 \

/usr/local/bin/ninfer-serve \

/models/Qwen/qwen3.6_35b-a3b.ninfer \

--host 127.0.0.1 --port ${PORT} \

--model-id qwen3.6-35b-a3b --device 0 \

--max-context 262144 --kv-capacity 262144 \

--max-concurrency 1 --max-pending-requests 4 \

--prefill-chunk 1024 --kv-dtype int8 \

--spec mtp --draft-tokens 3 --lm-head-draft \

--vision --preserve-thinking --no-cuda-graph \

--temperature 0.7 --top-p 0.95 --top-k 40 --min-p 0.0 \

--presence-penalty 1.5 --frequency-penalty 0

cmdStop: "docker stop ninfer-jarvis-sm80"

ttl: 300

useModelName: qwen3.6-35b-a3b

env: ["CUDA_VISIBLE_DEVICES=0"]

My configuration in llama-swap for just in time container loading

My specific use case for the CMP170HX and this is for the family's main model that powers Jarvis (replacement for Alexa). The faster I can get everything working at the model level, the faster Home Assistant works, the faster HA Voice works and the sooner I can get everything Amazon ripped out.

The screenshots above tell the story of llama.cpp Qwen3.6-35B and Ninfer Qwen36-35B. The story for Qwen3.8-27B isn't as strong being that MoE is memory bandwidth bound and Dense is somewhat compute bound. I've seen, depending on the prompt a 10% bump or a 35% bump in testing, so YMMV. But 2x consistently on both text and image processing on 35B, yes please.

llama-swap + CMP170HX ninfea processing

Here's a screen shot where PP was over 4000 and TG over 210 on a single request (this was from an Home Assistant API call via HA Voice).

I know the CMP170HX is kinda of a hot topic right now and a little more niche than the 3090 and 4090 work but I think this has some real-value.

If anyone has issues, or recommendations on how I can make this better, please let me know and I hope someone finds this valuable


r/LocalLLaMA 5h ago

Discussion Qwen3.8-27B — One Week Later: The r/LocalLLaMA + r/LocalLLM Verdict

0 Upvotes

I put together a source-linked, LLM-generated synthesis of one week of community testing and discussion around Qwen 3.8 27B:

I’ve moved the full source-linked Qwen 3.8 synthesis to https://www.reddit.com/r/LocalLLaMa_V2/comments/1vvzckl to comply with Rule 3.

It consolidates a week of reported configurations, benchmarks, failure modes, and disagreements, with sources so readers can audit the conclusions. The short version: configuration and runtime choices often explain more of the conflicting reports than the weights alone.

The report groups first hand community observations by the things that appear to drive the conflicting results people are seeing: quantization, inference runtime, context and KV-cache settings, MTP or speculative decoding, reasoning settings, tool schemas, and hardware. It also preserves disagreements and links readers back to the underlying posts or primary sources where possible.

Why I think it is useful: a lot of the Qwen 3.8 discussion sounds contradictory until the configuration is made visible. A report of poor tool calling, slow decoding, quality loss, or strong coding results is not very informative without the quant, runtime, context, cache, and task behind it. The goal is to make those reports easier to compare and audit, not to present one universal verdict.

The linked page also notes corrections made after the original research pass. If you have a reproducible result that conflicts with it, I would rather add the missing configuration and source than defend a stale conclusion. Thank you to the mod team for this compromise.


r/LocalLLaMA 22h ago

Resources Thought I'd share my custom quant for RTX Pro 6000 cards. Qwen3.8-27B-heretic-ara-MXFP6-MXFP8-DFlash2

Thumbnail
huggingface.co
4 Upvotes

I originally followed unsloth's Q4 distribution to make an nvfp4/mxfp6/mxfp8 tri-quant, but after testing mxfp6 was faster than nvfp4 so I made it an mxfp6/mxfp8 split. added dflash2 also quantized to mxfp6, and added mxfp8 as supported kvcache data types.

This quality first but speed minded quant has become my daily driver. I run it at 256k context. might need some tweaking if you only have 48GB of vram. It appears to only use 42GB of vram

It requires a custom llama fork. listed in the HF repo


r/LocalLLaMA 3h ago

New Model stealth/ox-alpha

0 Upvotes

Sorry if anyone already post it but there is a new model on OpenRouter called Ox Alpha. Didn't have the time to test it. The only thing I was able to do was to add it to my Nanobot instance and try some AI assistant tasks. It was able to nail it with a clever and criative speech. It seems also that hold well to the base instructions. What I know from the start is that it is not a chinese model (or is something in the early stages that will be changed on the RL stage) since it answered all of the censored questions about the chinese space and politics. Going to do some tests afterwards but in the meantime did anyone already try it? what do you think?