stable Ollama · Research

Ollama 0.40.11 to 0.40.13: An OpenAI-Compatible Speech Endpoint, d3 Decision Models, LFM3 and DFlash2

Data graphic: timeline of three Ollama releases. v0.40.11 on 24 Oct added speech on macOS and d3 models, v0.40.12 on 27 Oct added LFM3 and d1 on Apple and DFlash2, and the latest, v0.40.13 on 28 Oct, brought LFM3 to Linux and Windows, three days and then one day apart. Speech uses phonon, a 31M-parameter English model, and LFM3 is a 1.7B text model with a 256K-token context.
OP

AI security researcher · Published Oct 31, 2026, 2:38 AM EDT

Ollama releases between 24 and 28 October add macOS speech over /v1/audio/speech, d3 decision models, LFM3 on Linux and Windows and DFlash2 drafts on MLX.

Ollama shipped three releases between 24 and 28 October 2026. Together they add local speech generation on macOS with an OpenAI-compatible endpoint, a new family of decision models, support for Liquid AI's LFM3 on every desktop platform, and faster prompt processing on Apple silicon. Anyone running Ollama locally or behind an app can pick these up by updating to v0.40.13.

What changed

v0.40.11 (24 October): speech and d3. Ollama can now generate speech on macOS. ollama run plays a text prompt or a chat model's reply aloud while the audio is still being generated, and applications can stream audio from the OpenAI-compatible /v1/audio/speech endpoint. The speech model is phonon:

ollama run phonon "Hello from Ollama."

The same release adds the d3 family, which brings vLLM Semantic Router's decision models to Ollama. Give a model text, structured state or an image and ask it to classify, answer yes or no, or score options with probabilities. Sizes are 2B, 4B, 9B and 27B:

ollama run d3 "A customer says their card was charged twice." --ask "Is this a billing issue?"

v0.40.12 (27 October): LFM3, d1, DFlash2. Liquid AI's LFM3 is a family of small models built for local agents, tool calling and structured output on a new tri-hybrid architecture. It includes lfm3 (1.7B text, 256K-token context), lfm3-vl (adds images), lfm3-audio (speech recognition, translation and text-to-speech in 18 languages) and lfm3-omni (text, images and audio). A 2B d1 decision model built on LFM3 arrives too, with d1-omni adding audio. In this release both were limited to Apple hardware.

The release also lists these changes:

  • Faster prompt processing on Apple silicon for Gemma 4, Flint and Laguna models.
  • Speculative decoding on MLX now supports DFlash2 draft models.
  • Gemma 4 keeps more detail in small images.
  • ollama launch works with OpenCode v2.
  • A fix for tool-only assistant turns from Kimi CLI.
  • Updated MLX and llama.cpp.

v0.40.13 (28 October): LFM3 everywhere. LFM3, including text-to-speech in lfm3-audio and lfm3-omni, now runs on Linux and Windows as well as Apple silicon. The release notes do not say whether d1 2B followed; the 0.40.12 note said only that Linux and Windows support was coming.

Data graphic: the Ollama OpenAI-compatible speech endpoint drawn as a flow from an app through POST /v1/audio/speech and a local Ollama localhost:11434 to wav or pcm audio, with a 4,096-character input limit, model phonon, 16-bit mono 24 kHz output, and a 400 error for other formats, speeds or instructions.

One POST to /v1/audio/speech on a local Ollama turns up to 4,096 characters into 16-bit mono 24 kHz wav or pcm audio.

The speech endpoint in practice

Ollama's speech documentation describes phonon as using Gradium's 31M-parameter English checkpoint, with voices including Zoey, Easton and Freya (ollama show phonon lists them all). The endpoint accepts model, input (up to 4,096 characters), voice and response_format, which is wav (default) or pcm. Both are 16-bit mono at 24 kHz; the WAV header carries maximum-value size fields because the length is unknown when streaming starts. Other formats, speeds or instructions return a 400 error, as does sending chat, completion or embedding requests to a speech model.

curl http://localhost:11434/v1/audio/speech \
  -H "Content-Type: application/json" \
  -d '{"model": "phonon", "input": "Hello from Ollama.", "voice": "default"}' \
  --output speech.wav

Text longer than 4,096 characters must be split by the caller; ollama run does this at paragraph and sentence breaks. Numbers, prices, URLs and email addresses are spoken in expanded form, times and numeric dates are read as written (spell out dates for natural speech), and emoji and markdown markers are skipped. The documentation states a minimum of v0.40.9, and the release notes present speech on macOS as new in v0.40.11. The docs also describe local playback on Linux and Windows; the release notes only claim macOS generation.

What to do

  1. Update to v0.40.13 to get all of the above in one step. Apple silicon users also get the Gemma 4, Flint and Laguna prompt-processing gains and DFlash2 draft-model support on MLX.
  2. If you use ollama launch with OpenCode, or Kimi CLI against Ollama, the v0.40.12 fixes apply to you.
  3. If you run LFM3 on Linux or Windows, you need v0.40.13; v0.40.12 supports it on Apple hardware only.
  4. Treat d3 as a classifier: pass the question with --ask and validate the output in your own pipeline before wiring it to automated decisions.
  5. Speech clients should chunk input under 4,096 characters and request wav or pcm only.

Sources

Keep reading

All latest →
  1. watchResearchNanbeige4.3-33B vs Qwen3.8-27B: Where the Vendor Benchmarks Diverge, and Which GGUF Fits 16, 24 or 32 GB5 min
  2. watchResearchClaude Code Now Compacts Idle Sessions Before the Cache Expires: What Changes for Pro and Max Limits4 min
  3. watchResearchGPT-6.1 Terra arrives in Codex, ChatGPT Work and GitHub Copilot at half the API price of Sol4 min
  4. watchResearchOrnith-1.5-122B vs Sage-A1.5: Which Open Coding Model Fits Your 16, 24, 32 or 128 GB Machine5 min
  5. watchResearchClaude Duet Opens to US Pro and Max by Waitlist, and Its Background Work Draws on Your Limits4 min
  6. watchResearchKimi K3.1 Pro Cuts Moonshot's API Price to $2/$10 per Million Tokens, Matching Claude Sonnet 5.5 on Paper6 min