v4.5.1
📦 localaiView on GitHub →
✨ 11 features🐛 12 fixes🔧 11 symbols
Summary
This release focuses heavily on expanding hardware compatibility, particularly adding Darwin/Metal (MPS) support across many backends, alongside significant UI enhancements and various bug fixes related to configuration and distributed processing.
✨ New Features
- Added support for darwin/metal (MPS) build for the vllm backend via vllm-metal (MLX).
- Enabled single-build ggml CPU_ALL_VARIANTS for llama-cpp, supporting x86, arm64, and apple architectures.
- Introduced cpu_moe/n_cpu_moe options and generic upstream-flag passthrough for llama-cpp backends.
- Added darwin/metal builds for liquid-audio backend.
- Added darwin/metal builds for trl backend.
- Added darwin/Metal builds for several vision C++/ggml backends: depth-anything, locate-anything, rfdetr-cpp, and sam3-cpp.
- Added darwin build for the localvqe backend (acoustic echo cancellation).
- Added darwin/Metal build for the privacy-filter backend.
- When PreferDevelopmentBackends is used, the development image is now installed as the primary image.
- UI enhancements including last-used model tracking, polling improvements, starter models display, usage cost visualization, and accessibility improvements.
- UI now features data-driven hardware model recommendations and improved gallery surfacing.
🐛 Bug Fixes
- URL-decoded collection/agent name path parameters.
- Fixed tracking in-flight requests for SoundDetection in distributed mode.
- Loaded default PII detectors at startup and added support for LOCALAI_PII_DEFAULT_DETECTORS environment variable.
- Resolved model aliases for sub-models within realtime pipelines.
- Enabled darwin/metal support for the supertonic backend.
- Enabled darwin/metal support across purego Go backends.
- Fixed configuration logic to gate parallel-slot default based on per-device VRAM.
- Fixed configuration logic for per-device VRAM headroom defaults for Blackwell.
- Corrected scheme/host on self-referential URLs when running behind an HTTPS reverse proxy.
- Hardened SQLite DSN and made advisory locks dialect-aware.
- Quoted $CURDIR in run.sh to fix backend execution in paths containing spaces.
- Ensured the package/ directory is shipped for darwin go backend images.