什么是小语言模型(SLM)?
小语言模型(SLM)是大语言模型(LLM)的精简版本,具有更专业化的知识、定制速度更快且运行效率更高。
与具备广泛的一般知识的 LLM 不同,SLM 经过训练,具备特定领域的专业知识。由于 SLM 规模较小,训练和部署所需的计算资源较少,从而降低了基础架构成本,并能更快地进行微调。SLM 凭借自身的轻量化特性,成为边缘设备和移动应用的理想之选。
LLM 与 SLM 的对比
LLM 和 SLM 都是经过训练、可解读人类语言(包括编程语言)的人工智能(AI)系统。LLM 与 SLM 的主要区别在于:训练它们所用的数据集的规模、用这些数据集训练它们时所采用的流程,以及针对不同用例投入使用后所产生的成本/收益。
顾名思义,LLM 和 SLM 都是基于由语言组成的数据集进行训练,这使得二者有别于用图片训练的模型(例如 DALL·E)以及用视频训练的模型(例如 Sora)。网页文本、开发者代码、电子邮件以及手册都属于基于语言的数据集。
SLM 和 LLM 最广为人知的应用之一就是生成式人工智能(gen AI),它可以针对内容各异、无法预测的提问生成(生成式人工智能由此得名)非预先编辑好的回答内容。LLM 之所以尤为人们所熟知,主要归功于 GPT-4 基础模型和 ChatGPT,ChatGPT 是一款对话式聊天机器人,它在包含数万亿参数的大型数据集上进行训练,能够回答人类提出的各种各样的问题。虽然生成式 AI 广受欢迎,但 LLM 和 SLM 也有其他非生成式应用,例如预测性 AI。
人们通常会采用不同的数据集来训练 LLM 和 SLM
GPT-4/ChatGPT 的能力范围很好地说明了 LLM 与 SLM 之间的一个基本差异:训练它们所用的数据集。
人们希望 LLM 能够在非常广泛的层面上模拟人类的智慧,因此采用各类大型数据集训练 LLM。以 GPT-4/ChatGPT 为例,其训练所用的数据集涵盖整个公共互联网截至某一特定日期的全部内容。所以,ChatGPT 能够解读和回答普通用户所提出的五花八门的问题,这也是它声名大噪的原因。然而,人们也注意到,ChatGPT 有时可能会给出错误的回答,这种现象俗称“幻觉”,也就是说,ChatGPT 没有经过微调和特定领域的训练,因此无法准确回答每个行业特定的或小众的问题。
而专门经过小型数据集训练的 SLM 则是为特定行业领域(即专业领域)量身打造。比方说,医疗提供商可以使用依托 SLM 且经过医疗数据集训练的的聊天机器人,针对用户用非专业的描述提出的健康问题融入领域特定的知识,从而提高问题与回答的质量。在这种情况下,我们不必用整个互联网的内容(包含每一篇博客文章、科幻小说,或诗作)来训练这款依托 SLM 的聊天机器人,因为这些内容与医疗用例无关。
简而言之,SLM 通常在特定领域表现出色,但与 LLM 相比,在一般知识和整体语境理解方面则相形见绌。
红帽资源
LLM 和 SLM 需要不同的资源
针对业务用例训练任何模型,无论是 LLM 还是 SLM,都是一个资源密集型的过程。不过,训练 LLM 尤其耗费资源。以 GPT-4 为例,总共需要 25,000个 NVIDIA A100 GPU 同时并连续运行 90 至 100 天。需要再次说明的是,GPT-4 代表了 LLM 范畴中规模最大的极端情况。Granite 之类的其他 LLM 则不需要这么多资源。虽然训练 SLM 仍然需要相当多的计算资源,但与 LLM 相比,所需资源要少得多。
训练与推理的资源需求
同样需要注意的是模型训练和模型推理之间的区别。如上文所述,训练是开发 AI 模型的第一步。推理则是已训练好的 AI 模型依据新数据进行预测的过程。例如,当用户向 ChatGPT 提出一个问题时,这就会促使 ChatGPT 向用户返回一个预测结果;这个生成预测的过程就是一次推理。
一些预训练的 LLM,比如 Granite 系列模型,可以利用单个高性能工作站的资源进行推理(例如,Granite 模型可以在一个 V100-32GB GPU2 上运行),不过,许多 LLM 需要多个并行处理单元来生成数据。此外,同时访问 LLM 的用户数越多,模型进行推理的速度就越慢。相比之下,SLM 通常设计为可以使用智能手机或其他移动设备的资源来进行推理。
SLM 的优势
对于“哪个模型更好?”这个问题,并没有一个确定的答案。这完全取决于您企业组织的计划、资源、专业知识、时间表以及其他相关因素。同样重要的是,要确定您的用例是需要从头开始训练一个模型,还是对一个预训练模型进行微调。在 LLM 与 SLM 之间做出选择的常见考量因素包括:
成本
一般来说,LLM 在训练、微调以及运行推理时需要的资源要多得多。重要的是,训练是一项频次较低的投入。计算资源只有在模型接受训练时才需要,而训练是一项间歇性的任务,并非持续不断地进行。然而,运行推理意味着一项持续性的成本支出,而且随着模型被越来越多的用户使用,这方面的需求还会增加。在大多数情况下,这需要大规模的云计算资源、可观的本地资源投入,或者两者都需要。
SLM 经常被评估用于低延迟用例,例如边缘计算。这是因为它们往往仅依靠单个移动设备上现有的资源就能运行,而无需持续、稳定地连接到更重要的资源。
专业实力
许多流行的预训练 LLM,如 Granite、Llama 和 GPT-4,为开启 AI 之旅提供了一种具备更出色“即插即用”功能的选择。对于希望开始尝试 AI 的组织而言,这些模型往往更可取,因为它们无需由数据科学家从头开始设计和训练。相比之下,SLM 则通常需要同时具备数据科学和特定行业知识领域的专业技能,才能基于细分数据集进行精准的微调。
安全性
LLM 的一个潜在风险是通过应用程序编程接口(API)暴露敏感数据。具体而言,使用所在企业组织的数据对 LLM 进行微调时,需要格外留意合规性以及公司政策。SLM 能够提供更高程度的控制,因此其数据泄露风险可能相对较低。
SLM 的局限性
当企业将 SLM 集成到工作流程中时,必须意识到它们的局限性。
偏差
SLM 基于较小数据集进行训练,这意味着您可以更轻松地减少不可避免会出现的偏差(与 LLM 相比)。然而,与任何规模的语言模型一样,训练数据仍可能会引入一些偏差,比如某些群体及观点的代表性不足或呈现失当,又或者出现事实性的不准确情况。语言模型还可能会继承与方言、地理位置和语法有关的偏差。
团队应格外注意训练数据的质量,以降低生成偏差输出的风险。
知识范围有限
SLM 在生成响应时,可利用的信息池规模较小。这使得它们非常适合特定任务,但不太适合需要广泛的一般知识的任务。
团队可以考虑构建一系列专用的 SLM,与 LLM(或多个 LLM)结合使用。如果团队能将模型与现有应用对接,创建一个由多个语言模型协同工作的互连工作流,该解决方案将显现出独特价值。
SLM 用例
SLM 具备较强的适应能力,可支持各种用例。
聊天机器人
使用 SLM 基于专业材料对聊天机器人进行培训。例如,可以对客户服务聊天机器人进行公司特定知识培训,这样它就能回答问题并引导用户获取信息。
代理式 AI
将 SLM 集成到代理式 AI 工作流中,使其能够代表用户完成各项任务。
生成式 AI
SLM 可以执行生成新文本、翻译现有文本和内容总结等任务。
红帽能为您做些什么?
红帽 AI 提供生成式 AI 和预测性 AI 功能,以及 MLOps 支持,可在混合云环境中大规模构建灵活、可信的 AI 解决方案。它有助于加快 AI 的应用,简化交付 AI 解决方案的复杂性,并在数据所在的任何位置灵活地进行开发和部署。
结合红帽的开放混合云基础架构,红帽 AI 能让各企业组织为企业构建量身定制的 AI 解决方案,管理模型和应用的生命周期,适应硬件加速需求,并在单一平台上与关键工作负载一同进行部署、运行和运维。
面向初学者的机器学习和 AI
如果您刚开始探索 ML 和 AI 模型,可以试试 InstructLab,这是一个由社区驱动的用于训练 LLM 的解决方案。在这里,您可以免费进行试验,并直接为您所使用的 AI 模型的开发做出贡献。
轻松访问 IBM 的 Granite 系列模型
如果您已经准备好更进一步,红帽® 企业 Linux® AI 是一个基础模型平台,您可以在该平台上针对企业应用开发、测试并运行 Granite 系列 LLM。Granite 是一系列开源许可 AI 模型,并享有红帽的全面支持和保障。其开源方法鼓励生成式 AI 的创新,同时保持信任和安全性。
面向企业进行扩展
红帽® OpenShift® AI 是一个能够在混合云环境中大规模支持各类模型的平台。您可以针对自身独特的用例,利用自己的数据来训练、即时调整、微调和提供 AI 模型。
这些产品共同提供了一个统一的解决方案,使数据科学家和开发人员能够展开协作,从而使团队能够更快地将模型从实验阶段推向生产阶段。
与合作伙伴共同成长
此外,红帽的合作伙伴集成有利于形成由众多可信 AI 工具构成且不断发展的生态系统,与开源平台搭配使用。
红帽官方博客
获取有关我们的客户、合作伙伴和社区生态系统的最新信息。