Commit or version
v1.10.2 (also verified on current main). 12a5c46
Environment
Fedora 44 (Arch-based EndeavourOS host also reproduces the conversion-side issue), x86_64, Intel i7-13700HX, 31 GiB RAM, 6 GiB VRAM (RTX A1000 Laptop, engine ran CPU-only), 1 TB gen4 NVMe, gcc 15 (system gcc).
Reproduction steps
- Convert a GLM-5.3-Flash checkpoint (HF zai-org/GLM-5.3-Flash) with
coli convert.
- Diff config.json source vs converted output:
eos_token_id present in source, absent in converted output.
- Run
coli chat -- generation continues past the model's natural EOS until --ngen is exhausted.
Workaround (verified): manually copy eos_token_id into the converted config.json, after which generation terminates correctly.
Expected behavior
Converted config.json carries eos_token_id (or the engine reads generation_config.json's EOS list, as the source checkpoint provides both), so generation stops at the model's natural EOS.
Actual behavior and logs
Converted config lacks EOS ids entirely. Generation continues past natural EOS: the model produces its thinking block and then repeats/degrades until the token limit. After the manual workaround, generation terminates correctly.
Commit or version
v1.10.2 (also verified on current main). 12a5c46
Environment
Fedora 44 (Arch-based EndeavourOS host also reproduces the conversion-side issue), x86_64, Intel i7-13700HX, 31 GiB RAM, 6 GiB VRAM (RTX A1000 Laptop, engine ran CPU-only), 1 TB gen4 NVMe, gcc 15 (system gcc).
Reproduction steps
coli convert.eos_token_idpresent in source, absent in converted output.coli chat-- generation continues past the model's natural EOS until --ngen is exhausted.Workaround (verified): manually copy
eos_token_idinto the converted config.json, after which generation terminates correctly.Expected behavior
Converted config.json carries eos_token_id (or the engine reads generation_config.json's EOS list, as the source checkpoint provides both), so generation stops at the model's natural EOS.
Actual behavior and logs