Ollama’s late-September 2026 release sequence is easy to misread: v0.34.4 was the last stable in the 0.34 line, then v0.40.0-rc0 appeared on 25 September as a pre-release, then v0.35.0 shipped as a stable on 28 September, and v0.35.1 followed as a stable on 29 September. The version number is real, the rc0 tag is still a pre-release, and the upgrade question depends on which channel you are on. This page tracks what each tag actually changed and how to move without breaking a working setup.
What the version numbers actually mean
The 0.34 → 0.40 jump is not a typo or a re-numbering. The GitHub releases page lists v0.34.4 (stable, 23 September 2026), then v0.40.0-rc0 (pre-release, 25 September), then v0.35.0 (stable, 28 September), then v0.35.1 (stable, 29 September). All four tags are listed on the Ollama GitHub repository. Ollama has not published a roadmap explaining the numbering; what the release list shows is that the 0.35 line is the stable channel and 0.40 is still a pre-release.
Practically: most people should stay on the latest stable tag (v0.35.1 as of 2 October 2026). v0.40.0-rc0 is the tag to watch if you specifically want the Apple-Silicon MLX-by-default change before it ships as stable.
What v0.34.4 → v0.40.0-rc0 actually changed
The visible rc0 release body has one headline item: “Models run on MLX on Apple Silicon by default”. The Ollama release notes for v0.40.0-rc0 state that on Apple Silicon devices, model architectures supported by the MLX runtime will automatically run on MLX, and that additional model support will be enabled during the pre-release window. This is the same direction the v0.34 line was moving in (v0.34.4 lists “Updated llama.cpp, MLX, and XGrammar” as one of its bullets, alongside “Qwen 3.8 prompt processing is faster on Apple Silicon” and “Gemma 4 on Apple Silicon now picks the best image resolution per image”), but the rc0 build makes MLX the default for supported architectures. The release notes do not say how unsupported models are handled during the pre-release, so treat that as untested until Ollama documents it.
The commit comparison for v0.34.4 → v0.40.0-rc0 also surfaces a quieter change worth flagging: PR #18627 (the api: deprecate typical_p follow-up) switches the Ollama API from rejecting requests that contain typical_p to logging a warning. Model creation still rejects the parameter, but server-side inference now tolerates it. A separate commit in the same range (“llama-server: prepare to remove compatibility patch”) adds manifest-list storage so runner-specific manifests can coexist under one tag, plus a lazy local migration of legacy Ollama GGUFs into llama.cpp-compatible children. The commit message describes internal plumbing rather than a new user-facing feature; the typical_p change is the one most likely to matter to third-party clients.
v0.35.0 and the decision-models API
The v0.35.0 stable shipped on 28 September 2026 with a feature the rc0 stream does not have: support for decision models via /v1/systemone, based on TypeSafe’s Jev API. The release notes describe these as returning “choices, probabilities, and scores instead of text,” aimed at ticket triage, model routing, and content classification. Two models are listed as available at launch: Nimble from Bespoke Labs and Tev1 from Together AI. The release body shows ollama pull nimble as the example. Three question types are supported: choice, noul, and score.
The other v0.35.0 changes are quality-of-life: Settings opens without waiting for model discovery, the macOS update menu and icon now reflect an available update at startup, stalled MLX model downloads no longer hang indefinitely, and API requests containing the deprecated typical_p parameter now log a warning instead of failing.
v0.35.1: Clef decision models and capability declarations
v0.35.1, the current stable as of 2 October 2026, extends the decision-models API. Its release notes add Clef (27B) and Clef Flash (9B), described as Cloudflare’s new open-source decision models, through /v1/systemone; both are multimodal, so a request can include images alongside the text state. The other listed changes: models using web search can perform up to ten searches per response (up from three), Modelfiles support CAPABILITY declarations, ollama show and the model list report only decision as the capability for decision models, and llama.cpp and the MLX engine are updated.
transformers now loads GGUF quants
On 22 September 2026, Hugging Face published a blog post titled “Transformers now runs llama.cpp quants” that is worth knowing about even if you never touch Ollama 0.40. The blog describes a packed-inference path in the transformers library that loads GGUF checkpoints via from_pretrained and runs them on Apple Silicon (MPS) by reusing ggml kernels through the kernels library. Three things matter for the Ollama reader:
- Architectures covered at launch are narrow. Qwen3.5 dense and MoE plus compatible Qwen3.8 checkpoints. Expansion is gradual.
- The packed inference path is MPS-only. On other devices, GGUF import through dequantization remains a separate option, not the packed path.
- Padding and batching are still rough. Unpadded inputs benefit from a mask optimization; padded batches do not. This is not a drop-in llama.cpp replacement for production serving.
The HF blog benchmarks on a MacBook Pro M2 Max with 32 GB unified memory under macOS 26.6 with PyTorch 2.12.1 and kernels 0.17.0, comparing three GGUF checkpoints across transformers and llama.cpp. It reports transformers is “close to llama.cpp across all three checkpoints” but notes the transformers measurement includes prefill while llama-bench reports decode-only throughput. The exact throughput numbers are not in the blog body (the chart is an image) and the install path is pinned to transformers main until the next release.
What this means in practice: if you run an Ollama workflow that wants Python introspection, fine-tuning from a quantized checkpoint (GgufConfig(dequantize=True)), or a single Python API surface for both HF and GGUF models, the new transformers path is the option to know about. For day-to-day Ollama serving, llama.cpp remains what the HF team itself recommends.
Upgrade checklist
A safe upgrade sequence as of 2 October 2026:
- Confirm the tag you are moving between. Run
ollama --versionand record it. If you are on v0.34.x, both v0.35.1 (stable) and v0.40.0-rc0 (pre-release) are possible destinations. If you are on v0.33.x or earlier, you are far enough behind that reading the v0.34 release notes first is worth the ten minutes. - Back up your model directory. The Ollama FAQ lists the defaults as
~/.ollama/modelson macOS,/usr/share/ollama/.ollama/modelson Linux (standard installer) andC:\Users\%username%\.ollama\modelson Windows, overridable withOLLAMA_MODELS. The rc0 range includes a model-store migration, which is a further reason to keep a copy before trying it. - Pick your channel. The Ollama install page at
ollama.com/downloadships the current stable release; the GitHub release list showed v0.35.1 as the latest stable on 2 October 2026. To get v0.40.0-rc0 specifically, pull the rc binary directly from the GitHub release assets for your platform (ollama-darwin.tgz,ollama-linux-amd64.tar.zst, or the platform-specific MLX, ROCm, and JetPack variants). - Run
ollama listbefore and after. Compare the two outputs so any model missing after the upgrade is caught before a workload depends on it. - Decide whether you want MLX-by-default. v0.40.0-rc0 flips it on for Apple Silicon. If you depend on a specific model under Ollama today, retest that workload on rc0 before committing to it.
- Watch the
typical_pwarning. If a third-party client sendstypical_p, v0.35.0 and later log a warning instead of failing. v0.34.4 still rejects. If your client logs the warning at high volume, that is a signal to migrate offtypical_p. - Skip the version number anxiety. v0.35.1 is the current stable. v0.40.0-rc0 is a pre-release. You do not have to pick v0.40 just because the number is higher.
Bottom line
Ollama 0.40 is real, but it is currently a release candidate, not a stable release, and the headline change (MLX-by-default on Apple Silicon) only matters if you are on Apple Silicon and want the new default dispatch path. v0.35.1 is the stable to install today, and the decision-models API via /v1/systemone (added in v0.35.0, extended with Clef models in v0.35.1) is the more generally useful new feature. The transformers + GGUF news from Hugging Face is independent of Ollama but lands in the same week and is worth knowing if you want to fine-tune or introspect GGUF models in Python without leaving the transformers API.