Multi-turn instability: FP8-quantized linear_attn recurrent projections cause agent "forgetting"

#6
by galmsx - opened

Thanks for the Ampere fix — it loads perfectly now on 2× RTX 3090, and MTP works great (mean accept length 3.36, matching the advertised 3.35).

However, I've noticed a stability issue in multi-turn agent workflows that doesn't occur with other quants of the same model (even the 4-bit ThinkingCap INT4 behaves correctly):

Observed behavior (within the first few turns, not long-context):

  • The model creates a file the user asked for, then in the next turn denies creating it and recreates it from scratch
  • It generates files, then gets "surprised" by them and removes them as if they were artifacts from a previous task
  • It sometimes reverts to working on an earlier subtask as if the last turn didn't happen

I don't see this all the time, but I've never encountered it on quants where these layers are kept in bf16 — including the official Qwen FP8 and the 4-bit ThinkingCap AutoRound.

Suspected cause: linear_attn.in_proj_qkvz and linear_attn.conv1d are quantized to FP8. These are the recurrent state projections of the Gated DeltaNet linear attention — unlike regular attention, errors
here don't just affect one token; they corrupt the hidden state that the model relies on to "remember" what it did across turns.

The official Qwen FP8 keeps these layers in bf16 for exactly this reason (336 linear_attn entries in the ignore list vs ThinkingCap FP8 only keeping in_proj_a/b).

Suggested fix: keep in_proj_qkvz and conv1d in bf16 as well. This is about ~100 MB of additional weight memory for a dramatic stability improvement in multi-turn agent use.

Happy to help test if a patched checkpoint is released.

I have noticed the third behaviour as well. I currently have the model running analysis on multiple .sav files and sometimes it will ignore my prompt and instead work again on a prompt I sent previously.

*edit to provide more context

.sav or SPSS Statistics data files are commonly used for collection medical statistics
The harness I am using to run the model is opencode v1.18.3
I was running the model on a directory filled with 100+ of these files comparing specific values between them.

I have noticed the same issues with regards to model dementia.

I have created a FP8 quant that retains linear_attn in BF16, huginnfork/ThinkingCap-Qwen3.6-27B-FP8, as well as a full attnbf16 version huginnfork/ThinkingCap-Qwen3.6-27B-FP8-attnbf16, which further leaves attention weights unquantized at bf16.

Happy to take in feedback to see if it fixes/alleviates multi-turn stability.

Sign up or log in to comment