ROCm / ROCm/FastFlowLM

v1.0.2 crashes (0xC0000005) loading qwen3.6-moe:35b-a3b weights downloaded with v0.9.45 — `flm pull` doesn't detect outdated weights

Open
#685 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
1.9k
Forks
152
Avg merge
4h 14m
Merged PRs (30d)
11

Description

Environment

  • FLM: upgraded v0.9.46 → v1.0.2 (Windows, fastflowlm_1.0.2_windows_amd64.zip)
  • Model: qwen3.6-moe:35b-a3b (weights downloaded under v0.9.45/0.9.46, model dir version metadata says 0.9.45)
  • Hardware: AMD Ryzen AI NPU (XDNA 2)

Steps to reproduce

  1. Upgrade FLM v0.9.46 → v1.0.2 (zip overwrite install)
  2. flm serve qwen3.6-moe:35b-a3b -c 65536

Actual behavior

On startup, FLM detects config.json as corrupted/outdated, removes it, and re-downloads the v1.0.2 config successfully:

[WARNING]  Local model qwen3.6-moe:35b-a3b version: 0.9.45 < 1.0.2
[FLM]  Checking file: config.json...
[FLM]  Fail!
[FLM]  Removing corrupted file: config.json...
[FLM]  Downloading 1/1: config.json
[FLM]  All files verified successfully.
[FLM]  Loading model: C:\Users\Administrator\.flm\models\Qwen3.6-35B-A3B-NPU2

Then the process crashes with 0xC0000005 (Access Violation) while loading the model — the remaining weight files (model.q4nx etc., from the 0.9.45 era) pass file verification but are apparently incompatible with the v1.0.2 runtime.

flm pull qwen3.6-moe:35b-a3b reports "Model already downloaded. Use --force to re-download." — the pull completeness check does not catch the weight/runtime version mismatch. flm pull --force (full 22.6 GB re-download) is the only fix.

Expected behavior

Either:

  • flm pull should detect that existing weights were produced for an older runtime version and re-download them (or at least warn), or
  • flm serve should fail gracefully with a clear "model files outdated for runtime vX, please run flm pull --force" message instead of crashing with 0xC0000005.

Workaround

flm pull --force qwen3.6-moe:35b-a3b (full re-download).

Notes

The proxy env injection (HTTPS_PROXY) works fine for the built-in downloader — thanks for adding standard curl env support.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the upgrade path with flm serve qwen3.6-moe:35b-a3b -c 65536 and compare it with flm pull qwen3.6-moe:35b-a3b. Trace the version metadata and completeness checks for config.json and model.q4nx, then inspect the model-loading entry point. Done means outdated weights are detected or the load fails with a clear recovery message instead of 0xC0000005.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
ai-infra-agents, cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.