swift: pin mlx-swift-lm 3.31.13 and mlx-audio-swift 0.1.10 for Recursive Flint

Closed
SI
3d ago
+32-30

Moves the MLX pins so the SDK can run Recursive Flint (RecursiveSI/flint-int4).

  • mlx-swift-lm 3.31.11 to 3.31.13. 3.31.12 adds the Flint model (RunanywhereAI/mlx-swift-lm#8) and 3.31.13 declares its GLM tool-call format (#9), which matters because the SDK loads models from a directory.
  • mlx-audio-swift 0.1.9 to 0.1.10, which only re-pins mlx-swift-lm to 3.31.13 (RunanywhereAI/mlx-audio-swift#5). It pins mlx-swift-lm exactly, so both have to move together.

The manifests and every Package.resolved are updated by hand to the new tags and revisions. I did not build or re-resolve, so the lockfiles still carry their old originHash; SwiftPM refreshes it on the next resolve. No runtime code changes: Flint loads through the generic MLX LLM path.

It also moves llama.cpp from runanywhere-b10453.8 to runanywhere-b10453.9 (core/VERSIONS and the version constants in the Swift, Kotlin and Flutter bindings), so the GGUF path can load Flint too. .9 adds the flint arch (upstream ggml-org/llama.cpp#30928, cherry-picked before it merged; RunanywhereAI/llama.cpp#6) and the pplx-decider v1.2 converter. It changes no public llama.cpp headers, so the engine code is untouched. I built rac_backend_llamacpp with the cpp-desktop-macos-arm64 preset against the new tag (Sherpa off), and libllama.a carries the Flint model. The unsloth flint-preview-UD-Q4_K_XL GGUF was tested separately on the fork build. iOS, Android and Windows were not built.


Summary by cubic

Pins mlx-swift-lm 3.31.13 and mlx-audio-swift 0.1.10, and bumps the llama.cpp pin to runanywhere-b10453.9, so the SDK can run Recursive Flint (RecursiveSI/flint-int4).

  • mlx-swift-lm 3.31.11 → 3.31.13: 3.31.12 adds Flint support and 3.31.13 declares its GLM tool-call format.
  • mlx-audio-swift 0.1.9 → 0.1.10 only re-pins mlx-swift-lm to 3.31.13; since it pins exactly, both move together.
  • llama.cpp runanywhere-b10453.8 → .9 adds the flint arch and the pplx-decider v1.2 converter; the binding version constants are updated to match.
  • Manifests and Package.resolved files are updated by hand; lockfiles keep their old originHash until the next SwiftPM resolve. No runtime code changes — Flint loads through the generic MLX LLM path.

Summary by CodeRabbit

  • Chores
    • Updated bundled audio, language-model, and llama.cpp runtime components to newer versions.
    • Added support for Recursive Flint and the pplx-decider v1.2 converter through the updated llama.cpp runtime.
    • Updated package metadata and version information across supported Swift, Kotlin, and Flutter integrations.