Xiao Bi, Deli Chen, Guanting Chen, Shanhuang Chen, Damai Dai, Chengqi Deng, Honghui Ding, Kai Dong, Qiushi Du, Zhe Fu, Huazuo Gao, Kaige Gao, Wenjun Gao, Ruiqi Ge,Kang Guan, Daya Guo, Jianzhong Guo, Guangbo Hao, Zhewen Hao, Ying He, Wenjie Hu, Panpan Huang, Erhang Li, Guowei Li, Jiashi Li, Yao Li, Y.K. Li, Wenfeng Liang, Fangyun Lin, A.X. Liu, Bo Liu, Wen Liu, Xiaodong Liu, Xin Liu, Yiyuan Liu, Haoyu Lu, ShanghaoLu, Fuli Luo, Shirong Ma, Xiaotao Nie, Tian Pei, Yishi Piao, Junjie Qiu, Hui Qu, Tongzheng Ren, Zehui Ren, Chong Ruan, Zhangli Sha, Zhihong Shao, Junxiao Song, Xuecheng Su, Jingxiang Sun, Yaofeng Sun, Minghui Tang, Bingxuan Wang, Peiyi Wang, Shiyu Wang, Yaohui Wang, Yongji Wang, Tong Wu, Y. Wu, Xin Xie, Zhenda Xie, Ziwei Xie, Yiliang Xiong, Hanwei Xu, R.X. Xu, Yanhong Xu, Dejian Yang, Yuxiang You, Shuiping Yu, XingkaiYu, B. Zhang, Haowei Zhang, Lecong Zhang, Liyue Zhang, Mingchuan Zhang, MinghuaZhang, Wentao Zhang, Yichao Zhang, Chenggang Zhao, Yao Zhao, Shangyan Zhou, Shunfeng Zhou, Qihao Zhu, Yuheng Zou* *DeepSeek - AI Abstract 开源大语言模型(LLMs)的快速发展确实令人瞩目。然而,先前文献中描述的扩展法则存在不同的结论,这为扩展LLMs蒙上了一层阴影。我们深入研究了扩展法则,并展示了在两个常用开源配置(7B和67B)中促进大规模模型扩展的独特发现。遵循这些扩展法则,我们推出了DeepSeek LLM项目,致力于从长远角度推进开源语言模型的发展。为了支持预训练阶段,我们开发了一个目前包含2万亿个令牌且不断扩大的数据集。此外,我们在DeepSeek LLM基础模型上进行了监督微调(SFT)和直接偏好优化(DPO),从而创建了DeepSeek Chat模型。我们的评估结果显示,DeepSeek LLM 67B在多种基准测试中超越了LLaMA-2 70B,特别是在代码、数学和推理领域。进一步的开放性评估表明,我们的DeepSeek LLM 67B Chat在性能上优于GPT-3.5。 Contents 1 Introduction 3 缩放法则 4 对齐 12 5 评价 13 6 结论、局限性和未来工作 23 A 附录 30 1. Introduction 在过去几年中,基于解码器的Transformer(Vaswani等,2017)的大语言模型(Large Language Models,LLMs)已成为实现通用人工智能(Artificial General Intelligence,AGI)的核心支柱和途径。通过预测连续文本中的下一个单词,LLMs在大规模数据集上进行自我监督预训练,使其能够实现多种目的并具备多种能力,如创作新颖内容、文本总结、代码补全等。后续的发展,如监督微调和奖励建模,使大语言模型更好地遵循用户意图和指令,赋予它们更加多样的对话能力,并迅速扩大其影响力。 这一波浪潮是由封闭产品引发的,如ChatGPT(OpenAI, 2022)、Claude(Anthropic, 2023)和Bard(Google, 2023),这些产品借助了大量计算资源和显著的标注成本进行开发。这些产品大幅提高了社区对开源大语言模型(LLM)能力的期望,从而激发了一系列相关工作(Bai et al., 2023;Du et al., 2022;Jiang et al., 2023;Touvron et al., 2023a, b;Yang et al., 2023)。在这之中,LLaMA系列模型(Touvron et al., 2023a, b)尤为突出。它们整合了一系列研究工作,构建了一个高效且稳定的设计架构,涵盖了从7B到70B参数的不同性能模型。因此,LLaMA系列已成为开源模型中架构与性能的事实基准。 随着LLaMA的出现,开源社区主要集中在训练固定规模(7B、13B、34B和70B)的高质量模型上,往往忽略了对大规模语言模型(LLM)缩放定律的研究探索(Hoffmann等,2022;Kaplan等,2020)。尽管如此,关于缩放定律的研究至关重要,因为当前的开源模型仅处于人工智能通用智能(AGI)发展的初期阶段。此外,早期研究(Hoffmann等,2022;Kaplan等,2020)在计算预算增加时模型和数据的缩放关系上得出了不同的结论,并且未能充分讨论超参数问题。在这篇论文中,我们广泛探讨了语言模型的缩放行为,并将我们的发现应用于两个广泛使用的大规模模型配置,即7B和67B。我们的研究旨在为未来开源大语言模型的缩放奠定基础,推动该领域进一步发展。具体而言,我们首先研究了批量大小和学习率的缩放规律,并发现了它们与模型规模的趋势。在此基础上,我们全面研究了数据和模型规模的缩放规律,成功揭示了最优的模型/数据缩放比例分配策略,并预测了我们大规模模型的预期性能。此外,在开发过程中,我们发现从不同数据集推导出的缩放规律存在显著差异。这表明选择的数据集对缩放行为有显著影响,因此在跨数据集推广缩放规律时应谨慎。 在我们的扩展定律指导下,我们从零开始构建开源的大语言模型,并尽可能多地发布信息供社区参考。我们收集了2万亿个令牌进行预训练,主要为中文和英文。在模型层面,我们大致遵循了LLaMA的架构,但将余弦学习率调度器替换为多步学习率调度器,以保持性能并促进持续训练。我们从多种来源收集了超过100万个监督微调(SFT)实例(Ouyang等,2022)。本文分享了我们在不同SFT策略以及数据消融技术方面的经验和发现。此外,我们还利用直接偏好优化(DPO)(Rafailov等,2023)来提升模型的对话性能。 我们使用基础模型和聊天模型进行了广泛的评估。评估结果表明,DeepSeek 大型语言模型(LLM)在各种基准测试中超越了 LLaMA-2 70B,尤其是在代码、数学和推理领域。在进行少量 finetuning(SFT)和数据增强优化(DPO)之后,DeepSeek 67B 聊天模型在中国语和英语开放式评估中均优于 GPT-3.5,这突显了 DeepSeek 67B 在生成高质量响应和进行有意义跨语言对话方面的出色表现。此外,安全性评估显示,DeepSeek 67B 聊天模型在实际应用中能够提供无害的回答。 在本文的其余部分,我们首先在第2节中介绍了DeepSeek LLM的预训练基本概念,包括数据组成、模型架构、基础设施和超参数。在第3节中,我们详细解释了我们发现的扩展定律及其影响。此外,我们讨论了我们选择预训练超参数的合理性,考虑了从扩展定律分析中获得的见解。在第4节中,我们讨论了我们的微调方法,涵盖了微调数据的组成以及SFT和DPO阶段的具体方法。然后,在第5节中,我们展示了DeepSeek LLM的详细评估结果,包括基础模型和聊天模型,并涵盖了它们在开放评估和安全评估中的表现。最后,我们在第6节中讨论了DeepSeek LLM当前的局限性和未来的发展方向。 2. 预培训 2.1. Data 我们的主要目标是全面增强数据集的丰富性和多样性。我们从可靠来源获得了宝贵见解,如(Computer, 2023;Gao等,2020;Penedo等,2023;Touvron等,2023a)。为了实现这些目标,我们将方法组织为三个关键阶段:去重、过滤和重新混编。去重和重新混编阶段通过采样独特实例确保数据的多样化表示。过滤阶段则提高了信息密度,从而使得模型训练更加高效和有效。 我们采取了积极的去重策略,扩大了去重范围。我们的分析表明,对整个Common Crawl语料库进行去重相比仅在单个备份内进行去重能更有效地消除重复实例。表1显示,在91个备份之间进行去重可以消除的文档数量是单个备份方法的四倍。 在过滤阶段,我们专注于开发稳健的文档质量评估标准。这涉及对语言和语义进行详细分析,从个体和全局视角提供数据质量的视图。在重新混编阶段,我们调整方法以解决数据不平衡问题,重点在于增加被低估领域的存在感。这一调整旨在实现更平衡和包容的数据集,确保多样化的视角和信息得到充分代表。 对于我们的分词器,我们基于tokenizers库(Huggingface Team, 2019)实现了字节级字对编码(BBPE)算法。进行了预分词处理以 防止不同字符类别(如换行符、标点符号和CJK符号)的标记合并,类似于GPT-2(Radford等,2019)。我们还选择将数字拆分为单独的数字,遵循(Touvron等,2023a,b)的方法。基于我们的前期经验,我们将词汇表中常规标记的数量设定为100000。分词器在大约24GB的多语言语料库上进行了训练,并增加了15个特殊标记,使总大小达到100015。为了确保训练期间的计算效率并预留空间以备将来可能需要的任何额外特殊标记,我们将模型的词汇表大小配置为102400进行训练。 Table 2 | Detailed specs of DeepSeek LLM family of models. We choose the hyper - parameters based on our findings in Section 3 DeepSeek LLM的微架构大多遵循LLaMA的设计(Touvron et al., 2023a,b),采用Pre-Norm结构并使用RMSNorm函数(Zhang and Sennrich, 2019),并在Feed-Forward Network(FFN)中使用SwiGLU(Shazeer, 2020)作为激活函数,中间层维度为8푑。它还包括旋转嵌入3 (Su等,2024)用于位置编码。为了优化推理成本,67B模型使用了分组查询注意力(GQA)(Ainslie等,2023),而不是传统的多头注意力(MHA)。 然而,在宏观设计方面,DeepSeek LLM 略有不同。具体而言,DeepSeek LLM 7B 是一个包含30层的网络,而 DeepSeek LLM 67B 则有95层。这些层的调整,在保持参数与其它开源模型一致性的前提下,也促进了模型管道分区以优化训练和推理过程。 不同于大多数使用Grouped-Query Attention(GQA)的工作,我们扩大了67B模型在网络深度上的参数量,而不是像常见的做法那样增加FFN层中间宽度,以期获得更好的性能。详细的网络架构规格详见表2。 2.3. Hyperparameters DeepSeek LLM 使用标准差为 0.006 初始化,并使用 AdamW 优化器(Loshchilov 和 Hutter,2017)进行训练,超参数如




