ollama v0.13.4 发布——全新模型与性能优化详解

2025年12月13日,ollama v0.13.4版本预发布,随后于2025年12月16日正式发布。本次更新是一次重要的版本迭代,包含新模型的推出、引擎默认设置的调整、Flash Attention机制的自动化启用,以及一系列对Gemma 3架构模型的修复与增强。以下是详细更新内容。


一、新增模型

1. Nemotron 3 Nano

这是一款全新的开放高效智能代理模型,定义了高性能标准,面向智能代理应用场景。

2. Olmo 3 与 Olmo 3.1

这一系列开放语言模型旨在推动语言模型研究科学化。

其预训练基于 Dolma 3 数据集 ,后训练使用 Dolci 数据集,代表了更系统化的语言模型训练流程。


二、主要更新内容

  • 默认启用 Ollama 引擎

    所有剩余模型均默认启用 Ollama 引擎,统一运行环境。

  • 默认启用 Flash Attention 自动模式

    模型将自动启用 Flash Attention,以优化注意力计算效率。

  • 修复 Gemma 3 长上下文处理问题

    解决了长文本情况下上下文处理异常的问题,使 Gemma 模型更加稳定。

  • 修复 Gemma 3 QAT 模型导入问题

    修复了 Gemma 3 架构在量化训练模型导入时可能出现的异常。


三、代码更新与文档修订

  • api/client.go 文件中修正了 Modelfile 的超链接后缀,将.md改为.mdx

  • 删除了 macOS 与 Windows 平台中"发送 UI 请求消息"的冗余代码,使应用逻辑更简洁。

  • cocoa 对话框代码中增强了多文件处理机制,确保缓冲区内存安全。

  • Windows 文件对话框错误输出格式更准确。

  • server.go 修改了模型路径检查逻辑,在路径不可用时使用默认路径。

  • wintray/eventloop.go 改进了底层事件循环的内存安全处理,增加了注释控制。

  • 文档 docs/api.md 全面更新对 Modelfile.mdx 的链接引用,使说明一致化。

  • 新增工具文档与示例提取功能:

    新增目录:

    复制代码
    docs/tools/extract-examples

    包含:

    • README.md:介绍如何将 MDX 中的代码示例提取到临时目录运行。
    • main.go:示例提取脚本,支持自动生成 package.jsonpyproject.toml 依赖文件。

    提取后可执行:

    bash 复制代码
    cd <tmp-dir>
    npm install  # JS示例
    node file.js 或 python file.py 或 bash file.sh

四、环境配置与引擎优化

  • envconfig/config.go 调整了 OLLAMA_NEW_ENGINE 的默认值逻辑,引入 BoolWithDefault 方法,使引擎启用逻辑更灵活。
  • 增强了环境变量映射支持,结构更加全面。

五、模型与计算优化

1. Flash Attention 类型系统引入
ml/device.go 新增 FlashAttentionType 枚举类型:

  • Auto
  • Disabled
  • Enabled

此设计使 Flash Attention 模式控制更细化,支持自动适配硬件。

2. GGML 图计算增强

fs/ggml/ggml.go 中,Flash Attention 引入枚举类型接口,支持多种量化缓存类型检测与验证方法,提升兼容性。

3. Llama 引擎增强
llama/llama.go 重构了 Flash Attention 参数逻辑------支持自动、启用与禁用三种模式,适配不同模型及硬件环境。

4. LLM 服务逻辑优化
llm/server.go 增加了 Flash Attention 用户显式设置检测逻辑,并完善了 KV 缓存量化兼容性处理。当使用量化 KV 缓存类型时必须启用 Flash Attention。

KV 缓存校验机制进一步完善,增加更详细的警告提示与逻辑分支。

5. ML 后端结构改进
ml/backend.goml/backend/ggml/ggml.go 中统一 Flash Attention 类型接口,并在注意力计算中使用新的枚举系统,实现高效的多设备内存调度与算子融合优化。


六、Gemma 3 架构修复与改良

model/models/gemma3/model_text.go

对 Gemma 3 的旋转位置嵌入 (RoPE) 算法进行了调整:

  • 新增 ropeValuesForLayer 方法,按层返回位置嵌入基础值与缩放因子。
  • 修复 QAT 权重导致的错误缩放比问题,强制 ropeScale1.0
  • 优化滑动窗口注意力机制下的 softcap 和 rope 参数初始化逻辑,使注意力计算更加准确。

七、OpenAI兼容层更新

openai/responses.go

调整了工具调用消息的合并逻辑:

  • 当助手消息存在时,将后续工具调用结果合并到上一条消息中,而非新建消息。
  • 保留思考过程(Thinking)内容的正确关联,确保连续对话上下文一致。

同时新增全面的单元测试 openai/responses_test.go,覆盖函数调用与工具输出场景,验证新逻辑稳定性。


八、贡献统计

  • 本次版本共有 9 次提交22 个文件修改 ,涉及 6 位贡献者
  • 修改代码约 812 行新增253 行删除,覆盖核心引擎、文档、模型逻辑与工具部分。

九、总结

代码地址:github.com/ollama/ollama

ollama v0.13.4 是一次大幅度增强版发布,重点在于:

  • 增强引擎默认配置与性能自动化;
  • 推出新一代开放智能模型;
  • 完善 Gemma 与 Llama 架构的兼容性;
  • 引入更完整的 Flash Attention 类型系统;
  • 提高文档与开发工具的自动化程度。
相关推荐
d111111111d2 小时前
编码器测速详情解释:PID闭环控制
笔记·stm32·单片机·嵌入式硬件·学习·算法
拾忆,想起2 小时前
设计模式三大分类完全解析:构建高质量软件的基石
xml·微服务·设计模式·性能优化·服务发现
保护我方头发丶2 小时前
ESP功能介绍
c语言·嵌入式硬件
国科安芯2 小时前
AS32A601型MCU芯片如何进行IAP升级?
网络·单片机·嵌入式硬件·安全·risc-v·安全性测试
啃硬骨头2 小时前
Aurix TC387 Ethernet代码解析之七_MAC的LwIP初始化4
单片机·嵌入式硬件
詩不诉卿3 小时前
超简单stm32cubemx+lwip+yt8512c工程搭建记录
stm32·单片机·嵌入式硬件
亿道电子Emdoor3 小时前
【Arm】MCU和SOC的区别
arm开发·单片机·嵌入式硬件
在路上看风景3 小时前
2.1 CPU脚本性能优化简介
性能优化
deephub3 小时前
ONNX Runtime Python 推理性能优化:8 个低延迟工程实践
开发语言·人工智能·python·神经网络·性能优化·onnx