当前位置: 首页 > news >正文

ollama v0.12.2 版本更新详解:Qwen3 架构协助、Multi-Regex 分词器、新引擎前后缀匹配等功能升级

在这里插入图片描述

2025 年 9 月 25 日,Ollama 发布了 v0.12.2 版本,这是一次对底层引擎和模型支持进行重要优化的更新。该版本不仅提升了对 Qwen3 架构(包括 MoE 混合专家模型)的运行支持,还在分词器、内置工具渲染、张量加载等方面做出重大调整。本文将详细解析本次更新的技术细节和影响。


一、核心更新摘要

  1. Qwen3 架构模型(含 MoE)切换到 Ollama 新引擎运行

    • 新引擎更好地支持 Qwen3 系列权重加载与推理,包括 Qwen3-MoE(混合专家)模型。
    • 推理性能、兼容性的提升,对未来更多模型加载是关键一步。
  2. 修复 gpt-oss 内置工具渲染问题

    • 在聊天输出中,某些内置工具(如浏览器、Python)名称被意外重命名,导致识别异常。
    • v0.12.2 中明确了“内置函数不重命名”逻辑,保障工具调用的一致性。
  3. 支持 Multi-Regex 分词器(Multi-Regex pretokenizers)

    • BytePairEncoding(BPE)分词器支持传入多个 regex 模式,实现复杂的分词规则组合。
    • 例如同时针对数字、中文、符号进行独立匹配,提升多语言处理精度。
  4. 新引擎支持张量名前缀(pre:)与后缀(suf:)匹配加载

    • 允许模型权重 Tag 中指定前缀/后缀,以便灵活组合子张量名称。
    • 对复杂网络层结构(如 shexp、b 前缀)有更好的权重绑定能力。

二、分词器(BytePairEncoding)重大调整

此前的 NewBytePairEncoding 方法只接受一个 regex 作为预分词器,这在实际应用中不足以应对多语言和特殊字符的组合处理。本次更新:

func NewBytePairEncoding(vocab *Vocabulary, pretokenizers ...string) BytePairEncoding

关键变化:

  • 支持 多正则表达式数组,依次分割文本。
  • 默认预分词器覆盖缩写、字母、数字、符号、空格等典型模式。
  • 新增 split() 实现链式 regex 切分,确保各类特殊序列被精确识别。

测试示例:

  • 默认模式Hello, WORLD!! How's it going? 123 一二三
  • Unicode模式:单独匹配中文字符 [一-龥],数字分割为整体或单个数字。
  • 数码逐位模式:将 123 切为 1, 2, 3

这意味着 Ollama 在文本预处理环节获得更高的灵活度,尤其在多语言 NLP 场景中表现更佳。


三、Tag 系统优化:前缀/后缀匹配

模型权重文件在加载时通常通过 Tag 名匹配张量,v0.12.2 新增了 pre:suf: 标签支持:

type Tag struct {
name string
prefix string
suffix string
alternatives []string
}

功能说明:

  • pre: 指定在张量名匹配前插入的前缀,例如 b_
  • suf: 指定附加到张量名的后缀,例如 _c
  • 支持 alt: 提供备用名称,并在无主名时自动提升为主名。

应用场景:
例如,模型结构中有以下权重名:

blk.0.a.weight
blk.0.b_weight
blk.0.weight_c
blk.0.x_weight_y

通过 Tag 配置可以快速映射到对应结构体字段,减少硬编码。


四、内置工具不重命名

在 Harmony 解析器中,确认以下内置工具名称保持原样:

browser.open
browser.search
browser.find
python

这解决了 v0.12.1 中用户报告的 调用工具名被改写 问题,确保工具调用的稳定性和兼容性,尤其是与外部插件交互时。


五、各模型加载代码调整

为了适配 Multi-Regex 方案和新引擎,本次更新重构了多个模型的加载方法,包括:

  • llama / llama4 系列
  • mistral3
  • mllama
  • qwen2、qwen25vl、qwen3
    所有这些模型均由单一 regex pretokenizer 改为可以传入多条 regex,提升可扩展性。

六、开发者影响与升级建议

对模型作者:

  • 通过在 GGUF 标签中添加 pre: / suf:,可以更精准地映射复杂张量名。
  • 使用多 regex 分词能显著提升非英文文本的处理效果。

对推理系统维护者:

  • 新引擎对 Qwen3 MoE 支持,意味着可以在 Ollama 中稳定部署混合专家模型。
  • 内置工具不重命名修正,提升与工具 API 对接的稳定性。

七、总结

ollama v0.12.2 是一次针对核心引擎、分词器、模型加载逻辑的全面升级,尤其是:

这些改动不仅提升了模型运行的稳定性和灵活性,也为未来多语言 NLP 和复杂模型加载奠定了基础。

http://www.hskmm.com/?act=detail&tid=37607

相关文章:

  • AI股票预测分析报告 - 2025年10月23日 20:26
  • 软件包管理
  • nginx反向代理测试搭建
  • 基础概念
  • .NET Core报错克服【无废话上操作】
  • 题解:P11831 [省选联考 2025] 追忆
  • 2025-10-23 MX-S 模拟赛 赛后总结【MX】
  • PCL1.12 解决memory.h中EIGEN处中断问题
  • 完整教程:状态管理库 Zustand 的接入流程与注意点
  • 20251023
  • Java常用机制 - SPI机制详解
  • 塔吊施工环境与附属设施监测!思通数科 AI 卫士筑牢全场景安全防线
  • 采用opencv来识别信用卡的号码
  • 网络设备
  • 第二十二篇
  • 《程序员修炼之道:从小工到专家》阅读笔记1
  • 负载均衡及三种软件负载
  • 在 GEO / AIO 角度:如何优化 SEO 内容?
  • 多级多卡训练模型时有些参数没有参与loss计算和梯度更新的解决办法
  • 无题
  • Idea提高制作效率的快捷键最佳学习方式
  • rocky10自己手动换源
  • ski 和 db 模块的通信
  • 完整教程:ImmuCellAI 免疫浸润分析
  • 4.6.2版本来了!快来看看新版本有哪些改动
  • 2025-10-22 ZR-J 模拟赛 赛后总结【ZR】
  • P5285 [十二省联考 2019] 骗分过样例
  • Liferay Portal与DXP集合提供程序存在授权缺失漏洞分析
  • MapGIS Objects Java计算一条三维线段与一个三角形所在的平面的交点 - 教程
  • layui时间与日期选择器,时间范围查询数据,后端springboot