mirror of
https://github.com/LostRuins/koboldcpp.git
synced 2026-10-03 11:35:46 +00:00
* chat: add dedicated Ling 3.0 (Bailing V3) parser Ling 3.0 Flash templates pre-open the think block in the generation prompt, so the model never emits an opening <think>, and a tool call can arrive before any </think>. The generated autoparser terminated reasoning only at the close tag, which classified such tool calls entirely as reasoning_content: clients received content="" with no tool_calls and agent loops died as reasoning-only turns. Adds a specialized parser that terminates reasoning at the think close tag or at a <tool_call> start, mirroring the hand-written Qwen3-Coder and Kimi K3 parsers and the reference vLLM/SGLang Ling3 parser (which treats <tool_call> as an implicit reasoning terminator). Detection is gated on the <role>...</role> section markers, unique to this family among the tagged-argument templates. Adds the Ling 3.0 Flash chat template and tests covering the unclosed-think tool call (full parse and streaming), healthy closed-think paths, trailing prose, parallel calls, marker-like strings in argument values, string-union and non-string argument types, and reasoning_format=none. Assisted-by: Kimi Code * tests : move Ling 3.0 test --------- Co-authored-by: aetherbird <aetherbird@users.noreply.github.com> Co-authored-by: Alde Rojas <hello@alde.dev> |
||
|---|---|---|
| .. | ||
| templates | ||
| .editorconfig | ||
| ggml-vocab-aquila.gguf | ||
| ggml-vocab-baichuan.gguf | ||
| ggml-vocab-bert-bge.gguf | ||
| ggml-vocab-bert-bge.gguf.inp | ||
| ggml-vocab-bert-bge.gguf.out | ||
| ggml-vocab-command-r.gguf | ||
| ggml-vocab-command-r.gguf.inp | ||
| ggml-vocab-command-r.gguf.out | ||
| ggml-vocab-deepseek-coder.gguf | ||
| ggml-vocab-deepseek-coder.gguf.inp | ||
| ggml-vocab-deepseek-coder.gguf.out | ||
| ggml-vocab-deepseek-llm.gguf | ||
| ggml-vocab-deepseek-llm.gguf.inp | ||
| ggml-vocab-deepseek-llm.gguf.out | ||
| ggml-vocab-falcon.gguf | ||
| ggml-vocab-falcon.gguf.inp | ||
| ggml-vocab-falcon.gguf.out | ||
| ggml-vocab-gemma-4.gguf | ||
| ggml-vocab-gemma-4.gguf.inp | ||
| ggml-vocab-gemma-4.gguf.out | ||
| ggml-vocab-gpt-2.gguf | ||
| ggml-vocab-gpt-2.gguf.inp | ||
| ggml-vocab-gpt-2.gguf.out | ||
| ggml-vocab-gpt-neox.gguf | ||
| ggml-vocab-llama-bpe.gguf | ||
| ggml-vocab-llama-bpe.gguf.inp | ||
| ggml-vocab-llama-bpe.gguf.out | ||
| ggml-vocab-llama-spm.gguf | ||
| ggml-vocab-llama-spm.gguf.inp | ||
| ggml-vocab-llama-spm.gguf.out | ||
| ggml-vocab-mpt.gguf | ||
| ggml-vocab-mpt.gguf.inp | ||
| ggml-vocab-mpt.gguf.out | ||
| ggml-vocab-nomic-bert-moe.gguf | ||
| ggml-vocab-phi-3.gguf | ||
| ggml-vocab-phi-3.gguf.inp | ||
| ggml-vocab-phi-3.gguf.out | ||
| ggml-vocab-qwen2.gguf | ||
| ggml-vocab-qwen2.gguf.inp | ||
| ggml-vocab-qwen2.gguf.out | ||
| ggml-vocab-qwen35.gguf | ||
| ggml-vocab-qwen35.gguf.inp | ||
| ggml-vocab-qwen35.gguf.out | ||
| ggml-vocab-refact.gguf | ||
| ggml-vocab-refact.gguf.inp | ||
| ggml-vocab-refact.gguf.out | ||
| ggml-vocab-starcoder.gguf | ||
| ggml-vocab-starcoder.gguf.inp | ||
| ggml-vocab-starcoder.gguf.out | ||