I'm not an expert in this sort of thing, maybe you could test further, but I had severe issues with repetition using the default KV cache quantization in the provided Qwen3-Coder-Next recipe when using it to debug a fairly long Arduino sketch. Switching to "auto" (BF16) the issue was appeared to be immediately resolved. This is false, it was just luck. I've read suggestions that Qwen3.5 models may have a similar issue but I haven't actually tested those myself yet. (Irrelevant) A sample of the sort of looping I'm describing:
However, the following improvements are recommended:
**Add a way to reset emergencyShutdown (e.g., button press or timer).
**Add logging of emergency events (e.g., serial log) to help debug.
**Add a way to test the flame sensor (e.g., button press to simulate flame).
**Add a way to test the fan sensor (e.g., button press to simulate fan spin).
**Add a way to test the thermistor (e.g., button press to simulate temp change).
**Add a way to test the relay (e.g., button press to toggle relay).
**Add a way to test the LCD (e.g., button press to toggle LCD).
**Add a way to test the encoder (e.g., button press to simulate encoder move).
**Add a way to test the EEPROM (e.g., button press to read/write EEPROM).
**Add a way to test the ADC (e.g., button press to read ADC).
**Add a way to test the PWM (e.g., button press to set PWM).
**Add a way to test the I2C (e.g., button press to read/write I2C).
**Add a way to test the SPI (e.g., button press to read/write SPI).
**Add a way to test the UART (e.g., button press to read/write UART).
**Add a way to test the USB (e.g., button press to read/write USB).
**Add a way to test the Bluetooth (e.g., button press to read/write Bluetooth).
**Add a way to test the Wi-Fi (e.g, button press to read/write Wi-Fi).
**Add a way to test the GPS (e.g., button press to read/write GPS).
**Add a way to test the LoRa (e.g., button press to read/write LoRa).
**Add a way to test the Zigbee (e.g, button press to read/write Zigbee).
**Add a way to test the Thread (e.g, button press to read/write Thread).
**Add a way to test the Matter (e.g, button press to read/write Matter).
**Add a way to test the Bluetooth LE (e.g, button press to read/write Bluetooth LE).
**Add a way to test the Thread (e.g, button press to read/write Thread).
**Add a way to test the Zigbee (e.g, button press to read/write Zigbee).
**Add a way to test the LoRa (e.g, button press to read/write LoRa).
**Add a way to test the Wi-Fi (e.g, button press to read/write Wi-Fi).
**Add a way to test the GPS (e.g, button press to read/write GPS).
**Add a way to test the Bluetooth (e.g, button press to read/write Bluetooth).
**Add a way to test the USB (e.g, button press to read/write USB).
**Add a way to test the UART (e.g, button press to read/write UART).
**Add a way to test the SPI (e.g, button press to read/write SPI).
**Add a way to test the I2C (e, button press to read/write I2C).
**Add a way to test the LCD (e, button press to toggle LCD).
**Add a way to test the encoder (e, button press to simulate encoder move).
**Add a way to test the fan (e, button press to simulate fan spin).
**Add a way to test the flame (e, button press to simulate flame).
**Add a way to test the thermistor (e, button press to simulate temp change).
**Add a way to test the relay (e, button press to toggle relay).
**Add a way to test the ADC (e, button press to read ADC).
**Add a way to test the PWM (e, button press to set PWM).
**Add a way to test the EEPROM (e, button press to read/write EEPROM).
**Add a way to test the Wi-Fi (e, button press to read/write Wi-Fi).
**Add a way to test the Bluetooth (e, button press to read/write Bluetooth).
**Add a way to test the GPS (e, button press to read/write GPS).
**Add a way to test the LoRa (e, button press to read/write LoRa).
**Add a way to test the Zigbee (e, button press to read/write Zigbee).
**Add a way to test the Thread (e, button press to read/write Thread).
**Add a way to test the Matter (e, button press to read/write Matter).
**Add a way to test the Bluetooth LE (e, button press to read/write Bluetooth LE).
**Add a way to test the USB (e, button press to read/write USB).
**Add a way to test the UART (e, button press to read/write UART).
**Add a way to test the I2C (e, button press to read/write I2C).
**Add a way to test the SPI (e, button press to read/write SPI).
**Add a way to test the Wi-Fi (e, button press to read/write Wi-Fi).
**Add a way to test the GPS (e, button press to read/write GPS).
**Add a way to test the Bluetooth (e, button press to read/write Bluetooth).
**Add a way to test the LoRa (e, button press to read/write LoRa).
**Add a way to test the Zigbee (e, button press to read/write Zigbee).
**Add a way to test the Thread (e, button press to read/write Thread).
**Add a way to test the Matter (e, button press to read/write Matter).
**Add a way to test the Bluetooth LE (e, button press to read/write Bluetooth
My full launch parameters (2 stacked Asus Ascent):
./run-recipe.sh qwen3-coder-next-fp8
--no-ray
--gpu-memory-utilization 0.88
--max-num-batched-tokens 65536
--max-num-seqs 16
--enable-chunked-prefill
--attention-backend flashinfer
--max-model-len 262144
--kv-cache-dtype auto
--override-generation-config '{"temperature": 1.0, "top_p": 0.95, "top_k": 40, "min_p":0.01}'
Only change between it working consistently and failing consistently on the same prompt was the kv-cache. This turned out to be merely a string of good luck. The issue is present regardless of kv-cache quantization so this seems to actually be a deeper issue with the backend. A Windows workstation with the same prompt and parameters under Llama.cpp with Q5_K_XL GGUF functioned perfectly 50 runs out of 50. No looping, no gibberish.
The issue might only appear with fairly long prompts; I'm not comfortable sharing the specific Arduino sketch (it's dangerous in its present condition) but it's 540 lines long and about 20KB. It also does not in any way include most of the functions described in the loop above (Matter, Thread, Zigbee, Wifi, Bluetooth, GPS, etc), so this is not merely repetition but also hallucination.
A very simple prompt may not exhibit the same behavior, I can't say; both my Sparks and my workstation are going to be occupied for the next several days so I can't do any further testing immediately.
I'm not an expert in this sort of thing, maybe you could test further, but I had severe issues with repetition using the default KV cache quantization in the provided Qwen3-Coder-Next recipe when using it to debug a fairly long Arduino sketch.
Switching to "auto" (BF16) the issue was appeared to be immediately resolved.This is false, it was just luck.I've read suggestions that Qwen3.5 models may have a similar issue but I haven't actually tested those myself yet.(Irrelevant) A sample of the sort of looping I'm describing:My full launch parameters (2 stacked Asus Ascent):
./run-recipe.sh qwen3-coder-next-fp8
--no-ray
--gpu-memory-utilization 0.88
--max-num-batched-tokens 65536
--max-num-seqs 16
--enable-chunked-prefill
--attention-backend flashinfer
--max-model-len 262144
--kv-cache-dtype auto
--override-generation-config '{"temperature": 1.0, "top_p": 0.95, "top_k": 40, "min_p":0.01}'
Only change between it working consistently and failing consistently on the same prompt was the kv-cache.This turned out to be merely a string of good luck. The issue is present regardless of kv-cache quantization so this seems to actually be a deeper issue with the backend. A Windows workstation with the same prompt and parameters under Llama.cpp with Q5_K_XL GGUF functioned perfectly 50 runs out of 50. No looping, no gibberish.The issue might only appear with fairly long prompts; I'm not comfortable sharing the specific Arduino sketch (it's dangerous in its present condition) but it's 540 lines long and about 20KB. It also does not in any way include most of the functions described in the loop above (Matter, Thread, Zigbee, Wifi, Bluetooth, GPS, etc), so this is not merely repetition but also hallucination.
A very simple prompt may not exhibit the same behavior, I can't say; both my Sparks and my workstation are going to be occupied for the next several days so I can't do any further testing immediately.