LocalAI v2.23.0stable Released Nov 10, 2024
โš ๏ธ Breaking Change Impact Score: 7/10

LocalAI v2.23.0 โ€” Release Notes & Engineering Impact

Source available โ€” automated, not human-reviewed

Component: localai ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Breaking-change evidence from the source

  • Breaking Changes ๐Ÿ›  * feat(templates): use a single template for multimodals messages by @mudler in https://github.com/mudler/LocalAI/pull/3892 ### Bug fixes :bug:
Read the original context โ†—
Source flags breaking changes โ€” review applicability
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

LocalAI v2.23.0. Source highlight: feat(templates): use a single template for multimodals messages

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

โš ๏ธ Breaking Changes & Deprecations (1)

  • Breaking Changes ๐Ÿ›  * feat(templates): use a single template for multimodals messages by @mudler in https://github.com/mudler/LocalAI/pull/3892 ### Bug fixes :bug:

โœจ New Features & Capabilities (6)

  • feat(templates): use a single template for multimodals messages
  • feat(vllm): expose 'load_format'
  • feat(tts): Implement naive response_format for tts endpoint
  • feat(diffusers): allow multiple lora adapters
  • feat(ui): move model detailed info to a modal
  • feat: allow to disable '/metrics' endpoints for local stats

โšก Performance & Enhancements (1)

  • chore(p2p): enhance logging

๐Ÿ”ง Bug Fixes & Patches (6)

  • fix(parler-tts): use latest audiotools
  • fix(parler-tts): pin grpcio-tools
  • fix(gallery): overrides for parler-tts in the gallery
  • fix(grpc): pass by modelpath
  • fix(tts): correctly pass backend config when generating model options
  • fix(phi3-vision): add multimodal template
๐Ÿ“„ View Raw Release Notes (Original Developer Log)
<!-- Release notes generated using configuration in .github/release.yml at master --> ## What's Changed ### Breaking Changes ๐Ÿ›  * feat(templates): use a single template for multimodals messages by @mudler in https://github.com/mudler/LocalAI/pull/3892 ### Bug fixes :bug: * fix(parler-tts): use latest audiotools by @mudler in https://github.com/mudler/LocalAI/pull/3954 * fix(parler-tts): pin grpcio-tools by @mudler in https://github.com/mudler/LocalAI/pull/3960 * fix(gallery): overrides for parler-tts in the gallery by @mudler in https://github.com/mudler/LocalAI/pull/3962 * fix(grpc): pass by modelpath by @mudler in https://github.com/mudler/LocalAI/pull/4023 * fix(tts): correctly pass backend config when generating model options by @mudler in https://github.com/mudler/LocalAI/pull/4091 ### Exciting New Features ๐ŸŽ‰ * feat(vllm): expose 'load_format' by @mudler in https://github.com/mudler/LocalAI/pull/3943 * feat(tts): Implement naive response_format for tts endpoint by @n-Arno in https://github.com/mudler/LocalAI/pull/4035 * feat(diffusers): allow multiple lora adapters by @mudler in https://github.com/mudler/LocalAI/pull/4081 * feat(ui): move model detailed info to a modal by @mudler in https://github.com/mudler/LocalAI/pull/4086 * feat: allow to disable '/metrics' endpoints for local stats by @mudler in https://github.com/mudler/LocalAI/pull/3945 * feat: add flux single file support by @sozercan in https://github.com/mudler/LocalAI/pull/3959 ### ๐Ÿง  Models * fix(phi3-vision): add multimodal template by @mudler in https://github.com/mudler/LocalAI/pull/3944 * models(gallery): add l3.1-moe-2x8b-v0.2 by @mudler in https://github.com/mudler/LocalAI/pull/3969 * models(gallery): add llama3.1-darkstorm-aspire-8b by @mudler in https://github.com/mudler/LocalAI/pull/3970 * models(gallery): add llama-3.2-sun-2.5b-chat by @mudler in https://github.com/mudler/LocalAI/pull/3971 * models(gallery): add darkest-muse-v1 by @mudler in https://github.com/mudler/LocalAI/pull/3973 * models(gallery): add llama-3.2-3b-instruct-uncensored by @mudler in https://github.com/mudler/LocalAI/pull/3974 * models(gallery): add thebeagle-v2beta-32b-mgs by @mudler in https://github.com/mudler/LocalAI/pull/3975 * models(gallery): add l3.1-70blivion-v0.1-rc1-70b-i1 by @mudler in https://github.com/mudler/LocalAI/pull/3977 * models(gallery): add llama-3.1-hawkish-8b by @mudler in https://github.com/mudler/LocalAI/pull/3978 * models(gallery): add quill-v1 by @mudler in https://github.com/mudler/LocalAI/pull/3980 * models(gallery): add delirium-v1 by @mudler in https://github.com/mudler/LocalAI/pull/3981 * models(gallery): add magnum-v4-9b by @mudler in https://github.com/mudler/LocalAI/pull/3983 * models(gallery): add llama-3-whiterabbitneo-8b-v2.0 by @mudler in https://github.com/mudler/LocalAI/pull/3984 * models(gallery): add l3-nymeria-maid-8b by @mudler in https://github.com/mudler/LocalAI/pull/3985 * models(gallery): add meraj-mini by @mudler in https://github.com/mudler/LocalAI/pull/3987 * models(gallery): add granite-3.0-1b-a400m-instruct by @mudler in https://github.com/mudler/LocalAI/pull/3994 * models(gallery): add moe-girl-800ma-3bt by @mudler in https://github.com/mudler/LocalAI/pull/3995 * models(gallery): add spiral-da-hyah-qwen2.5-72b-i1 by @mudler in https://github.com/mudler/LocalAI/pull/4022 * models(gallery): add llama3.1-bestmix-chem-einstein-8b by @mudler in https://github.com/mudler/LocalAI/pull/4028 * models(gallery): add starcannon-unleashed-12b-v1.0 by @mudler in https://github.com/mudler/LocalAI/pull/4032 * models(gallery): add smollm2-1.7b-instruct by @mudler in https://github.com/mudler/LocalAI/pull/4033 * models(gallery): add control-8b-v1.1 by @mudler in https://github.com/mudler/LocalAI/pull/4039 * models(gallery): add whiterabbitneo-2.5-qwen-2.5-coder-7b by @mudler in https://github.com/mudler/LocalAI/pull/4042 * models(gallery): add llama-3.1-whiterabbitneo-2-8b by @mudler in https://github.com/mudler/LocalAI/pull/4043 * models(gallery): add g2-9b-aletheia-v1 by @mudler in https://github.com/mudler/LocalAI/pull/4056 * models(gallery): add cybertron-v4-qw7b-mgs by @mudler in https://github.com/mudler/LocalAI/pull/4063 * models(gallery): add g2-9b-sugarquill-v0 by @mudler in https://github.com/mudler/LocalAI/pull/4073 * chore(model-gallery): :arrow_up: update checksum by @localai-bot in https://github.com/mudler/LocalAI/pull/4080 * models(gallery): add q25-1.5b-veolu by @mudler in https://github.com/mudler/LocalAI/pull/4088 * models(gallery): add valor-7b-v0.1 by @mudler in https://github.com/mudler/LocalAI/pull/4089 * models(gallery): add tess-r1-limerick-llama-3.1-70b by @mudler in https://github.com/mudler/LocalAI/pull/4095 * models(gallery): add llenn-v0.75-qwen2.5-72b-i1 by @mudler in https://github.com/mudler/LocalAI/pull/4098 * models(gallery): add eva-qwen2.5-14b-v0.2 by @mudler in https://github.com/mudler/LocalAI/pull/4099 * models(gallery): add opencoder-8b instruct and base by @mudler in https://github.com/mudler/LocalAI/pull/4101 * models(gallery): add opencoder-1.5b instruct and base by @mudler in https://github.com/mudler/LocalAI/pull/4102 * models(gallery): add tissint-14b-128k-rp by @mudler in https://github.com/mudler/LocalAI/pull/4103 * models(gallery): add tq2.5-14b-sugarquill-v1 by @mudler in https://github.com/mudler/LocalAI/pull/4104 ### ๐Ÿ“– Documentation and examples * docs: add Homebrew as an option to install on MacOS by @mauromorales in https://github.com/mudler/LocalAI/pull/3946 * chore: drop examples folder now that LocalAI-examples has been created by @dave-gray101 in https://github.com/mudler/LocalAI/pull/4017 ### ๐Ÿ‘’ Dependencies * chore(deps): Bump llama-index from 0.11.17 to 0.11.19 in /examples/chainlit by @dependabot in https://github.com/mudler/LocalAI/pull/3893 * chore(deps): Bump weaviate-client from 4.8.1 to 4.9.0 in /examples/chainlit by @dependabot in https://github.com/mudler/LocalAI/pull/3894 * chore(deps): Bump langchain from 0.3.3 to 0.3.4 in /examples/functions by @dependabot in https://github.com/mudler/LocalAI/pull/3900 * chore(deps): Bump langchain-community from 0.3.2 to 0.3.3 in /examples/langchain/langchainpy-localai-example by @dependabot in https://github.com/mudler/LocalAI/pull/3923 * chore(deps): Bump docs/themes/hugo-theme-relearn from `007cc20` to `06e70da` by @dependabot in https://github.com/mudler/LocalAI/pull/3932 * chore(deps): Bump sqlalchemy from 2.0.35 to 2.0.36 in /examples/langchain/langchainpy-localai-example by @dependabot in https://github.com/mudler/LocalAI/pull/3920 * chore(deps): Bump yarl from 1.15.2 to 1.15.5 in /examples/langchain/langchainpy-localai-example by @dependabot in https://github.com/mudler/LocalAI/pull/3921 * chore(deps): Bump openai from 1.51.2 to 1.52.0 in /examples/langchain-chroma by @dependabot in https://github.com/mudler/LocalAI/pull/3908 * chore(deps): Bump llama-index from 0.11.17 to 0.11.19 in /examples/langchain-chroma by @dependabot in https://github.com/mudler/LocalAI/pull/3907 * chore(deps): Bump marshmallow from 3.22.0 to 3.23.0 in /examples/langchain/langchainpy-localai-example by @dependabot in https://github.com/mudler/LocalAI/pull/3917 * chore(deps): Bump openai from 1.51.2 to 1.52.0 in /examples/functions by @dependabot in https://github.com/mudler/LocalAI/pull/3901 * chore(deps): Bump yarl from 1.15.5 to 1.16.0 in /examples/langchain/langchainpy-localai-example by @dependabot in https://github.com/mudler/LocalAI/pull/3938 * chore(deps): Bump openai from 1.51.2 to 1.52.2 in /examples/langchain/langchainpy-localai-example by @dependabot in https://github.com/mudler/LocalAI/pull/3993 * chore(deps): Bump torchvision from 0.18.1+rocm6.0 to 0.20.0+cu118 in /backend/python/diffusers by @dependabot in https://github.com/mudler/LocalAI/pull/3997 * chore(deps): Bump docs/themes/hugo-theme-relearn from `06e70da` to `28fce6b` by @dependabot in https://github.com/mudler/LocalAI/pull/3986 * chore(deps): Bump llama-index from 0.11.19 to 0.11.20 in /examples/langchain-chroma by @dependabot in https://github.com/mudler/LocalAI/pull/3988 * chore(deps): Bump openai from 1.52.0 to 1.52.2 in /examples/langchain-chroma by @dependabot in https://github.com/mudler/LocalAI/pull/3989 * chore(deps): Bump llama-index from 0.11.19 to 0.11.20 in /examples/chainlit by @dependabot in https://github.com/mudler/LocalAI/pull/3990 * chore(deps): Bump tqdm from 4.66.5 to 4.66.6 in /examples/langchain/langchainpy-localai-example by @dependabot in https://github.com/mudler/LocalAI/pull/3991 * chore(deps): Bump frozenlist from 1.4.1 to 1.5.0 in /examples/langchain/langchainpy-localai-example by @dependabot in https://github.com/mudler/LocalAI/pull/3992 * chore(deps): Bump openai from 1.52.0 to 1.52.2 in /examples/functions by @dependabot in https://github.com/mudler/LocalAI/pull/4000 * chore(deps): bump grpcio to 1.67.1 by @mudler in https://github.com/mudler/LocalAI/pull/4009 * chore(deps): bump llama-cpp to 8f275a7c4593aa34147595a90282cf950a853690 by @mudler in https://github.com/mudler/LocalAI/pull/4016 ### Other Changes * docs: :arrow_up: update docs version mudler/LocalAI by @localai-bot in https://github.com/mudler/LocalAI/pull/3936 * chore: :arrow_up: Update ggerganov/llama.cpp to `e01c67affe450638162a1a457e2e57859ef6ebf0` by @localai-bot in https://github.com/mudler/LocalAI/pull/3937 * chore: update go-piper to latest by @dave-gray101 in https://github.com/mudler/LocalAI/pull/3939 * chore: :arrow_up: Update ggerganov/llama.cpp to `c8c07d658a6cefc5a50cfdf6be7d726503612303` by @localai-bot in https://github.com/mudler/LocalAI/pull/3940 * chore: :arrow_up: Update ggerganov/whisper.cpp to `0fbaac9c891055796456df7b9122a70c220f9ca1` by @localai-bot in https://github.com/mudler/LocalAI/pull/3950 * chore: :arrow_up: Update ggerganov/llama.cpp to `0a1c750c80147687df267114c81956757cc14382` by @localai-bot in https://github.com/mudler/LocalAI/pull/3948 * chore: :arrow_up: Update ggerganov/llama.cpp to `958367bf530d943a902afa1ce1c342476098576b` by @localai-bot in https://github.com/mudler/LocalAI/pull/3956 * chore(python): update backend sample to consume grpcio from venv by @mudler in https://github.com/mudler/LocalAI/pull/3961 * fix(ci): drop grpcio-tools pin to apple CI test run by @mudler in https://github.com/mudler/LocalAI/pull/3964 * chore: :arrow_up: Update ggerganov/llama.cpp to `668750357e66bfa3d1504b65699f5a0dfe3cb7cb` by @localai-bot in https://github.com/mudler/LocalAI/pull/3965 * fix(parler-tts): pin protobuf by @mudler in https://github.com/mudler/LocalAI/pull/3963 * chore: change url to github repository by @mudler in https://github.com/mudler/LocalAI/pull/3972 * chore: :arrow_up: Update ggerganov/llama.cpp to `cc2983d3753c94a630ca7257723914d4c4f6122b` by @localai-bot in https://github.com/mudler/LocalAI/pull/3976 * chore: :arrow_up: Update ggerganov/llama.cpp to `8841ce3f439de6e770f70319b7e08b6613197ea7` by @localai-bot in https://github.com/mudler/LocalAI/pull/3979 * Revert "chore(deps): Bump torchvision from 0.18.1+rocm6.0 to 0.20.0+cu118 in /backend/python/diffusers" by @mudler in https://github.com/mudler/LocalAI/pull/4008 * chore: :arrow_up: Update ggerganov/llama.cpp to `61715d5cc83a28181df6a641846e4f6a740f3c74` by @localai-bot in https://github.com/mudler/LocalAI/pull/4006 * chore: :arrow_up: Update ggerganov/whisper.cpp to `d4bc413505b2fba98dffbb9a176ddd1b165941d0` by @localai-bot in https://github.com/mudler/LocalAI/pull/4005 * chore: :arrow_up: Update ggerganov/whisper.cpp to `55e422109b3504d1a824935cc2681ada7ee9fd38` by @localai-bot in https://github.com/mudler/LocalAI/pull/4015 * chore(tests): expand timeout by @mudler in https://github.com/mudler/LocalAI/pull/4019 * chore: :arrow_up: Update ggerganov/llama.cpp to `61408e7fad082dc44a11c8a9f1398da4837aad44` by @localai-bot in https://github.com/mudler/LocalAI/pull/4021 * chore: :arrow_up: Update ggerganov/whisper.cpp to `19dca2bb1464326587cbeb7af00f93c4a59b01fd` by @localai-bot in https://github.com/mudler/LocalAI/pull/4020 * chore(tests): bump timeouts by @mudler in https://github.com/mudler/LocalAI/pull/4024 * chore: :arrow_up: Update ggerganov/llama.cpp to `ab3d71f97f5b2915a229099777af00d3eada1d24` by @localai-bot in https://github.com/mudler/LocalAI/pull/4025 * chore: :arrow_up: Update ggerganov/whisper.cpp to `aa037a60f32018f32e54be3531ec6cc7802899eb` by @localai-bot in https://github.com/mudler/LocalAI/pull/4026 * chore: :arrow_up: Update ggerganov/whisper.cpp to `0377596b77a3602e36430320cbe45f8c305ef04a` by @localai-bot in https://github.com/mudler/LocalAI/pull/4031 * chore: :arrow_up: Update ggerganov/llama.cpp to `418f5eef262cea07c2af4f45ee6a88d882221fcb` by @localai-bot in https://github.com/mudler/LocalAI/pull/4030 * chore(docs): add top-header partial by @mudler in https://github.com/mudler/LocalAI/pull/4034 * chore: :arrow_up: Update ggerganov/llama.cpp to `42cadc74bda60afafb45b71b1a39d150ede0ed4d` by @localai-bot in https://github.com/mudler/LocalAI/pull/4037 * docs: Update documentation for text-to-audio feature regarding response_format by @n-Arno in https://github.com/mudler/LocalAI/pull/4038 * chore: :arrow_up: Update ggerganov/llama.cpp to `9830b6923b61f1e652a35afeac77aa5f886dad09` by @localai-bot in https://github.com/mudler/LocalAI/pull/4040 * chore: :arrow_up: Update mudler/go-piper to `e10ca041a885d4a8f3871d52924b47792d5e5aa0` by @localai-bot in https://github.com/mudler/LocalAI/pull/3949 * chore: :arrow_up: Update ggerganov/llama.cpp to `9f409893519b4a6def46ef80cd6f5d05ac0fb157` by @localai-bot in https://github.com/mudler/LocalAI/pull/4041 * chore: :arrow_up: Update ggerganov/llama.cpp to `d5a409e57fe8bd24fef597ab8a31110d390a6392` by @localai-bot in https://github.com/mudler/LocalAI/pull/4079 * chore: :arrow_up: Update ggerganov/llama.cpp to `b8deef0ec0af5febac1d2cfd9119ff330ed0b762` by @localai-bot in https://github.com/mudler/LocalAI/pull/4083 * fix(diffusers): correctly parse height and width request without parametrization by @mudler in https://github.com/mudler/LocalAI/pull/4082 * chore: hide raw safetensors files by @mudler in https://github.com/mudler/LocalAI/pull/4085 * chore: :arrow_up: Update ggerganov/llama.cpp to `5c333e014059122245c318e7ed4ec27d1085573c` by @localai-bot in https://github.com/mudler/LocalAI/pull/4087 * chore(p2p): enhance logging by @mudler in https://github.com/mudler/LocalAI/pull/4090 * chore: :arrow_up: Update ggerganov/llama.cpp to `97404c4a0374cac45c8c34a32d13819de1dd023d` by @localai-bot in https://github.com/mudler/LocalAI/pull/4093 * chore: :arrow_up: Update ggerganov/whisper.cpp to `31aea563a83803c710691fed3e8d700e06ae6788` by @localai-bot in https://github.com/mudler/LocalAI/pull/4092 * fix(container-images): install uv as system package by @mudler in https://github.com/mudler/LocalAI/pull/4094 * chore(refactor): drop unnecessary code in loader by @mudler in https://github.com/mudler/LocalAI/pull/4096 * chore: :arrow_up: Update ggerganov/llama.cpp to `ec450d3bbf9fdb3cd06b27c00c684fd1861cb0cf` by @localai-bot in https://github.com/mudler/LocalAI/pull/4097 * chore: :arrow_up: Update ggerganov/llama.cpp to `6423c65aa8be1b98f990cf207422505ac5a441a1` by @localai-bot in https://github.com/mudler/LocalAI/pull/4100 ## New Contributors * @n-Arno made their first contribution in https://github.com/mudler/LocalAI/pull/4035 **Full Changelog**: https://github.com/mudler/LocalAI/compare/v2.22.1...v2.23.0