菜单

开源模型

相关源文件

本页面全面概述了生成式AI领域的开源大型语言模型(LLM)。它涵盖了开源模型的构成、使用此类模型的优势、对主要开源LLM家族的探讨,以及在应用程序中选择和实施这些模型的指南。有关比较专有模型和开源模型的信息,请参阅探索和比较不同的LLM

什么是开源模型?

开源软件一直是各个领域技术发展的基石。虽然开源促进会(OSI)为软件分类为开源定义了10个具体标准,但这些原则在LLM上的应用已经在AI社区引发了广泛的讨论。

要使模型完全符合传统的开源定义,以下内容应公开可用:

  • 用于训练模型的数据集
  • 作为训练一部分的完整模型权重
  • 评估代码
  • 微调代码
  • 训练指标

目前,很少有模型满足所有这些标准。由艾伦人工智能研究所(AllenAI)创建的OLMo模型是符合此类别为数不多的示例之一。出于实际目的,我们使用“开放模型”一词来描述在其开发方面共享部分但未必全部方面的模型。

来源:16-open-source-models/README.md14-26

开源模型的优势

与专有模型相比,开源模型具有几个显著的优势:

高度可定制性

由于开放模型通常会发布详细的训练信息,研究人员和开发人员可以修改模型的内部结构。这使得创建针对特定领域(如代码生成、数学运算和生物学)进行微调的高度专业化模型成为可能。

成本效益

使用和部署开源模型的每token成本通常低于专有模型。在构建生成式AI应用程序时,评估特定用例的性能与价格比非常重要。

灵活性

与开放模型合作,可以在模型选择和组合方面提供灵活性。例如,HuggingChat Assistants等平台允许用户直接在用户界面中选择不同的模型。

来源:16-open-source-models/README.md30-42

主要的开源LLM系列

开源LLM领域包含几个主要的模型系列,它们各具特色和能力。

Llama 2

Llama 2由Meta开发,由于其微调方法(结合了大量的对话数据和人类反馈)进行了优化,特别适合聊天应用。这种方法产生的效果更能符合人类的期望,提升了用户体验。

值得注意的微调版本包括:

Mistral

Mistral专注于高性能和高效率,采用专家混合(Mixture-of-Experts)方法,将专门的专家模型组合成一个统一的系统。这种架构根据输入选择性地激活相关的专家模型,从而提高计算效率。

值得注意的微调版本包括:

Falcon

Falcon模型(特别是Falcon-40B)由技术创新研究所(TII)创建,与GPT-3等模型相比,在较低的计算需求下展现出令人印象深刻的性能。这种效率得益于FlashAttention算法和多查询注意力机制的使用,它们减少了推理时的内存需求。

值得注意的微调版本包括:

来源:16-open-source-models/README.md44-61

选择合适的开源模型

选择开源模型没有一概而论的方法。选择过程应考虑几个因素:

  1. 特定任务要求:首先使用Azure AI Studio的“按任务筛选”功能,以识别为满足特定需求而训练的模型。

  2. 性能指标:参考Hugging Face LLM Leaderboard或Artificial Analysis等资源,根据标准化指标比较模型。

  3. 领域专业知识:对于专业应用程序,寻找专注于您所在领域(医疗、法律、金融等)的微调版本。

  4. 实验:测试多个模型,以确定哪个模型在您的特定用例和用户期望方面表现最佳。

性能与成本比较

在评估模型时,请同时考虑性能和成本指标:

模型类型性能每token成本自托管要求
专有模型(例如GPT-4)对于通用任务,成本较高较高不适用
开源大型模型(例如Llama-70B)有竞争力中等计算需求高
开源中型模型(例如Mistral-7B)适用于特定任务中等计算需求
开源小型模型(例如30亿参数模型)有限但专注非常低最低计算需求

来源:16-open-source-models/README.md62-72

实施与集成

Azure AI Studio模型目录提供了一种便捷的方式来开始使用开源模型,其中包含一个专门的Hugging Face集合,其中包括本页面讨论的模型。

集成工作流程

在应用程序中实施开源模型的典型工作流程包括:

  1. 模型选择:根据您的需求选择合适的模型。
  2. 部署:通过Azure AI Studio或其他平台部署模型。
  3. API集成:通过提供的API将应用程序连接到模型。
  4. 提示工程:设计针对所选模型定制的有效提示。
  5. 评估:测试并优化模型在特定用例中的性能。

来源:16-open-source-models/README.md73-79 README.md34-41 02-exploring-and-comparing-different-llms/README.md64-72

从语言模型到应用开发

下图展示了开源模型如何在更广泛的生成式AI应用开发生态系统中发挥作用。

该图显示了开源模型与使用它们的应用组件之间的关系,突出了这些模型如何与函数调用、RAG和微调等技术集成,以创建复杂的AI应用程序。

来源:README.md67-92 02-exploring-and-comparing-different-llms/README.md64-72

结论

开源模型代表了AI技术民主化的重大进展,提供了灵活性、可定制性和成本效益。在选择和实施这些模型时,请考虑您的具体需求、性能基准和集成需求。

开源LLM的格局在不断快速发展,新的模型和微调变体定期涌现。通过了解这些模型的优势和特性,开发人员可以做出明智的决策,选择最适合其应用程序的解决方案。

来源:16-open-source-models/README.md73-79