Skip to content

Misc. bug: Repeated command line options are discarded in router mode (--override-kv is broken) #18040

Description

@personalmountains

Name and Version

master

Operating systems

Windows

Which llama.cpp modules do you know to be affected?

llama-server

Command line

llama-server --models-dir "c:/models" --override-kv "tokenizer.ggml.add_bos_token=bool:false" --override-kv "tokenizer.ggml.add_eos_token=bool:false"

Problem description & steps to reproduce

common_params_to_map() (from f32ca51) uses a std::map, which only keeps the last command line option if multiple options with the same name are specified. Running llama-server with multiple --override-kv only keeps the last one.

First Bad Commit

f32ca51

Relevant log output

llama-server --models-dir "c:/models" --override-kv "tokenizer.ggml.add_bos_token=bool:false" --override-kv "tokenizer.ggml.add_eos_token=bool:false"

[...]

load: spawning server instance with name=(MODEL) on port 59446
load: spawning server instance with args:
load:   llama-server.exe
load:   --host
load:   127.0.0.1
load:   --override-kv
load:   tokenizer.ggml.add_eos_token=bool:false
load:   --port
load:   59446
load:   --alias
load:   (MODEL)
load:   --model
load:   (MODEL PATH)

[...]

validate_override: Using metadata override ( bool) 'tokenizer.ggml.add_eos_token' = false

Metadata

Metadata

Labels

bugSomething isn't workingregressionA regression introduced in a new build (something that was previously working correctly)server

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions