Pull requests / #2553

#2553 setup: the low-RAM paging warning suggests the chosen family's smaller sizes, not Q2_0 for every one (#1919)

closed · @qiuzan2001 · 0 commentaires · Sur GitHub

Setup & installModels & quantsDocumentationLinux

Description

One item of #1919: "the low-RAM confirm_risk text ... 'A smaller size (Q2_0 or IQ2_XS) fits' and 'choose Q2_0 or
IQ2_XS' are printed for every family. But Q2_0 is offered only for family qwen".

**What it changes.** `confirm_paging()` in `setup.py` (the warning when a size's experts do not fit this PC's RAM and
the low-RAM mode is off) now takes the family and names its own smaller sizes through a new `smaller_sizes(model,
family, ram)`: the two smallest sizes of that family below the one asked for, preferring those that fit this RAM by
the warning's own margin (`ram >= ram_gb - 4`), else the two smallest as before. With none it says "More RAM fixes
it." and the hint "add RAM". Examples:
- Swift IQ3_S on 50 GB: `A smaller size (IQ2_XS) fits` (was `Q2_0 or IQ2_XS`; Swift has no Q2_0, and its IQ3_XXS
  wants 60 GB). On 57 GB: `IQ2_XS or IQ3_XXS`.
- Coder IQ1_M (its only size): `More RAM fixes it.` (was `Q2_0 or IQ2_XS`, neither of which the Coder has).

**What it leaves alone.** The original model's IQ3_XXS and IQ3_S warnings: checked byte for byte against
`upstream/main` (stdout and stderr of 16 runs: 30/40/50/57 GB, `--low-ram auto`/`off`). Its IQ2_XS warning now says
`Q2_0` alone instead of `Q2_0 or IQ2_XS` (it suggested the size being installed). When the warning appears, its
question, defaults and stops. The Unsloth sizes never reach this warning (they take a RAM budget first). The generic
"Q2_0 or IQ2_XS" in README.md, docs/TROUBLESHOOTING.md and docs/SECOND_GPU.md, which are about the original model.
The other #1919 items.

**How it was checked.**
- New `tools/test_setup_lowram.py` `PagingQuestion.test_the_smaller_sizes_are_the_family_s_own_1919` (the original
  model unchanged, Swift on 50 and 57 GB, the Coder, NVFP4). Fails on `main` (no `smaller_sizes`, no family).
- `python3 tools/test_setup_lowram.py`, `tools/test_setup_risk.py`, `test_setup_choices.py`, `test_setup_menu.py`,
  `test_setup_unsloth.py`, `test_setup_nvfp4.py`, `test_setup_qwen36.py`: OK. `tools/test_setup_golden.py`: the same
  8 failures (unsloth UD-Q4_K_XL rows) as on `upstream/main` without this change.
- Python 3.14, Ubuntu (Linux 7.0); no GPU needed.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Sur le site

Liens install, modèles, releases.