2026年4月17日,github.com/ollama/ollama 发布了v0.21.0版本。
这一版本的更新重点非常明确:围绕launch 体系、Hermes Agent、Copilot CLI、OpenCode、OpenClaw、云推荐展示、Windows 指引、Gemma4 相关优化、MLX 性能修复等多个方向进行了集中增强与修补。
一、v0.21.0 版本概览
本次版本号为v0.21.0 Latest,发布时间为2026年4月17日。
从整体内容来看,这一版更新主要集中在以下几个方面:
- 新增 Hermes Agent 与 Ollama 的联动支持
- launch 相关功能持续增强
- OpenCode、OpenClaw、Copilot CLI 等集成能力完善
- 云推荐展示顺序优化
- Windows / WSL 指引处理方式调整
- Gemma4 模型相关模板、缓存、性能与渲染逻辑优化
- MLX 相关编译、融合运算、缓存与图像生成查找修复
- 创建流程与 managed-single 重写逻辑修复
这意味着 v0.21.0 并不只是一个简单的小版本修补,而是一次兼顾新能力接入与稳定性提升的版本。
二、Hermes Agent 与 Ollama 联动:支持 launch hermes
本次最值得关注的新增内容之一,就是:
launch: add hermes
官方给出的说明是:
Hermes Agent with Ollama
ollama launch hermes
并且强调:
Hermes learns with you, automatically creating skills to better serve your workflows. Great for research and engineering tasks.
同时补充说明:
Use Nous Research’s self-improving AI agent with Ollama.
这说明在 v0.21.0 中,Ollama 已经新增了对Hermes的启动支持。对于用户来说,最直观的使用方式就是通过:
ollama launch hermes
来启动 Hermes Agent 与 Ollama 的联动体验。
这一点的意义在于,它把 Ollama 的使用场景从单纯的模型调用,进一步扩展到了自我改进型 AI agent的工作流协作模式。官方描述中明确提到,Hermes 会在与你一起工作时自动创建技能,以更好地服务你的工作流,尤其适用于研究和工程任务。
从发布内容来看,这一条是 v0.21.0 的标志性新增能力之一,也是很多用户会第一时间关注的更新点。
三、launch 体系持续优化:多个配置与重写逻辑调整
v0.21.0 中,launch相关的更新非常集中,涉及多个子场景,说明官方在持续打磨这个入口的体验和配置处理逻辑。
1. 跳过未变化的 integration rewrite 配置
更新项:
launch: skip unchanged integration rewrite configration
这条变更的核心意思,是在进行 integration rewrite 配置处理时,如果内容没有变化,就跳过重写。
这种优化通常意味着减少不必要的配置写入,降低重复操作带来的干扰,并提升执行效率与配置稳定性。
2. OpenCode inline config
更新项:
launch: OpenCode inline config
这一项说明launch针对OpenCode进行了 inline config 相关处理。
也就是说,在启动或集成配置流程中,OpenCode 的配置方式得到了调整,更偏向内联式配置处理。
后面版本信息里还出现了一条相关的回退记录:
Revert “launch/opencode: use inline config”
结合上下文可以看出,OpenCode 的 inline config 在版本迭代过程中经历了调整与回退,最终在 v0.21.0 的更新内容中体现为新的 launch 配置变化。
3. 跳过未变化的 managed-single rewrite
更新项:
launch: skip unchanged managed-single rewrite
这条与前面的 integration rewrite 类似,重点同样是“跳过未变化内容”。
这里针对的是managed-single rewrite,当配置未发生变化时,不再执行重复重写。
这一改动的价值在于:
- 减少无效写入
- 避免重复更新配置
- 提高 launch 流程的稳定性
- 让启动行为更加可预测
4. OpenClaw 的 --yes 行为修复
更新项:
launch/openclaw: fix --yes flag behaviour to skip channels configuration
这一项是针对openclaw场景下--yes参数行为的修复。
修复目标很明确:当用户使用--yes时,应当跳过 channels 配置。
这说明在交互式或半自动化启动过程中,--yes参数原本可能没有完全按照预期处理 channels 配置,而这次版本修复了这一行为,让自动确认场景更符合预期。
5. Launch 中始终优先列出云推荐
更新项:
launch: always list cloud recommendations first
这一条非常直接:在launch流程中,云推荐内容将始终优先展示在前面。
这意味着当用户进入相关推荐或启动建议时,云推荐会排在更靠前的位置,提升可见性。这种调整属于界面/顺序层面的优化,但会直接影响用户第一眼看到的信息。
6. Windows 上显示 WSL 指引,而不是直接 hand off
更新项:
cmd/launch: show WSL guidance on Windows instead of handing off
这条修改面向 Windows 用户。
原本在 Windows 环境中,流程可能会直接 hand off,而现在改为显示 WSL 指引。
这是一项非常实用的体验调整,说明官方希望在 Windows 场景下提供更明确的指导信息,而不是直接把流程交出去。
对于 Windows 用户来说,这样会更清楚下一步该如何操作。
四、Copilot CLI 集成加入 launch
更新项:
cmd/launch: add Copilot CLI integration
这是本次 v0.21.0 中另一个很重要的新增能力。
官方在cmd/launch中加入了Copilot CLI integration,意味着 launch 体系进一步扩展到了 Copilot CLI 相关集成。
从发布说明看,这项更新已经被明确列出,说明它是本次版本新增的一项正式能力,而不是单纯的修补。
对于使用 launch 工具链、并希望与命令行 AI 助手工作流结合的用户来说,这项集成是值得重点关注的内容。
五、Gemma4 相关多项优化与修复
v0.21.0 中,Gemma4 相关内容非常多,涉及模板、渲染、精度、缓存、router projection 等多个方面,说明这一模型在本版中接受了密集优化。
1. 根据模型大小不同进行不同渲染
更新项:
gemma4: render differently based on model size
这条说明 Gemma4 的渲染逻辑会根据模型大小采用不同方式。
这意味着不同规模的 Gemma4 模型,在展示或处理时会有差异化渲染策略。
2. 保持 Gemma4 router projection 使用 source precision
更新项:
Keep Gemma4 router projection in source precision
这一条明确指出,要让 Gemma4 的 router projection 保持在 source precision。
这是一个偏底层的模型处理优化,核心目标是保证精度处理符合原始来源精度要求。
3. empty block 条件化处理
更新项:
make empty block conditional
这项变更与 Gemma4 模板或结构处理逻辑相关,核心是让 empty block 变成条件化处理。
这种修改通常用于避免无意义的空块输出或渲染行为,让模板结构更合理。
4. Gemma4 cache 使用 logical view
更新项:
mlx: fix gemma4 cache to use logical view
这条说明在 MLX 相关模块中修复了 Gemma4 cache,使其使用 logical view。
缓存视图的逻辑修正,通常与上下文管理和缓存一致性密切相关。
5. additional Gemma4 cache fixes
更新项:
mlx: additional gemma4 cache fixes
这条继续补充了 Gemma4 cache 的修复工作,说明相关问题不止一处,官方进行了进一步修正。
6. Gemma4 相关模板拆分与修复合并
更新记录中还有:
Merge pull request … from …/gemma4-split-templates
虽然这里不展开人名与编号,但从内容可以看出,本次版本对 Gemma4 的 templates 进行了拆分处理,并进行了合并。
7. 版本内还包含 Gemma4 的空块与渲染联动调整
整体来看,Gemma4 在 v0.21.0 中经历了:
- 不同模型大小的差异化渲染
- source precision 保持
- empty block 条件化
- cache 逻辑修复
- cache 进一步修补
- templates 拆分与调整
六、MLX 相关性能与实现修复
v0.21.0 版本中,MLX 也有一组连续更新,说明这一部分同样是本次发布的重要组成。
1. 添加编译后的 closure 支持
更新项:
mlx: add compiled closure support
这条更新说明 MLX 新增了compiled closure support。
从字面上看,这意味着在编译执行路径中,对 closure 的支持得到了增强,为后续的性能优化和表达能力提升提供基础。
2. 通过 mlx_compile 融合 MLP 激活函数
更新项:
models: fuse MLP activation functions via mlx_compile
这条说明模型层面使用mlx_compile对MLP activation functions进行了融合。
这属于典型的性能优化方向:通过融合运算减少开销,提升执行效率。
3. 提升 gemma4 的 fused operations 性能
更新项:
mlx: Improve gemma4 performance with fused operations
这一条进一步表明,Gemma4 在 MLX 路径下通过fused operations获得了性能提升。
与前面的融合激活函数结合来看,这次版本在计算图优化上投入较多。
4. 修复 RotatingKVCache.concat() 在中间旋转时丢失上下文
更新项:
mlx: fix RotatingKVCache.concat() dropping context on mid-rotation
这是一个比较关键的修复。
问题描述很明确:在 mid-rotation 的时候,RotatingKVCache.concat()会丢失 context。
本次修复的目标就是避免这种上下文丢失。
对于缓存系统来说,上下文连续性非常重要,因此这项修复具有明显的稳定性意义。
5. 修复 imagegen lookup
更新项:
mlx: fix imagegen lookup
这条说明修复了imagegen lookup的查找问题。
虽然发布内容没有展开细节,但从条目本身可以看出,这是一个与图像生成查找路径有关的修复项。
6. 进一步修复 Gemma4 cache 逻辑
前文已经提到:
mlx: fix gemma4 cache to use logical viewmlx: additional gemma4 cache fixes
这两项都属于 MLX 与 Gemma4 的组合修复,说明缓存逻辑在本版中经历了多轮调整。
7. 小结
MLX 部分的更新可以概括为:
- 新增 compiled closure support
- 使用 mlx_compile 融合 MLP 激活函数
- 通过 fused operations 提升 Gemma4 性能
- 修复 RotatingKVCache.concat() 在中间旋转时丢上下文
- 修复 imagegen lookup
- 修复 Gemma4 cache 的 logical view 问题
- 补充 Gemma4 cache 的其他修复
可以看出,MLX 这一组变更主要围绕性能、缓存、上下文连续性、查找路径展开。
七、创建流程修复:避免 create 与 gc race
更新项:
create: avoid gc race with create
这条更新说明在create流程中,官方修复了与gc相关的 race 问题。
从命名上看,这是一个并发或时序类问题,修复目标是避免create与gc之间发生竞态。
这类修复虽然不一定在日常使用中立刻可见,但对稳定性非常重要,尤其是在创建流程和资源回收流程同时运行时。
八、v0.21.0 更新条目汇总
为了方便快速回顾,下面把本次版本中涉及的条目再次整理一遍:
- launch: skip unchanged integration rewrite configration
- launch/openclaw: fix --yes flag behaviour to skip channels configuration
- launch: OpenCode inline config
- launch: add hermes
- launch: always list cloud recommendations first
- cmd/launch: add Copilot CLI integration
- mlx: add compiled closure support
- models: fuse MLP activation functions via mlx_compile
- mlx: Improve gemma4 performance with fused operations
- mlx: fix RotatingKVCache.concat() dropping context on mid-rotation
- mlx: fix imagegen lookup
- mlx: fix gemma4 cache to use logical view
- mlx: additional gemma4 cache fixes
- create: avoid gc race with create
- launch: skip unchanged managed-single rewrite
- cmd/launch: show WSL guidance on Windows instead of handing off
- gemma4: render differently based on model size
- Keep Gemma4 router projection in source precision
- make empty block conditional
这些内容共同构成了 Ollama v0.21.0 的完整更新面貌。
九、这次版本的整体价值
从发布内容来看,v0.21.0 的价值主要体现在三点:
1. 新能力接入更强
Hermes Agent、Copilot CLI 都被纳入 launch 体系,说明 Ollama 在扩展实际工作流协作能力。
2. 配置与启动体验更稳
多个 “skip unchanged rewrite” 相关更新、OpenClaw 的--yes行为修复、云推荐优先展示、Windows WSL 指引优化,都在提升 launch 使用体验。
3. 模型与计算层修复更密集
Gemma4、MLX、缓存、融合运算、上下文连续性等多个修复,说明本版对底层实现和性能稳定性做了大量工作。
十、总结
代码地址:github.com/ollama/ollama
整体来看,ollama v0.21.0不是一个简单的常规维护版本,而是一次兼顾新集成、新 agent 支持、启动流程优化、模型渲染和缓存修复、性能改进的集中更新。
本次版本中最值得关注的亮点包括:
- Hermes Agent with Ollama
- ollama launch hermes
- Copilot CLI integration
- OpenCode inline config
- OpenClaw 的 --yes 行为修复
- 云推荐始终优先展示
- Windows 上显示 WSL 指引
- Gemma4 多项模板、缓存、渲染、精度修复
- MLX 的编译、融合、缓存与查找修复
- create 与 gc race 修复