{"slug": "ollama-0-40-13-puts-liquid-lfm3-audio-on-windows-local-stt-tts-that-fits-in-2-gb", "title": "Ollama 0.40.13 puts Liquid LFM3 audio on Windows: local STT/TTS that fits in 2 GB", "summary": "Ollama v0.40.13, released 28–29 October 2026, added Linux and Windows support for Liquid AI's LFM3 family, including the lfm3-audio and lfm3-omni variants that handle speech recognition, translation and text-to-speech across roughly 18 languages. The audio checkpoints run in about 1.5–2.4 GB depending on quantization, letting developers serve local STT/TTS through Ollama's OpenAI-compatible /v1/audio/transcriptions and /v1/audio/speech endpoints on a Windows desktop instead of a cloud API. The release notes state: \"Liquid AI's LFM3 models, including text-to-speech in lfm3-audio and lfm3-omni, now run on Linux and Windows as well as Apple silicon.", "body_md": "On 28–29 October 2026 Ollama shipped v0.40.13 and explicitly added Linux and Windows support for Liquid AI’s LFM3 family. That includes `lfm3-audio` and `lfm3-omni`, the variants that do speech recognition, translation, and text-to-speech across roughly 18 languages inside a ~2B parameter envelope.\n\nThe text-only checkpoint is already tiny (around 1.1 GB at Q4_K_M). The audio variants add a projector or audio encoder and still land in the 1.5–2.4 GB range depending on quant and runtime. For a Windows desktop that already runs an overlay or a call assistant, that is the difference between “needs a dedicated GPU and 16 GB VRAM” and “runs on the same machine as the rest of the app.”\n\nMost production STT still routes through a cloud endpoint. That is fine until you care about:\n\nA 2B speech model that can be pulled with one command and served on localhost changes the design space. You can keep a local model for the first pass (VAD + rough transcript + language ID) and only escalate to a larger cloud model when confidence is low or the domain requires specialized jargon.\n\nOllama’s release notes are short and factual: “Liquid AI’s LFM3 models, including text-to-speech in lfm3-audio and lfm3-omni, now run on Linux and Windows as well as Apple silicon.” The practical implication is that the same GGUF-ish workflow that previously forced you onto llama.cpp or an Apple-only MLX path now works through the Ollama HTTP API on a Windows box.\n\nUpdate Ollama (installer or `ollama` service), then:\n\n```\nollama pull lfm3-audio\nollama run lfm3-audio\n```\n\nFor the omni variant that can take text, image, or audio and emit text or speech:\n\n```\nollama pull lfm3-omni\nollama run lfm3-omni\n```\n\nThe library page documents 16 kHz input for audio and 24 kHz output for speech. Context is 32K tokens for the audio models (far less than the 256K text-only checkpoint). That is plenty for a rolling transcript window of a few minutes, but not for dumping an entire two-hour recording in one shot.\n\nIf you are already talking to Ollama from Python for chat completions, the audio path is still young. The OpenAI-compatible `/v1/audio/transcriptions` and `/v1/audio/speech` endpoints are the intended surface; real-time bidirectional streaming is still catching up in most local runtimes. For a first integration you stream short chunks (1–4 s) after VAD, get the partial or final text, and decide whether to re-prompt a larger model.\n\nA minimal client sketch (not production-ready):\n\n``` python\nimport requests\n\ndef transcribe_chunk(pcm_bytes: bytes, model: str = \"lfm3-audio\") -> str:\n    # Assumes you have already converted to the expected sample rate / format\n    files = {\"file\": (\"chunk.wav\", pcm_bytes, \"audio/wav\")}\n    data = {\"model\": model}\n    r = requests.post(\"http://127.0.0.1:11434/v1/audio/transcriptions\", files=files, data=data, timeout=10)\n    r.raise_for_status()\n    return r.json().get(\"text\", \"\")\n```\n\nYou still own the capture, the VAD, the resampling, and the decision of when a turn is complete. The model just turns the audio into text (or speech) locally.\n\nA few days earlier NVIDIA released Nemotron 3.5 Transcribe, a 30B-A4B speech LLM that can do long-form, multi-speaker, instruction-controlled transcription in 40 languages. That model is impressive on the Open ASR leaderboard, but it is not a 2 GB drop-in for a live Windows process. The LFM3 audio checkpoints are the opposite end of the spectrum: small enough to keep resident, fast enough on CPU or a modest GPU, and explicitly aimed at on-device agentic use.\n\nTradeoffs you will hit:\n\nFor a Windows call assistant the interesting architecture is therefore layered:\n\nThat is exactly the shape of the problem Talkaside solves on the Windows side: keep the capture path tight, the overlay out of screen-share, and the language barrier manageable without forcing every millisecond of audio through a remote API.\n\nOllama giving you the model is the easy part. The hard parts remain:\n\nSmall local models lower the cost of experimenting with those pieces. You can iterate on the capture and VAD logic without burning API budget, then plug in a stronger remote model only where it actually moves the needle.\n\nIf you are already running Ollama on a Windows machine for coding agents, pulling `lfm3-audio` is now a one-line experiment. The resulting local STT/TTS path is not a replacement for every cloud endpoint, but it is finally small and cross-platform enough to be part of a real desktop audio pipeline instead of a research curiosity.\n\nI'm building [Talkaside](https://talkaside.com/), a Windows app for job interviews and calls in another language.\n\n*Drafted with AI assistance from this project's code and logs.*", "url": "https://wpnews.pro/news/ollama-0-40-13-puts-liquid-lfm3-audio-on-windows-local-stt-tts-that-fits-in-2-gb", "canonical_source": "https://dev.to/madnessbrains_i/ollama-04013-puts-liquid-lfm3-audio-on-windows-local-stttts-that-fits-in-2-gb-586l", "published_at": "2026-10-30 05:13:01+00:00", "updated_at": "2026-10-30 05:19:24.139734+00:00", "lang": "en", "topics": ["ai-tools", "large-language-models", "natural-language-processing", "ai-products", "developer-tools"], "entities": ["Ollama", "Liquid AI", "LFM3", "lfm3-audio", "lfm3-omni", "NVIDIA", "Nemotron 3.5 Transcribe", "Talkaside"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/ollama-0-40-13-puts-liquid-lfm3-audio-on-windows-local-stt-tts-that-fits-in-2-gb", "markdown": "https://wpnews.pro/news/ollama-0-40-13-puts-liquid-lfm3-audio-on-windows-local-stt-tts-that-fits-in-2-gb.md", "text": "https://wpnews.pro/news/ollama-0-40-13-puts-liquid-lfm3-audio-on-windows-local-stt-tts-that-fits-in-2-gb.txt", "jsonld": "https://wpnews.pro/news/ollama-0-40-13-puts-liquid-lfm3-audio-on-windows-local-stt-tts-that-fits-in-2-gb.jsonld"}}