Conversation
5 tasks
steve-m
pushed a commit
that referenced
this pull request
Aug 15, 2026
Enable the DeepSeek V4 engine on aarch64 Linux + NEON rows16 kernels
Owner
|
Merged — thank you! Your commit is in the Two small adjustments on top, in
All three features re-validated on the rebased branch (oracle gates 24/24 + 20/20, kill-switch A/B diverges as it should, banner correct). Closing since the content lives in the branch now — much appreciated, and welcome back any time. |
steve-m
added a commit
that referenced
this pull request
Aug 27, 2026
…arker Three adjustments on top of the tool-call support from fork PR #1, all measured against the official chat_template.jinja rendered via jinja2: - invoke/to_xml rendering: the template's for-loops are whitespace-trimmed on both sides, so argument pairs and nested elements concatenate with NO newlines; dropped the extra \n after <invoke name="..."> and between argument pairs (the parser was already layout-agnostic). - developer-block example: the template's full two-invoke example including the nested param-2 item block, byte-identical. - _tool_stream_markers: minimax holds the visible stream at the ]<]minimax[>[<tool_call> opener. The arch-dispatched streaming scan landed on dev after this PR's base; without a marker a streamed reply would leak the raw tool-call block to the client token by token. Validated against the jinja reference render: tools declaration, assistant tool_call block, and tool-response run all byte-identical; parsing the template-rendered block round-trips nested objects/arrays/bools with schema type coercion.
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.
Closes three of the WIP gaps listed in JustVugg#601 — the COLI_MSA kill-switch, the banner/PROF cosmetics, and (the big one) tool-call rendering for the MiniMax-M3 template.
What's in here
1.
COLI_MSA=0A/B kill-switch (colibri.c)Forces full causal attention even when the MSA indexer weights are present, by zeroing
c->msa+idx_type— the exact two lines the indexer-absent auto-detect fallback already uses, so it rides the tested full-attention path. Lets you measure MSA's long-context effect against a dense baseline without re-converting the container.2. Banner + PROF cosmetics (
colibri.c)The startup banner ("GLM C engine (glm_moe_dsa)") and the PROF attention-bound verdict ("DSA …") now name MSA/M3. The banner peeks
config.jsonmodel_typebeforemodel_init(cheap, capped read); the PROF verdict branches onm->c.arch.3. Tool calls for the MiniMax-M3 template (
openai_server.py)The dispatcher no longer returns 400 for
tools;render_chat_m3now renders the]<]minimax[>[<invoke name=…>XML dialect (developer<tools>declaration, assistanttool_calls, and]~b]tool<response>…results) andparse_tool_callsdispatches to a new M3 parser that walks the recursive XML back into OpenAItool_calls. Mirrorschat_template.jinja:to_xmlrecursion, nested objects/arrays,Noneomission, and schema type coercion via the existing_tool_param_types.Verification
COLI_MSA=0prints the kill-switch notice and diverges from the MSA oracle (full attention) as expected.make test→ 167/167 OK (13 skipped) on Apple Silicon (clang + libomp).No reviews/commits in JustVugg#601 touch these spots, so this should be a clean cherry-pick/rebase onto your branch. Happy to adjust the render/parse to match any byte-exact template conventions you've been testing against.