Skip to content

v0.7.41 — security + correctness + 11 new small models

Choose a tag to compare

@raullenchai raullenchai released this 19 Jun 21:26
4ba7053

First public release since v0.7.37. Bundles 8 PRs across security, correctness, and small-model support.

Security

  • Chat-template control-token injection blocked (#716). User content / tool definitions containing <|im_start|>, <|start_header_id|>, <start_of_turn>, etc. could forge system-role turns on qwen3-vl-2b + qwen3-4b-instruct-2507 chat templates. Now neutralized in one wrapper before tokenization (insert U+200B after <), covering ALL message roles + tool definitions, with fail-closed fallback.

Correctness

  • tool_choice forced function honored (#716) for hermes parser models; previously silently ignored on 5/5 tested models. Channel-routed parsers fall back to post-parse synthesis.
  • stop sequences honored on multi-token tokenizers (#716). Phi-3.5 + Gemma-3n no longer generate past requested stop strings.
  • Logprobs surfaced on MLLM / Gemma-3n (#716). Field previously dropped at RequestOutput boundary on multimodal backbones.
  • Diffusion-lane memory leak fixed (#709). Defensive break of mlx-vlm 0.6.3's eos_token_id list aliasing bug that leaked across requests on diffusiongemma-26B. Closes #698.
  • VibeThinker <think> parser (#715, #718). Case-4 rescue gate stops content/reasoning_content byte-identical duplication on truncated short queries; 3 SSE-boundary edges (split-opener completion + partial end-tag overlap + held-suffix leak).
  • MLLM prefill_step_size bumped to 8192 + HTTP 400 for oversize prompts (#713). Closes #682.

New model support (11 aliases)

#708 + #714:

  • vibethinker-1.5b-4bit, vibethinker-3b-8bit (Qwen2-derived reasoning)
  • qwen3-4b-instruct-2507-4bit, qwen3-4b-thinking-2507-4bit
  • qwen3-vl-2b-4bit (vision)
  • phi-3.5-mini-4bit, phi-4-mini-reasoning-4bit
  • granite4-h-micro-4bit
  • nanbeige4.1-3b-4bit
  • gemma-3n-e2b-4bit, gemma-3n-e4b-4bit (multimodal: text + image + audio)

All 11 mirrored on models.rapidmlx.com.

Internal

  • Autonomous-<think> detector groundwork (#716, not yet wired; replaces per-model regex dispatch in 0.7.42).
  • README model list synced (#712).

Install

```
pip install rapid-mlx==0.7.41
```

Closes #670, #682, #698, #701 follow-ups, #711 follow-ups.