Skip to content

vMLX 1.6.23

Choose a tag to compare

@jjang-ai jjang-ai released this 04 Aug 10:58
· 1245 commits to main since this release

vMLX 1.6.23

Fixed

  • DeepSeek V4 Flash now produces a visible answer on prompts that need a long
    response.
    The model does not reliably emit </think>, so reasoning consumed
    the entire output budget and the answer was left with nothing:

    max_tokens   reasoning chars   answer chars
        2000              7,980              0
        4000             15,980              0
        8000             31,980              0
    

    Measured on the loaded model with greedy decoding over 600 steps, </think>
    has a peak probability of 9.27e-07 and a median rank of 19,715 out of 129,280
    tokens — it is never in the top 5 and never chosen. This is model behaviour,
    not sampling and not a quantization defect.

    The engine already had a never-empty answer pass for exactly this case, but it
    could only arm when the caller supplied max_thinking_tokens, which no caller
    does, so it never ran.

    When no split is requested, DeepSeek V4 Flash now reserves part of the output
    budget for the answer, which makes that answer pass reachable. The reservation
    is a bounded reserve rather than a percentage, so deep reasoning is not taxed:

    max_tokens   thinking   reserved   thinking share
           512        256        256            50.0%
          2000       1500        500            75.0%
          8000       6000       2000            75.0%
         32000      29952       2048            93.6%
        393216     391168       2048            99.5%
    

    Budgets under 512 tokens are left unsplit. Set DSV4_ANSWER_RESERVE to choose
    your own reserve, or 0 to disable the split entirely.

    No tokens are forced or injected, sampling is unchanged, and no repetition
    penalty is involved. The split applies to Chat Completions, Responses,
    Anthropic and Ollama, streaming and non-streaming, and operates on the
    resolved output budget so it honours whatever Max Tokens shows in the app.

    Other model families are unaffected: the new path is unreachable for anything
    that is not DeepSeek V4 Flash with thinking on, verified across all 28 model
    families the registry knows and confirmed live on Laguna, Qwen 3.6 and
    MiniMax M2.7.

Separate signed and Apple-notarized Apple-silicon downloads are available for
macOS Tahoe and Sequoia-compatible systems. Tahoe is the default download.