Skip to content

mlx-vlm text lane: small multimodal models (gemma-4-e2b, Ministral-3-2512) return incoherent text / hang #1367

Description

@raullenchai

Summary

Serving certain small multimodal checkpoints for plain text through the mlx-vlm (VLM) lane produces broken output. Found while trying to add Gemma/Mistral legs to the L1 CI smoke (PR #1366) — their only small models are multimodal.

Evidence — real macos-14 (M1) hosted runner, rapid-mlx 0.11.4, mlx-vlm 0.6.3

[vision] installed → auto-routed to the mlx-vlm lane:

--no-mllm (force text-only mlx-lm lane):

  • Ministral-3-2512: 5/6 golden (one flaky miss) — usable.
  • gemma-4-e2b: still 0/6 on macos-14 (M1) / 0.11.4 — but 6/6 on local M3 / rapid-mlx 0.11.0. So gemma-4-e2b text-lane coherence diverges by engine-version and/or hardware.

Impact

Repro

pip install -e ".[vision]"
rapid-mlx serve gemma-4-e2b-4bit  --port 8123 --no-thinking   # ask "capital of Japan?" -> garbage
rapid-mlx serve ministral-3b-4bit --port 8123 --no-thinking   # first completion hangs

Asks

  1. Fix/triage the mlx-vlm text-generation path for these small VLMs (or make a text-only request fall back to the LM backbone instead of hanging/garbling).
  2. Root-cause the gemma-4-e2b text-lane 0/6 on 0.11.4/M1 vs 6/6 on 0.11.0/M3 — regression vs an M1 Metal-kernel issue.

Workaround

Serve with --no-mllm to force the text-only mlx-lm lane (fixes Ministral; gemma-4-e2b still needs ask #2).

Filed from the release-flow L1 gate work (PR #1366).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions