初学者也能训练大模型!抱脸用“200页手册”亲

对于技术新手来说,能否从零开始快速训练出世界级的大语言模型(LLM)?答案可能是:是的。近日,Hugging Face在技术博客《The SMOL Training Playbook: The Secrets to Building World-Class LLMS》中,以3B参数大小的SmoilM3训练为主线,系统分析了构建SOTA语言模型的整个过程,包括预训练、后训练和infra。长达200多页的内容,详细记录了哪些方法有效、哪些方法无效,以及如何保证其可靠运行。无论您是刚接触人工智能(AI)领域的学生、想要了解整个流程的工程师,还是规划下一个大型建模项目的团队,本手册都提供了可供您参考的实践经验。原始链接:https://huggingface.co/spaces/huggingfacetb/smol-training-playbook 训练指南针以“我应该这样做还是不这样做?”开始近年来,大许多团队在计算能力可用后立即开始训练模型,但大多数项目都以失败告终。这些失败的根本原因不是算法不够完善,而是动机不明确。 Hugging Face团队用三个问题将整个训练过程变成了清晰的思维链条:为什么训练(why)→训练什么(what)→如何训练(How)。这三个问题看似简单,却能区分“理性训练”和“盲目燃烧算力”的区别。 Why——训练真正值得一练的原因有三个:一是科学研究和探索,比如新架构、新算法的验证;第二,劳动力需求,针对具体情况或安全要求定制模型;三是战略开源,填补大模型领域空白。团队需要通过工程动机(engineering动机)或微调(fine-tuning);如果没有,则进入下一阶段。什么——训练什么?明确练习动机后,下一步就是设计模型。这个阶段包括架构模型、规模、数据源、上下文长度、词汇设计等。比如要部署到手机上,就追求“小而精”;如果你想构建其中一种多语言模型,你必须有一个大的分词器词汇表(Tokenizer Vocab)。如何——如何培训实施阶段总是在动机和设计模型之后。如果前两步没有足够的思考,任何“如何做”的讨论都是空谈。许多研究团队经常选择一个训练框架,确定超参数,然后回过头来问“为什么这样做”。拥抱脸所宣扬的逻辑却恰恰相反:只有明确了“为什么”和“什么”之后,才有利于讨论“如何”的方向和操作。预训练 - 每个模型都以 s 开头mall ablation 实验 许多人认为用 ARXIV 论文训练模型应该会让模型变得更聪明。但这类数据过于专业化,缺乏分类性和多样性,会损害模型的整体性能。在法学硕士领域,人们认为“好”的输入不一定会带来“好”的输出。机器学习确实是一门实验科学。我们不能仅依靠逻辑或常识来判断“什么有效”。我们只能继续进行实验(即消融实验)来比较和验证。抱脸团队认为,消融实验的设置涉及以下三个过程: 1. 选择训练的基线模型需要站在巨人的肩膀上。只有从强大而成熟的基线开始,才能将有限的时间和金钱投入到真正重要的创新和优化上,而不是浪费在解决别人已经解决的问题上。选择时基线,应该与实际用例和部署环境一致;必须经历过大规模训练(万亿代币级别);它必须具有公共且可复制的超参数和设置;这应该有基础培训和保障框架等支持。 2. 选择培训框架。 LLM训练的核心是迭代速度。当模型和数据规模足够大时,限制团队变革速度的往往不是想法,而是训练框架。一个好的LLM训练框架应该提供以下功能: 高性能数据加载器:需要提供一个可以与多个节点高效工作而不成为瓶颈的数据加载器。强大的分布式设置:框架应该处理所有并行场景(数据并行、张量并行、管道并行)及其组合。可调试性和可扩展性:清晰的框架使调试更加容易要添加新功能。支持最新的硬件:必须支持最新的GPU架构并利用特定的硬件功能(例如Hopper架构中的变压器引擎或FP8格式)。成熟的生态系统:活跃的社区、定期的维护和庞大的现有代码库让您能够更快地解决问题并超越现有的解决方案。 3. 建立消融实验框架 消融实验的目的是在错误测量上运行实验,并获得可以自信地推断到生产环境中最终运行的结果。主要有两种方法: 方法一:减少代币数量。您可以使用目标模型大小,但使用更少的标记进行训练。例如,face Hugging 在 SMOLLM3 消融实验中训练了完整的 3B 模型,但只使用了 100B 令牌,而不是 11T 令牌。方法2:使用代理模型。如果目标模型太大,可以训练一个较小的投降模型烧蚀实验。流程——马拉松式的长周期培养LLM是一场长期的、可变的“马拉松”,而不是短期的“冲刺”。很多问题是长期、大范围、高水平才会出现的。它们仅在负载在真实生产环境中运行时才会暴露,而小规模实验无法完全模拟真实生产环境。 Hugging Face 团队解决了两个主要问题: 1. 吞吐量损失。吞吐量(令牌/秒)衡量的是训练过程中系统每秒处理的令牌数量,它直接影响训练时间;吞吐量下降50%意味着原本一个月的运营变成了两个月。训练开始后几个小时内,吞吐量急剧下降。最后,通过分析节点监控指标,我们发现吞吐量下降与磁盘读取延迟峰值相关。问题出在数据存储上,Team Team 的 24TB 数据集存储在 FSX(Weka)中,由于存储已达到极限,因此无法使用。rted 避免在训练过程中出现数据集碎片,迫使 koponan 重新创建它们,从而导致暂停,这解释了吞吐量的大幅波动。 2.潜在的并行化错误实践中还出现了其他意想不到的挑战,例如潜在的张量并行性(TP)错误。研究小组发现,每个 TP 进程使用的随机种子是相同的,这导致结果与非运行 TP 的结果不匹配。由于训练中的所有其他组件之前都通过消融实验进行了验证,因此团队很快将 TP 确定为唯一可能的原因,并在发现性能差距后的一天内修复了该错误。培训后 - 完善模型图 | LLM后期训练流程图 随着基础模型的规模和质量不断提高,后期训练——即预训练模型的后续微调和对齐步骤——产生了最大的差异——LLM价值链中的其他因素。如果预训练是应用程序后训练是将原始能力塑造成可靠可控的形式。具体的培训后技术有:监督微调(SFT):用于注入核心能力;偏好优化(PO):用于直接从人类或人工智能偏好中学习;强化学习(RL):用于超越管理数据并提高可靠性和推理能力; Data curation(数据管理):用于实现多样性和质量之间的适当平衡;分析(Analyse):用于监控进度并立即发现能力恶化的现象。 Hugging Face团队指出,建立世界一流的法学硕士不仅需要蛮力,还需要系统的方法。他们希望这本参考书能为每一个对大比例模型感兴趣的人提供实际的帮助。更多培训详情请查看原文。编辑:晓晓 如需打印或投稿请直接在本文评论区留言 特别声明:以上内容(如有则包括照片或视频)由自媒体平台“网易号”用户上传发布。本平台仅提供信息存储服务。 注:以上内容(包括图片、视频,如有)由网易号用户上传发布,网易号为社交媒体平台,仅提供信息存储服务。

Related Posts

Comments are closed.