IBM Granite 3.3:语音识别、精细推理和 RAG LoRA

绿色阴影中的立方体等距插图

作者

Kate Soule

Director, Technical Product Management, Granite

IBM

Dave Bergmann

Senior Staff Writer, AI Models

IBM Think

以下是主要信息概览:

  • 我们正在发布 Granite Speech 3.3 8B,这是一种新的语音转文本 (STT) 模型,在自动语音识别 (ASR)自动语音翻译 (AST) 方面表现出色。
  • 新的音频模型建立在 Granite 3.3 8B Instruct 之上,这是我们企业级主力大型语言模型 (LLM) 的最新更新。除了增强的推理功能外,Granite 3.3 Instruct 模型现在还提供标准的下一个令牌预测以及中间填充 (FIM) 功能。
  • 为增强由 Granite 驱动的现有应用程序功能,我们还将发布一套专为 Granite 3.2 设计的检索增强生成 (RAG) 优化型 LoRA 适配器。用户的反馈意见将指导 Granite 3.3 Instruct 版 LoRA 适配器的开发(该版本即将发布),以及后续 Granite 大语言模型系列的版本迭代。
  • 除了这些传统适配器之外,IBM Research 还开发了一系列已激活 LoRA (aLoRA),这是一种实验性的新型低秩适应 (LoRA),可降低推理成本和内存需求,同时可实现适配器之间的无缝切换
  • 与往常一样,所有 Granite 模型和工具都是根据标准 Apache 2.0 许可证以开源方式发布的。
  • Hugging Face 上提供所有 Granite 3.3 模型和相关工具。Granite 3.3 Instruct 版本现已在 IBM watsonx.ai 平台上线,同时也可通过 LMStudio、Ollama 及 Replicate 等合作伙伴平台获取。


今天的发布代表着 IBM Granite 多模式联运业务的又一次扩展。Granite speech 8B 是我们的第一个官方语音转文本模型,Granite 3.3 标志着我们开始探索音频功能。除了最近增加的视觉和推理功能之外,IBM 继续增强 Granite 系列在客户和开源社区最需要的用例中的多功能性。

与 Granite Speech 3.3 8B 一同推出的还有 Granite 3.3 8B Instruct,这一大型语言模型 (LLM) 是其基础,同时还有其较小的 (2B) 版本。文本模型的推理过程比前代产品更为复杂,并增加了中间填充 (FIM) 功能,从而促进了更广泛的应用用例,尤其是在编码领域。

我们还将在 IBM Research 的开源实验平台 Granite Experiments 上,为先前发布的 Granite 3.2 8B Instruct 模型推出一系列更新扩展的性能增强型 LoRA 适配器(主要针对 RAG 场景优化)。更多 LoRA 创新方案即将在未来几周发布,包括专为 Granite 3.3 Instruct 模型打造的全套适配器。­­­

Granite Speech 3.3 8B:准确、高效的转录和翻译

Granite Speech 3.3 8B 是一款紧凑且具成本效益的语音输入(及文本输入)、文本输出的语音转文字 (STT) 模型,专为处理语音输入的企业级应用设计,并针对自动语音识别 (ASR) 和自动语音翻译 (AST) 进行了优化。

在转录任务方面,经过对多个著名公共数据集进行测试,Granite Speech 3.3 始终提供比领先的开放式和封闭模型竞争对手更高的准确性。

图表展示了 LLM 在语音识别基准上的性能 在多个测试数据集中, Granite Speech 3.3 8B 在转录任务中的错误率始终最低。

该模型还支持从英语到多种语言的自动翻译,包括法语、西班牙语、意大利语、德语、葡萄牙语、日语和中文。在 IBM 对 AST 性能进行的测试中,Granite Speech 3.3 8B 模型在 CoVost 数据集所支持的 Granite 语言上,其表现与 OpenAI 的 GPT-4o 和谷歌 Gemini 2.0 Flash 等领先的专有模型不相上下。更多翻译性能相关信息,请参阅该模型在 Hugging Face 平台发布的模型卡片

架构和设计

从架构上讲,Granite Speech 3.3 包括:

  • 一个语音编码器,由 10 个 Conformer 模块组成,并在面向自动语音识别 (ASR) 的数据集上,通过 Connectionist Temporal Classification (CTC) 进行训练。
  • 语音投影器;在本例中为 2 层查询转换器 (Q-former),可将音频嵌入投影到可由 LLM 解释的空间。
  • LLM,即 Granite 3.3 8B Instruct,上下文长度为 128K。
  • LoRA 适配器,在存在音频数据时,应用于大型语言模型 (LLM) 的查询和数值投影矩阵。

与将语音和文本处理一次性直接整合的模型不同,Granite Speech 3.3 采用双阶段处理设计。例如,要向模型询问有关音频文件的问题,需要进行初始调用以转录音频,随后再通过提示词对转录文本进行查询。如果提示中包含“<audio> ”令牌和相应的 .wav文件,Granite Speech 将自动激活音频编码器、投影器及 LoRA 适配器模块。如果没有,该模型将使用 Granite 3.3 Instruct 8B 以文本模式运行。

这种双阶段处理架构确保 Granite Speech 3.3 8B 在文本查询任务上的表现与其底层大语言模型 (Granite 3.3 8B Instruct) 保持高度一致,有效规避了多数多模态模型常见的文本性能衰减问题。只要开发人员使用的推理平台已正确配置文本与语音模型的联合服务,即可将 Granite Speech 3.3 8B 理解为在 Granite 3.3 8B Instruct 基础上新增音频输入功能的增强版本。

与传统的基于 Whisper 的 ASR 模型不同,Granite Speech 3.3 能够处理任意长度的音频输入,在测试中,该模型可轻松处理 H100 80GB GPU 上长达 20 分钟的音频文件,而非受限于 30 秒的固定窗口。基于 Whisper 的模型必须将超限音频切割为 30 秒片段,这往往会在切割边界处引入识别误差。一般来说,人为剪切的次数越少,产生的误差就越小。

虽然 Granite Speech 3.3 在表面上能够处理较长的音频输入,但需要注意的是,该模型尚未针对长音频数据进行专门微调。为确保稳定的识别准确率,我们建议将每个独立音频输入单元的长度限制在 1 分钟以内。

改进途径

Granite Speech 3.3 只是 IBM 探索 Granite 系列功能的第一步。未来版本(尤其是 Granite 4 中)增强 Granite Speech 的持续研究包括:

  • 多语言编码:目前,Granite Speech 3.3 的音频编码器仅支持英语。Granite Speech 重要的后续步骤是涉及多语言且对辅助语言现象敏感的音频编码器,从而使我们能够实现真正的多语言输入。
  • 优化的数据方案:未来的训练方案将包含更多、更高质量的训练数据,其中为目标用例生成合成数据将发挥重要作用。我们还在尝试其他微调和数据平衡步骤。
  • 早期模态融合:我们正在探索如何实现一个更加统一的结构,可以在未来 Granite 模型的所有训练阶段整合音频功能。
  • 情绪检测:未来的 Granite Speech 模型将通过训练我们的声学编码器,使其对非语言音频事件更敏感,从而支持语音情绪识别 (SER) 功能。

Granite 3.3 Instruct:FIM 和增强推理

我们最新版本的纯文本指令调优模型,Granite 3.3 8B InstructGranite 3.3 2B Instruct,新增了中间填充 (FIM) 功能,并持续完善了 Granite 3.2 引入的推理能力。

我们还发布了基础模型对应版本 Granite 3.3 8B BaseGranite 3.3 2B Base,它们现在取代了 Granite 3.1 中的前身,以便开发人员能够访问我们支持 FIM 的模型,从而进行微调。

中间填充

自回归大语言模型(即通常用于文本生成的 LLM)从根本上被设计为从左到右单向生成的工作模式。这类模型通过自监督学习进行训练,根据前面令牌的信息迭代预测序列中的下一个令牌,直至判定序列生成完成。虽然这种设计使其在各类生成任务中表现卓越,但面对另一种任务时存在天然局限:根据前的令牌预测正确内容的令牌。换句话说,传统的自回归 LLM 无法“中间填充”。

要采用自回归模型进行填充,需要重新设计训练任务,从本质上“诱导” LLM 使用其固有的从左到右预测能力来预测中间的令牌。这通常需要将示例段落划分为前缀(前面的令牌)、后缀(后面的令牌)和中间(要通过填充来预测的令牌),然后重新排列段落,使模型在被要求预测中间标记之前,能够同时获得前缀和后缀的信息。Granite 3.3 利用专门的令牌使模型能够根据前缀和后缀生成内容。

虽然中间填充 (FIM) 有广泛的应用场景,但它在编码任务中尤其适用,例如代码修复、错误纠正、重构、快速生成样板代码,以及插入函数参数或文档字符串等。

增强推理

Granite 3.2 的重点是通过思维偏好优化 (TPO) 丰富指令模型的推理能力,在不牺牲整体性能的情况下提高模型遵循复杂指令的能力。Granite 3.3 Instruct 的开发重点是保留这些成果,同时增强模型在复杂数学推理方面的性能。

Granite 3.3 Instruct 模型建立在更新的 Granite 3.3 基本模型之上,并使用 TPO 和组相对策略优化 (GRPO) 通过多阶段强化学习进行微调,在传统上与“推理”功能相关的高度技术基准上表现出显著改进。

Granite 3.3 8B 在 MATH500 基准测试中的表现明显领先于 Anthropic 的 Claude 3.5 Haiku (64.2%) 和 Meta 的 Llama 3.1 8B Instruct (44.4%),大致与拥有 240 亿参数的 Mistral Small 3 (70.6%) 相当,仅略低于 Claude 3.5 Sonnet (72.4%) 和 OpenAI 的 GPT-4o Mini (72.6%)。 1

显示 Granite LLM 数学复杂任务性能的表格 Granite 3.3 针对复杂数学推理基准的改进

与 Granite 3.2 Instruct 模型一样,“思维”模式可以轻松开启或关闭,使开发者在需要时能够优先启用增强的链式思维 (CoT) 推理,而在不需要时则优先考虑成本效益和低延迟。

通过 LoRA 适配器完善 RAG

为了增强基于 Granite 的现有应用程序,并为下一代性能增强型 LoRA 适配器的开发提供参考,IBM 还通过 IBM Research 开源实验平台 Granite Experiments 发布了 5 个(主要面向 RAG 场景的)Granite 3.2 8B Instruct 专用 LoRA 适配器。这些适配器各具特色,能够利用模型固有知识执行特定任务,例如检索查询重写或幻觉检测等

IBM Research 在开发这些“传统” LoRA 适配器的同时,还为每种适配器开发了使用新型低秩适应的对应适配器,我们称之为激活的 LoRA (aLoRA)在标准 LoRA 适配器之间切换通常会降低性能,因为模型必须使用新的适配器重新计算正在进行的对话的上下文。但与标准 LoRA 不同,IBM 的 aLoRA 只是重用现有的键值 (KV) 缓存,无需重新计算上下文(或“预填充”)。激活的 LoRA 与标准 LoRA 的生成质量相匹配,同时具有显著的运行时间和计算优势。运行 aLoRA 的源代码可在此处获取。

RAG 幻觉检测
即使有了 RAG,LLM 有时也会产生幻觉。当配备 RAG幻觉检测 LoRA 时,该模型将提供 0-1 之间的“忠实度分数”(以 0.1 为增量),用于反映其输出与检索到的文档中信息的吻合程度。忠实度分数越低,幻觉风险越高。当问题无法使用可用来源的信息回答时,模型将输出无法回答。

RAG Query Rewrite
对于包含所有相关信息的独立查询,检索引擎返回的结果要明显好于那些需要从对话早期的上下文才能采取行动的查询。配备 Query Rewrite LoRA 后,该模型将自动将任何非独立用户查询重写为完全独立的查询。例如,请考虑此交换:

用户:“Apple 公司的 CEO 是谁?”模型:“Tim Cook 是苹果公司的 CEO。”用户:“那 Microsoft 呢?”

该模型将按原样传递用户的第一个查询,但将第二个查询重写为“Microsoft 公司的 CEO 是谁?”。在测试中,这种重写将模型响应的相关性提高了 21 个百分点。

尽管 Query Rewrite 在设计时就考虑到了 RAG,但它并不需要 RAG 文档的存在:它也可用于重写用户查询,以适用于其他用例,例如工具调用。

RAG Citation Generation
当配备 RAG Citation Generation LoRA 时,该模型将为其输出的每个句子生成引文(如果该句子有任何外部来源)。每条句子级引用不仅标明所引用的来源,还包含来自被引用来源的一组句子,用于支持模型对应的输出句子。

RAG Answerability Prediction
当配备 RAG Answerability Prediction LoRA 时,该模型将确定用户的查询是否可以利用所连接文档中的信息来回答。这种二元分类——“可回答”或“不可回答”——可用于过滤不可回答的问题(减少幻觉),或提示模型以不同的方式重新询问检索器。

Uncertainty Prediction
对于每个模型输出,Uncertainty LoRA(由 MIT-IBM Watson AI 实验室的 AI 模型校准研究产生)使模型能够生成范围从 0 到 9 的量化“确定性分数”(分别代表 5% 到 95% 的确定性)。得分主要反映了模型的响应在多大程度上得到了训练数据信息的支持。

Combining RAG LoRAs

传统的 RAG 通常只涉及一次推理(即基于特定上下文的简单提示,生成单一的模型输出),而我们提出在流程中使用这些 LoRA,借助多个 LoRA 适配器和多轮推理,共同生成最终的模型响应。

例如,您可以首先实施查询重写(必要时)快速重写初始提示,从而获得最佳检索器准确性。使用重写的提示生成模型的检索增强响应后,您可以实施 RAG 幻觉检测,验证检索文档中信息的忠实度是否适当。如果忠实度分数低于可接受的阈值,工作流可能会指示模型对响应重新采样,直到忠实度分数超过该阈值。一旦不再检测到幻觉,您就可以让 RAG Citations 做出向用户提供的最终回复。

这在本质上类似于 RAG 版本的推理阶段计算扩展,通过搭建多轮推理流程来提升和丰富模型的最终输出。我们非常期待开源社区对这些全新 LoRA 适配器的实现与探索。有关 RAG LoRA 及其对模型性能影响的更多信息,请参阅随附的技术论文

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

IBM Granite 的下一步计划是什么?

IBM Research 正在积极训练 Granite 4.0,这是一代全新的模型,代表了 Granite 架构的一次重大演进,在速度、上下文长度和容量方面展现出令人期待的提升。虽然具体细节要到第二季度晚些时候才会公布,但客户、合作伙伴和开发者可以放心,IBM 将始终致力于打造小巧、实用、可在低成本和低延迟下运行的模型。

开始使用 Granite 3.3

全新 Granite 3.3 Instruct 模型已在IBM watsonx.ai 上线,这是我们专为企业 AI 开发打造的整合式端到端工作平台。您可以在 Granite Playground 上试用 Granite 3.3 Instruct 8B,并轻松体验“思考”功能的开启和关闭。

Granite Speech 3.3 8B 以及所有新的 Granite 模型和 LoRA 适配器已在 Hugging Face 上发布。部分 Instruct 模型也可通过平台合作伙伴获得,包括 LMStudioOllamaReplicate(按字母顺序排列),不久的将来还会推出更多模型。

Granite 文档和 GitHub 上的 Granite Snack Cookbook 中提供了多种关于如何使用 Granite 模型的指南和示例教程。开发人员可以通过深入了解我们丰富的实用演示、示例和教程来开始使用 Granite 模型,例如:

深入了解全新 IBM Granite 3.3 模型→

脚注

1MATH 500 基准测试,”Vals AI,最后更新于 2025 年 3 月 24 日

相关解决方案
IBM watsonx.ai

使用面向 AI 构建器的新一代企业级开发平台 IBM watsonx.ai,可以训练、验证、调整和部署生成式 AI、基础模型和机器学习功能。使用一小部分数据,即可在很短的时间内构建 AI 应用程序。

了解 watsonx.ai
人工智能 (AI) 解决方案

借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。

深入了解 AI 解决方案
人工智能服务

通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。

深入了解人工智能服务
采取后续步骤

一站式访问跨越 AI 开发生命周期的功能。利用用户友好型界面、工作流并访问行业标准 API 和 SDK,生成功能强大的 AI 解决方案。

  1. 深入了解 watsonx.ai
  2. 预约实时演示