webui: stop overriding engine and package defaults from model_params.json - #415
Closed
CryptVenture wants to merge 1 commit into
Closed
webui: stop overriding engine and package defaults from model_params.json#415CryptVenture wants to merge 1 commit into
CryptVenture wants to merge 1 commit into
Conversation
…json
Every default in this file is sent on every request, so a value here is not a
fallback the engine can improve on -- it is an override. Six of them fought
the model.
- vibevoice num_inference_steps was 10 while the shipped GGUF carries
ddpm_num_inference_steps 20 (vibevoice/assets.cpp:112), so the UI silently
halved diffusion quality. The default is omitted rather than corrected:
the value is read per package, and any literal would override it again.
- ace_step shift was 3.0 against an engine default of 1.0
(include/engine/models/ace_step/types.h:42, applied in
ace_step/request_parser.cpp:231).
- firered-audio-asr max_new_tokens was 512 against an engine default of 300,
and sending it at all defeated the model's own bump to 1024 when
enable_thinking is set (firered_audio/session.cpp:162). Omitted.
- personaplex text_top_k follows top_k when unset
(personaplex/request.cpp:111); pinning it to 250 prevented that. Omitted.
- vevo2 top_k is read from the checkpoint's own generation config
(vevo2/session.cpp:898); the literal 20 overrode it. Omitted.
- fireredtts3 voice design carried the instruct path's guidance_scale of 2.0
instead of its own tuned 1.2 (fireredtts3/session.cpp:159, 170, 179).
Omitting a default is how this file says "unset": the option parser skips
empty values, so the control renders blank and sends nothing until the user
types something.
Validation:
python3 -m json.tool webui/configs/model_params.json
python3 tools/check_loader_catalog_sync.py # in sync
CryptVenture
force-pushed
the
pr/params-default-overrides
branch
from
September 3, 2026 01:16
8c6d251 to
5492bc8
Compare
Contributor
Author
|
Closing for now to stay inside the 3-concurrent-PR policy (see the discussion on #422). Nothing is wrong with the change and CI is green on it; I will reopen it as review slots free. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Split out of #374 as requested: UI defaults that override the engine or the package. The dead controls, the range fixes, the missing groups and the label text are separate PRs.
The problem
Every default in
model_params.jsonis sent on every request. A value here is not a fallback the engine can improve on — it is an override that wins over the model's own default and over anything the package ships.vibevoice.num_inference_stepsddpm_num_inference_stepsfrom the package, 20 in the shipped GGUFsrc/models/vibevoice/assets.cpp:112ace_step.shiftinclude/engine/models/ace_step/types.h:42, applied atrequest_parser.cpp:231firered-audio-asr.max_new_tokensenable_thinkingis setsrc/models/firered_audio/session.cpp:162personaplex.text_top_ktop_kwhen unsetsrc/models/personaplex/request.cpp:111vevo2.top_ksrc/models/vevo2/session.cpp:898fireredtts3-instruct-vdesign.guidance_scalesrc/models/fireredtts3/session.cpp:159, 170, 179vibevoiceis the sharpest one: the UI silently halved diffusion quality on every request.The change
Four defaults are omitted rather than corrected, because the right value is not a constant — it is read per package or derived from another option, and any literal here would override it again. Omitting a default is how this file says unset: the option parser skips empty values, so the control renders blank and sends nothing until the user types something.
Two defaults are corrected to the engine's value (
ace_step.shift, the voice-designguidance_scale).Validation
Each value was read from the source line named beside it. These families have no package installed on this machine, so they were not run end to end; a live server was used to confirm the empty-default behaviour renders and sends nothing.
Scope
One data file, six controls. No code change. The generated bundle is deliberately excluded —
catalog.tsinlines this file at frontend build time and the bundle is not byte-reproducible, so regenerating it in each PR of this split would make the PRs conflict; happy to send one bundle-regeneration PR once the series lands.