LLM综述笔记2:大语言模型的资源


本文为《A Survey of Large Language Models》系列笔记的一部分,原论文链接:arxiv2303.18223

开发或复现大语言模型(LLMs)绝非易事,不仅面临技术上的诸多挑战,还需要庞大的计算资源。一种可行的方式是借鉴已有 LLM 的开发经验,并复用公开可获取的资源,以便进行增量式开发或实验研究。

本笔记将简要总结当前可公开获取的 LLM 开发资源,包括:

  • 模型权重(checkpoints)或 API 接口,

  • 预训练语料(corpora),

  • 开发与训练相关的工具库(libraries)。

模型权重(checkpoints)和 API

模型权重(checkpoints)

LLaMA 系列模型

LLaMA 系列是当前最强的开源 LLM 之一,LLaMA-3.1 凭借更大规模、长上下文和安全增强功能,在多个任务上媲美 GPT-4 与 Claude 3.5。其训练资源规模亦达业界顶级。

LLaMA-3.1(405B)在性能上可与封闭模型如 GPT-4、GPT-4o 和 Claude 3.5 Sonnet 相抗衡,表现出色。

关于训练资源:

LLaMA(65B)使用了 2,048 张 A100-80G GPU

LLaMA-3.1(405B)则动用了超过 16,000 张 H100 GPU

Mistral

Mistral 系列涵盖从轻量高效到大规模多语言支持的多种 LLM,其中除原始Mistral外还包含多个模型:

  • Mistral NeMo(12B)

    • 支持长达 128K tokens 的上下文窗口
    • 使用量化感知训练(quantization-aware training)
    • 支持 FP8 推理,在不损失性能的前提下提升推理效率
  • Mistral Large 2(123B)

    • 是 Mistral 系列中参数量最大且最强的模型
    • 支持 11 种自然语言 和超过 80 种编程语言
  • Mixtral(8×7B 和 8×22B)

    • 是一种稀疏专家混合模型(SMoE),即每次推理仅激活部分参数
    • 相比同等规模的密集模型,更高效且节省计算资源

Gemma

Gemma 是 Google 推出的开源 LLM 系列,聚焦轻量与高效兼顾。Gemma-2(最高达 27B)在大规模英文数据上训练,并在主流基准上表现突出,是当前热门的高性能开源模型之一。

Qwen

Qwen是由阿里云推出的开源大语言模型系列,涵盖多个版本,包括:

  • Qwen:参数规模从 7B 到 72B
  • Qwen1.5:从 0.5B 到 110B
  • Qwen2:从 0.5B 到 72B
  • Qwen2.5:从 0.5B 到 72B,是最新一代版本

其中,Qwen2.5 是当前 Qwen 系列的最新模型集,预训练语料高达 18 万亿 tokens(18T)

相较于 Qwen2,Qwen2.5 在以下方面取得了显著提升

  • 知识保留能力增强
  • 代码生成与数学推理能力大幅提升
  • 指令遵循性能显著优化
  • 支持长文本生成(超过 8K tokens
  • 对结构化数据(如 JSON)的理解与生成能力也有明显进展

GLM

360GLM是由三六零集团与智谱AI于2023年5月16日联合发布的千亿级参数规模大语言模型。它是一系列具备中英文双语能力的大语言模型(LLM),在多个任务上表现出色。该系列目前已经升级至第四代模型 GLM-4,其最大模型参数规模为 9B,具备出色的对话能力

Baichuan

Baichuan(百川) 是一系列开源的中英双语大语言模型(LLM),其最新版本为 Baichuan-2。Baichuan-2 在法律、医疗等垂直领域的任务中表现出良好潜力,显示其在专业领域应用中的发展前景。

Llama 大家族

Meta AI 于 2023 年 2 月发布了 LLaMA 模型系列,包含四种参数规模:7B、13B、30B 和 65B。它在多个开源评估基准上表现出色,成为目前最受欢迎的开源语言模型之一。

大量研究者在 LLaMA 的基础上进行了指令微调(instruction tuning)或持续预训练(continual pre-training)。其中,对 LLaMA 进行指令微调已成为构建定制模型的主流方法。

在将 LLaMA 应用于非英语语言任务时,通常需要扩展词表(原始模型词表主要基于英语语料训练),或通过目标语言的指令数据或语料进行微调。

由于 LLaMA 表现优异,许多多模态模型选择将其作为基础语言模型,以实现强大的语言理解与生成能力。
其中,Vicuna 特别受欢迎,常被用于多模态模型中。

API

相比直接使用本地模型副本,API 接口为普通用户提供了更便捷的方式使用大语言模型(LLMs),无需本地部署即可调用强大的模型功能。

OpenAI GPT-3 系列的七个主要模型接口如下:

  1. ada
  2. babbage
  3. curie
  4. davinci(GPT-3 系列中最强版本)
  5. text-ada-001
  6. text-babbage-001
  7. text-curie-001

其中前四个(ada、babbage、curie、davinci)可在 OpenAI 的服务器上进行微调。它们分别对应以下 GPT-3 模型规模:

  • babbage → GPT-3(1B 参数)
  • curie → GPT-3(6.7B)
  • davinci → GPT-3(175B)

常用的大语言模型预训练语料

与早期的预训练语言模型(PLMs)相比,参数数量显著增加的大型语言模型(LLMs)需要更大量的训练数据,并且这些数据需要涵盖广泛的内容领域。

语料库分为五类:网页、书籍、维基百科、代码和其他。

网页

名称数据来源体量(Token)多语言支持是否开源清洗方式用途或代表模型
CommonCrawl全网网页爬取PB级(原始数据)含多语言✅(部分)需手动处理(如用 CCNet)GPT-3、PaLM、其他多数模型的基础源
C4(Colossal Clean Crawled Corpus)基于清洗后的 CommonCrawl多版本:en(806G)、mC4(38T)等✅(mC4)预处理清洗(已去噪、筛选)T5、LaMDA、Gopher、UL2、mT5 等
RedPajama-DataCommonCrawl 子集(经过筛选)≈30T token(100B 文档)✅(英、法、西、德、意)用 CCNet 清洗、去重、打标签开源大模型训练数据(Hugging Face 可下载)
RefinedWebCommonCrawl(2008–2023 全量)总量约 5T(开源部分 600B)不明确(主要是英文)严格筛选、去重Falcon 模型训练语料
WebTextReddit 上高评分链接内容未公布主要英文❌(不开源)无公开详情GPT-2 原始训练数据
OpenWebText(WebText 替代)Reddit 高分链接(社区重建)与 WebText 类似(未明确)主要英文类似 WebText 清洗流程GPT-2 替代训练用开源语料

书籍

图书数据

BookCorpus 是早期小规模模型(如 GPT 和 GPT-2)中常用的数据集,包含超过 11,000 本书。

另一个大规模图书语料库是 Project Gutenberg,包含超过 70,000 本文学类书籍,包括小说、散文、诗歌、戏剧、历史、科学、哲学等各种类型的公共领域作品。它是目前最大的开源图书合集之一,曾被用于训练 MT-NLG 和 LLaMA 模型。

GPT-3用了Book1和Book2书籍,corpus非常大,未公布。

学术数据

arXiv 数据集 是一个包含约 170 万篇学术论文的语料库,涵盖物理、数学和计算机科学等多个领域。
S2ORC 是由 Semantic Scholar 收集的语料库,包含约 1.36 亿篇学术论文。它还发布了一个衍生数据集 peS2o,其中包含约 420 亿个tokens。

维基百科

维基百科是一个在线百科全书,包含大量高质量的文章,涵盖各种主题。这些文章大多数采用说明文风格(并附有参考资料支持),内容覆盖多个语言和学科领域。通常,经过筛选的英文版本是多数大型语言模型(如 GPT-3、LaMDA 和 LLaMA)中最常使用的版本。由于维基百科支持多种语言,因此也可用于多语言模型的训练场景。

代码

两个主要来源是:公开代码仓库(如 GitHub)和代码相关的问答平台(如 StackOverflow)。

Google 公开发布了 BigQuery 数据集,包含代码。此外,Hugging Face 收集并发布了一个名为 The Stack 的代码数据集,覆盖超过 30 种编程语言。The Stack 持续更新,目前 v1.2 版本已经扩展至 358 种编程语言。

其他

除了前面提到的各种特定类型的数据集外,研究者们还将不同类型的数据组合使用,以便更好地训练语言模型。

The Pile 是一个大规模、多样化的开源文本数据集,总量超过 800GB;ROOTS 是另一个混合数据集,由多个较小的数据集组成,总共包含 1.61TB 文本。

还有一个混合数据集是 Dolma,它包括来自 Common Crawl 的网页文本、Semantic Scholar 的学术论文、GitHub 的代码、图书、Reddit 的社交媒体内容和维基百科数据。Dolma 包含约 200TB 原始文本,总词元数达到 3 万亿。

常用微调数据集

在预训练完成之后,需要对大型语言模型(LLMs)进行进一步的微调,以提升模型能力。这一过程通常包括两个主要步骤:指令微调和对齐微调。

指令微调数据集

在预训练之后,指令微调是一种重要的方法,用于增强或激发大型语言模型(LLMs)特定的能力,例如指令跟随能力。

它有三种数据集:1)自然语言处理任务类数据集(NLP task datasets)2)日常对话类数据集(daily chat datasets)3)合成类数据集(synthetic datasets)

NLP任务类数据集

这一类数据集是在已有的自然语言处理任务数据(如文本分类、摘要等)的基础上,加入相应的自然语言任务描述进行格式化处理,转换为“指令 + 输入 + 输出”的形式,用于指令微调。在这一类别中,P3 和 FLAN 是两个被广泛使用的数据集。

日常对话数据集

这一类数据集基于真实用户对话构建,其中问题由人类提出,回答则主要由人工标注者或大型语言模型(如 ChatGPT、GPT-4)生成。ShareGPT、OpenAssistant 和 Dolly 是最常用的三个代表。

合成数据集

这类数据集通常是通过引导大型语言模型(LLMs)按预设规则或方法生成的。在这一类中,Self-Instruct-52K、Alpaca 和 Baize 是三个常用于微调LLMs的合成数据集。

对齐微调数据集

除了指令微调之外,为了使大型语言模型(LLMs)能够对齐人类的价值观和偏好(例如:有用性、诚实性和无害性),构建高质量的对齐数据集也非常重要。

数据集名称数据规模对齐目标数据来源每条样本的结构标注者类型特点/备注
HH-RLHF~169KHelpfulness & Harmlessness人工生成对话用户提问 + 2 个模型回复 + 人类偏好选择众包人工标注者模型与人类之间真实对话,偏好选出更有用或更安全的回复
SHP~385KHelpfulnessReddit 社区真实内容Reddit 问题/指令 + 2 条评论 + 用户偏好Reddit 用户投票(自然标注)内容真实自然,跨 18 个主题领域,如法律、烹饪等
PKU-SafeRLHF~330KHelpfulness & Harmlessness专家人工对比标注问题 + 2 个回答 + 安全标签 + 偏好标签专家包含 14 类风险维度的安全性判断,结构更复杂
Stack Exchange Preferences~10MHelpfulnessStack Overflow提问 + 多个回答 + 每个回答的得票数与“是否被采纳”标签Stack 用户(投票与采纳)数据规模最大,侧重技术类问答,基于社区行为生成偏好标注
Sandbox Alignment Data~169KSocietal alignment(社会价值对齐)模型生成并评价社会性问题 + 多个模型回答 + 其他模型打分模型自己由多个模型互评生成,模拟社会交互,不依赖人类标注

工具库资源

Transformers 是一个开源的 Python 库,用于构建基于 Transformer 架构的模型,由 Hugging Face 开发和维护。它提供了一个简单、易用的 API,便于用户使用和自定义各种预训练模型。

DeepSpeed 是由微软开发的一个深度学习优化库,兼容 PyTorch,它支持多种用于分布式训练的优化技术,例如内存优化(包括 ZeRO 技术、梯度检查点)以及流水线并行(pipeline parallelism)等。

Megatron-LM 是由 NVIDIA 开发的一个深度学习库,用于训练大规模语言模型。它同样提供了丰富的分布式训练优化技术,包括模型并行和数据并行、混合精度训练以及 FlashAttention。这些优化技术能够显著提升训练效率和速度,从而实现跨多个 GPU 的高效分布式训练。

JAX 是由 Google 开发的一个 Python 库,用于实现高性能的机器学习算法。它允许用户在数组上便捷地进行计算,并支持硬件加速(如 GPU 或 TPU)。JAX 能够在多种设备上高效计算,并提供一些重要功能,例如自动微分和即时编译。

Colossal-AI 是由 HPC-AI Tech 开发的深度学习库,用于训练大规模的人工智能模型。该库基于 PyTorch 实现,支持多种并行训练策略,并能够结合 PatrickStar 提出的方法,优化异构内存管理。

BMTrain 是由 OpenBMB 开发的一个高效分布式训练库,用于训练具有大规模参数的模型。它强调代码简洁、资源占用低、易于部署的特点。

FastMoE 是一个专门用于训练 MoE(混合专家模型) 的训练库。它基于 PyTorch 开发,在设计中兼顾了效率和易用性。

vLLM 是当前最先进的 LLM 推理/部署框架之一,特别适合需要快速响应、低资源占用和高兼容性的场景。它使得将 Hugging Face 模型部署为 ChatGPT 风格的 API 服务变得快速高效,非常适合应用落地和企业级部署需求。

DeepSpeed-MII 是一个高度工程化、适合大规模部署的推理加速工具,特别适用于希望用低成本、高性能方式运行 LLM 的团队。它集成多项底层优化技术,并支持主流开源大模型,是构建企业级大模型推理服务的理想选择之一。

DeepSpeed-Chat 是构建和训练 ChatGPT 风格模型的完整解决方案,尤其适合开发者和研究者进行 RLHF 全流程训练。它将复杂的训练任务封装为易于上手的工具,同时提供 DeepSpeed 高效的底层优化能力,大大降低了 RLHF 的技术门槛和资源成本。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值