# 大语言模型部署可行性分析  最近几年的大模型里程碑 ## Basic Language Model 基础语言模型是指只在大规模文本语料中进行了预训练的模型,未经过指令和下游任务微调、以及人类反馈等任何对齐优化。 基础语言模型的预训练通常采用自监督学习的方法,下面是一般的预训练过程: 1. 数据收集:首先,需要收集大规模的文本语料作为训练数据。这些语料可以是来自互联网、维基百科、新闻文章、书籍等各种来源的文本。 1. 预处理:在训练之前,对收集到的文本进行预处理。这可能包括去除标点符号、分割成句子或段落,处理大小写等。预处理的目的是将文本转化为模型可以处理的形式。 1. 构建模型:选择合适的神经网络架构作为基础语言模型,并进行初始化。常用的架构包括Transformer模型等。 1. 预训练:使用预处理后的文本数据进行模型的预训练。预训练的目标是通过自监督学习来让模型学习文本的内在表示和语言规律。常见的自监督学习任务包括掩码语言模型(Masked Language Modeling)和下一句预测(Next Sentence Prediction)等。在掩码语言模型任务中,模型需要从输入文本中预测被遮盖的词语;在下一句预测任务中,模型需要判断两个句子是否相邻。 1. 参数优化:通过在预训练数据上进行训练,优化模型的参数。通常使用梯度下降等优化算法来最小化模型与真实文本之间的差异。 预训练过程中,模型通过大规模的文本数据学习到了语言的一般规律、词汇知识和句子结构等信息。这样的预训练使得模型在后续的指令微调、下游任务微调或人类反馈优化过程中具备了基础的语言理解和生成能力,从而可以更好地适应特定任务的要求。 **基础模型汇总:** | Model | Size | Architecture | Access | Date | |--------------|-------|----------------|---------------------|----------| | Switch Transformer | 1.6T | Decoder(MOE) | - | 2021-01 | | GLaM | 1.2T | Decoder(MOE) | - | 2021-12 | | PaLM | 540B | Decoder | - | 2022-04 | | MT-NLG | 530B | Decoder | - | 2022-01 | | J1-Jumbo | 178B | Decoder | api | 2021-08 | | OPT | 175B | Decoder | api | ckpt | 2022-05 | | BLOOM | 176B | Decoder | api | ckpt | 2022-11 | | GPT 3.0 | 175B | Decoder | api | 2020-05 | | LaMDA | 137B | Decoder | - | 2022-01 | | GLM | 130B | Decoder | ckpt | 2022-10 | | YaLM | 100B | Decoder | ckpt | 2022-06 | | LLaMA | 65B | Decoder | ckpt | 2022-09 | | GPT-NeoX | 20B | Decoder | ckpt | 2022-04 | | Falcon | 40B | Decoder | ckpt | 2023-05 | | UL2 | 20B | agnostic | ckpt | 2022-05 | | 鹏程.盘古α | 13B | Decoder | ckpt | 2021-04 | | T5 | 11B | Encoder-Decoder| ckpt | 2019-10 | | CPM-Bee | 10B | Decoder | api | 2022-10 | | rwkv-4 | 7B | RWKV | ckpt | 2022-09 | | GPT-J | 6B | Decoder | ckpt | 2022-09 | | GPT-Neo | 2.7B | Decoder | ckpt | 2021-03 | | GPT-Neo | 1.3B | Decoder | ckpt | 2021-03 |  ### 英文 #### **T5** T5 是谷歌提出了一个统一预训练模型和框架,模型采用了谷歌最原始的 Encoder-Decoder Transformer结构。T5将每个文本处理问题都看成“Text-to-Text”问题,即将文本作为输入,生成新的文本作为输出。通过这种方式可以将不同的 NLP 任务统一在一个模型框架之下,充分进行迁移学习。为了告知模型需要执行的任务类型,在输入的文本前添加任务特定的文本前缀 (task-specific prefifix ) 进行提示,这也就是最早的 Prompt。也就说可以用同样的模型,同样的损失函数,同样的训练过程,同样的解码过程来完成所有 NLP 任务。 T5 本身主要是针对英文训练,谷歌还发布了支持 101 种语言的 T5 的多语言版本 mT5。 #### **GPT-3** 大语言模型中最具代表和引领性的就是发布 ChatGPT 的 OpenAI 的 GPT 系列模型 (GPT-1、GPT-2、GPT-3、GPT-3.5、GPT-4),并且当前大部分大语言模型的结构都是 GPT-style ,文章生成式预训练模型中介绍了GPT-1/2/3, 且从 GPT-3 开始才是真正意义的大模型。 GPT-3 是 OpenAI 发布的 GPT 系列模型的一个,延续了 GPT-1/2 基于Transformer Decoder 的自回归语言模型结构,但 GPT-3 将模型参数规模扩大至 175B, 是 GPT-2 的 100 倍,从大规模数据中吸纳更多的知识。GPT-3不在追求 zero-shot 的设定,而是提出 In-Context Learning ,在下游任务中模型不需要任何额外的微调,利用 Prompts 给定少量标注的样本让模型学习再进行推理生成。就能够在只有少量目标任务标注样本的情况下进行很好的泛化,再次证明大力出击奇迹,做大模型的必要性。通过大量的实验证明,在 zero-shot、one-shot 和 few-shot 设置下,GPT-3 在许多 NLP 任务和基准测试中表现出强大的性能,只有少量目标任务标注样本的情况下进行很好的泛化,再次证明大力出击奇迹,做大模型的必要性。 #### **LaMDA** LaMDA 是谷歌在2021年开发者大会上公布的专用于对话的大语言模型,具有 137B 个参数。论文中提出三个指导模型更好训练的指标:质量/Quality(合理性/Sensibleness、特异性/Specificity、趣味性/Interestingness,SSI)、安全性/Safety、真实性/Groundedness。和其他大模型一样,LaMDA分为预训练和微调两步,在微调阶段,生成式任务(给定上下文生成响应)和判别式任务(评估模型生成响应的质量和安全性)应用于预训练模型进行微调形成 LaMDA。对话期间,LaMDA 生成器在给定多轮对话上下文时生成几个候选响应,然后 LaMDA 判别器预测每个候选响应的 SSI 和安全分数。安全分数低的候选响应首先被过滤掉,剩下的候选响应根据 SSI 分数重新排名,并选择分数最高的作为最终响应。为提升 LaMDA 生成响应的真实可靠性,收集标注用户与 LaMDA 间对话的数据集,并在适用的情况下使用检索查询和检索结果进行注释。然后,在这个数据集上微调 LaMDA,学习与用户交互期间调用外部信息检索系统,提升生成响应的真实可靠性。 #### **Jurassic-1** Jurassic-1 是以色列的 AI 公司 AI21 Labs 发布的一对自回归语言模型,由 178B 参数模型 J1-Jumbo 和 7B 参数模型 J1-Large 组成,大致对应 GPT-3 175B 和 GPT-3 6.7B 两个模型。该模型主要对标 GPT-3,在数据补全、零样本学习和少样本学习方面对模型进行了评估,Jurassic-1 模型可以预测来自比 GPT-3 更广泛的领域的文本(网络、学术、法律、源代码等),在零样本条件中实现可比的性能,并且少样本性能优于 GPT-3,因为他们能够将更多示例放入prompt中。 #### **MT-NLG** Megatron-Turing NLG (MT-NLG) 是由 Microsoft 和 NVIDIA 共同研发的大语言模型,具有 530B 个参数,,是 GPT-3 的三倍多,MT-NLG 在多个 benchmarks 中实现了非常好的零、一和少量样本学习性能。 研究认为训练如此大的语言模型有两个挑战,一是存储高效性,将模型参数全部拟合到及时最大GPT的内存中已不再可能;二是计算高效性,若不同时优化算法、软件和硬件堆栈,所需的大量计算操作可能会导致不切实际的长训练时间;需要需要在内存和计算上都可扩展的高效并行技术,以充分发挥数千个 GPU 的潜力。对此,论文提出了结合了 DeepSpeed 的管道并行和数据并行性以及 Megatron 的张量切片并行的高效且可扩展的 3D 并行软件系统。同时,还介绍了模型高效训练的硬件基础设施,提高训练效率和稳定性。 #### **PaLM** PaLM 是谷歌2022年提出的 540B 参数规模的大语言模型,它采用的是 GPT-style 的 decoder-only 的单向自回归模型结构,这种结构对于 few-shot 更有利。PaLM 是使用谷歌提出的 Pathways 系统(一种新的 ML 系统,可以跨多个 TPU Pod 进行高效训练)在 6144 块TPU v4 芯片上训练完成的。作者在 Pod 级别上跨两个 Cloud TPU v4 Pods 使用数据并行对训练进行扩展,与以前的大多数 LLM 相比,是一个显著的规模增长。PaLM 实现了 57.8% 的硬件 FLOPs 利用率的训练效率,是 LLM 在这个规模上实现的最高效率。PaLM 在数百种语言理解和生成 benchmarks 上实现最先进的few-shot 学习结果,证明了scaling 模型的好处。在其中的许多任务中,PaLM 540B 实现了突破性的性能,在一组多步推理任务上的表现优于经过微调的 SOTA 模型。并且大量 BIG-bench 任务显示了模型规模的扩大带来性能的不连续提升,当模型扩展到最大规模,性能急剧提高。 #### **OPT** OPT 是由 Meta AI 研究人员发布的一系列大规模预训练语言模型,模型包括125M、350M、1.3B、2.7B、6.7B、13B、30B、66B、175B 9个不同的参数规模和版本,除了 175B 的版本需要填写申请获取外,其它规模版本的模型都完全开放下载,可以免费获得。OPT-175B 和 GPT-3 的性能相当,并且部署只需要损耗 GPT-3 1/7 的能量损耗。OPT 系列模型开源的目的是为促进学术研究和交流,因为绝大多数大语言模型训练成本高昂,导致大部分研究人员都无法负担大语言模型的训练或使用;同时,各大企业发布的大语言预训练模型由于商业目的也都无法完整访问模型权重,只能通过 API 调用获取结果,阻碍了学术的交流与研究。 #### **LLaMA** LLaMA 是 Meta AI 发布的包含 7B、13B、33B 和 65B 四种参数规模的基础语言模型集合,LLaMA-13B 仅以 1/10 规模的参数在多数的 benchmarks 上性能优于 GPT-3(175B),LLaMA-65B 与业内最好的模型 Chinchilla-70B 和 PaLM-540B 比较也具有竞争力。 这项工作重点关注使用比通常更多的 tokens 训练一系列语言模型,在不同的推理预算下实现最佳的性能,也就是说在相对较小的模型上使用大规模数据集训练并达到较好性能。Chinchilla 论文中推荐在 200B 的 tokens 上训练 10B 规模的模型,而 LLaMA 使用了 1.4T tokens 训练 7B的模型,增大 tokens 规模,模型的性能仍在持续上升。 #### **BLOOM** BLOOM 是 BigScience(一个围绕研究和创建超大型语言模型的开放协作研讨会)中数百名研究人员合作设计和构建的 176B 参数开源大语言模型,同时,还开源了BLOOM-560M、BLOOM-1.1B、BLOOM-1.7B、BLOOM-3B、BLOOM-7.1B 其他五个参数规模相对较小的模型。BLOOM 是一种 decoder-only 的 Transformer 语言模型,它是在 ROOTS 语料库上训练的,该数据集包含 46 种自然语言和 13 种编程语言(总共 59 种)的数百个数据来源。 实验证明 BLOOM 在各种基准测试中都取得了有竞争力的表现,在经过多任务提示微调后取得了更好的结果。BLOOM 的研究旨在针对当前大多数 LLM 由资源丰富的组织开发并且不向公众公开的问题,研制开源 LLM 以促进未来使用 LLM 的研究和应用。 ### 中文 #### **GLM-130B** GLM-130B 是清华大学与智谱AI共同研制的一个开放的双语(英汉)双向密集预训练语言模型,拥有 1300亿个参数,使用通用语言模型(General Language Model, GLM)的算法进行预训练。 2022年11月,斯坦福大学大模型中心对全球30个主流大模型进行了全方位的评测,GLM-130B 是亚洲唯一入选的大模型。GLM-130B 在广泛流行的英文基准测试中性能明显优于 GPT-3 175B(davinci),而对 OPT-175B 和 BLOOM-176B 没有观察到性能优势,它还在相关基准测试中性能始终显著优于最大的中文语言模型 ERNIE 3.0 Titan 260B。GLM-130B 无需后期训练即可达到 INT4 量化,且几乎没有性能损失;更重要的是,它能够在 4×RTX 3090 (24G) 或 8×RTX 2080 Ti (11G) GPU 上有效推理,是使用 100B 级模型最实惠的 GPU 需求。 #### **ERNIE 3.0 Titan** ERNIE 3.0 是百度发布的知识增强的预训练大模型,参数规模为 10B。ERNIE 实现了兼顾自然语言理解和自然语言生成的统一预训练框架,使得经过训练的模型可以通过零样本学习、少样本学习或微调轻松地针对自然语言理解和生成任务进行定制。 ERNIE 3.0 Titan 是百度与鹏城实验室发布的目前为止全球最大的中文单体模型,它是ERNIE 3.0的扩大和升级,模型参数规模达到 260B,相对GPT-3的参数量提升50%。此外,在预训练阶段还设计了一个自监督的对抗性损失和一个可控的语言建模损失,使 ERNIE 3.0 Titan 生成可信和可控的文本(Credible and Controllable Generations)。 为了减少计算开销,ERNIE 3.0 Titan 提出了一个在线蒸馏框架,教师模型将同时教授学生模型和训练自己以更高效地利用计算资源。ERNIE 3.0 Titan 在 68 个 NLP 数据集上的表现优于最先进的模型。 ## Instruction-Finetuned Language Model 通常情况下,预训练的语言模型(如GPT-3)具有广泛的语言生成能力,可以生成各种各样的句子和段落,但它并没有特定的任务或指令。 通过使用指令微调技术,我们可以将预训练的语言模型针对特定的任务或指令进行微调。这种微调的过程可以包括两个阶段: 预训练阶段:在此阶段,语言模型首先通过大规模的无监督学习从大量的文本数据中进行预训练。这使得它具有了广泛的语言理解和生成能力。 微调阶段:在此阶段,预训练的模型使用特定任务的有标签数据进行微调。这些有标签的数据包含了特定任务的指令或示例,语言模型通过学习这些数据来适应特定的任务或指令,并且生成与任务相关的输出。 通过指令微调,语言模型可以变得更具针对性,可以根据指令或任务执行特定的操作,例如回答问题、生成代码、提供建议等。这种指令微调的语言模型在特定领域或任务中具有更高的适应性和效果。 经过 Instruction 微调的大模型,几乎都是在基础语言模型基础上进行指令微调、人类反馈、对齐等优化操作。 1. 指令微调(Instruction-Finetuning):假设你有一个语言模型,可以根据你的指令为你推荐电影。在预训练之后,模型具备了广泛的电影知识,但它不知道如何根据你的指令来进行推荐。通过指令微调,你可以提供一些有关你喜欢的类型、导演或演员等方面的指令,并使用这些指令来微调模型,使其能够根据你的指令提供更准确的电影推荐。 2. 人类反馈(Human Feedback):假设你有一个聊天机器人,它的目标是提供有关健康饮食的建议。初始时,模型可能会给出不太准确或不够流畅的建议。通过收集人类用户的反馈,你可以让用户对聊天机器人的回答进行评分或提供改进建议。然后,将这些反馈作为训练数据,通过重新训练模型,使其能够生成更准确、流畅的健康饮食建议。 3. 对齐(Alignment):假设你正在训练一个语言模型来生成摘要,希望它能够从一篇新闻文章中自动提取关键信息生成摘要。在训练过程中,你会提供一些文章和对应的期望摘要。然后,通过对比模型生成的摘要与期望摘要之间的相似性,你可以确定模型生成摘要的质量,并根据这种对齐反馈来调整模型的训练,使其生成更符合预期的摘要。 **指令微调LLMs:** | Model | Size | Architecture | Access | Date | |--------------|-------|----------------|---------------------|----------| | Flan-PaLM | 540B | Decoder | - | 2022-10 | | BLOOMZ | 176B | Decoder | ckpt | 2022-11 | | InstructGPT | 175B | Decoder | api | 2022-03 | | Galactica | 120B | Decoder | ckpt | 2022-11 | | OpenChatKit | 20B | - | ckpt | 2023-03 | | Flan-UL2 | 20B | Decoder | ckpt | 2023-03 | | Gopher | - | - | - | - | | Chinchilla | - | - | - | - | | Flan-T5 | 11B | Encoder-Decoder| ckpt | 2022-10 | | T0 | 11B | Encoder-Decoder| ckpt | 2021-10 | | Alpaca | 7B | Decoder | demo | 2023-03 | | Orca | 13B | Decoder | [ckpt]https://aka.ms/orca-1m | 2023-06 |  ### 英文 #### **Alpaca** [主页](https://crfm.stanford.edu/2023/03/13/alpaca.html?spm=a2c6h.12873639.article-detail.4.6b827ba9RF6FHE) Alpaca是通过对Meta的LLaMA 7B模型进行微调而得到的一个指令微调模型。它是通过在52K个指令跟随示范中进行训练,模仿使用text-davinci-003生成的样式来进行自我指导。Alpaca展示了与OpenAI的text-davinci-003相似的许多行为,但其规模较小、易于复制,并且成本较低。 虽然Alpaca是通过微调基础语言模型而得到的,但它被特别强调只用于学术研究,商业使用是被禁止的。这是基于几个因素的考虑,包括LLaMA模型具有非商业许可证、使用的指令数据是基于OpenAI的text-davinci-003(其使用条款禁止开发与OpenAI竞争的模型),以及Alpaca还没有设计足够的安全措施,因此不能用于一般用途部署。 - Alpaca-LoRA https://github.com/tloen/alpaca-lora 该项目使用低秩适应 (LoRA) 重现Stanford Alpaca。项目提供了一个与 text-davinci-003 质量相似的指令模型,可以在 Raspberry Pi 上运行(用于研究),代码可以很容易地扩展到 13B、30B 和 65B 模型。 - Baize https://github.com/project-baize/baize Baize 是一个使用 LoRA 微调的开源聊天模型。 它使用与 ChatGPT 聊天生成的 100k 对话进行训练。 还使用 Alpaca 的数据来提高其性能。 目前已经发布了 7B、13B 和 30B 规模模型。 - Luotuo https://github.com/LC1332/Luotuo-Chinese-LLM 来自商汤科技和华中科技大学开源中文语言模型骆驼 Luotuo,该项目基于 LLaMA、Stanford Alpaca、Alpaca LoRA、Japanese-Alpaca-LoRA 等完成,单卡就能完成训练部署。 - Lit-LLaMA ️ https://github.com/Lightning-AI/lit-llama LLaMA 的独立实现,支持量化、LoRA微调和预训练。在 Apache 2.0 许可下完全开源。 此实现基于 nanoGPT。 - Vicuna (FastChat) https://github.com/lm-sys/FastChat 一个达到ChatGPT 90%效果的开源聊天机器人。 - Chinese-Vicuna https://github.com/Facico/Chinese-Vicuna 一个中文低资源的LLaMA + LoRA方案,结构参考Alpaca - GPT4All https://github.com/nomic-ai/gpt4all 基于 LLaMA,用大约 800k GPT-3.5-Turbo 生成数据训练的助手式大语言模型。 - privateGPT https://github.com/imartinez/privateGPT 基于GPT4All模型,可以对本地文档资料进行QA,信息完全私密。 #### **Pythia** 主页:https://github.com/EleutherAI/pythia Pythia是EleutherAI的一个项目,旨在理解自回归转换器训练过程中知识如何发展和演变。它结合可解释性分析和比例定律来提供模型训练和行为洞见。 - Open-Assistant SFT-4 12B Model:https://huggingface.co/OpenAssistant - Databricks Dolly V2.0:https://www.databricks.com/blog/2023/04/12/dolly-first-open-commercially-viable-instruction-tuned-llm #### **RWKV** RWKV(Receptance Weighted Key Value),这是一种新颖的架构,有效地结合了 RNN 和 Transformer 的优点,同时规避了两者的缺点。RWKV 设计精良,能够缓解 Transformer 所带来的内存瓶颈和二次方扩展问题,实现更有效的线性扩展,同时保留了使 Transformer 在这个领域占主导的一些性质。 论文地址:https://arxiv.org/pdf/2305.13048.pdf Github:https://github.com/BlinkDL/RWKV-LM Demo 地址:https://www.codewithgpu.com/i/app/BlinkDL/ChatRWKV/RWKV-4-Raven-7B #### **MPT-7B** MPT-7B是MosaicML最新发布的开源模型,经过从零开始的训练,使用了1T个标记。与LLaMA-7B相媲美,MPT-7B具有商业使用许可,并且解决了其他开源模型的限制。MPT-7B可处理长输入,最多支持84k个标记,远超其他模型。通过FlashAttention和FasterTransformer等技术,MPT-7B具备快速训练和推理能力。开源训练代码提供了高效性。MPT-7B经过严格评估,质量达到LLaMA-7B的水平。除了基础模型,MPT系列还提供了三个微调变种。总体而言,MPT-7B是商业可用、开源的模型,数据规模大且处理长输入,训练和推理速度快,质量高,为用户提供了强大的工具。 主页:https://www.mosaicml.com/blog/mpt-7b MPT-7B-StoryWriter-65k+:https://huggingface.co/mosaicml/mpt-7b-storywriter ### **Nous-Hermes-13b** Nous-Hermes-13b是一款最先进的语言模型,经过对超过30万条指令的微调。Nous Research进行了细致的微调工作,由Teknium和Karan4D领导微调和数据集的策划,Redmond AI提供计算资源,还有其他几位贡献者。最终的结果是一个增强版的Llama 13b模型,与GPT-3.5-turbo在各种任务上的性能相媲美。这个模型的长回复、低错误率以及缺乏OpenAI审查机制使其脱颖而出。微调过程在8x a100 80GB DGX机器上进行,序列长度为2000,耗时50多个小时。 ### 中文 #### **GLM (General Language Model)** 内测链接: ChatGLM-130B 内测网站:https://chatglm.cn/ ChatGLM 博客:https://chatglm.cn/blog API 调用: ChatGLM API 网站:https://open.bigmodel.ai/ ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。ChatGLM-6B官方链接: - Github:https://github.com/THUDM/ChatGLM-6B - Huggingface:https://huggingface.co/THUDM/chatglm-6b VisualGLM-6B官方链接: - Github:https://github.com/THUDM/VisualGLM-6B - Huggingface:https://huggingface.co/THUDM/visualglm-6b 部署&微调教程: - 【官方教程】ChatGLM-6B 微调:P-Tuning,LoRA,Full parameter,https://www.bilibili.com/video/BV1fd4y1Z7Y5 - 技术博客列表:https://bm.aminer.cn/home - ChatGLM-6B 优秀开发项目列表 https://lslfd0slxc.feishu.cn/docx/JAgsd5WVgoZ1bKxYzq0c8gh5neh - GLM-130B https://github.com/THUDM/GLM-130B?spm=a2c6h.12873639.article-detail.46.6b827ba9RF6FHE #### MOSS - 主页:https://txsun1997.github.io/blogs/moss.html - Github:https://github.com/OpenLMLab/MOSS ## 大语言榜单 ### Holistic Evaluation of Language Models (HELM) Holistic Evaluation of Language Models (HELM) 是为了提高语言模型的透明度而开发的一种评估方法。其主要目标是整合对语言模型的各种潜在场景(即使用案例)和度量(即期望特性)的分类,并选择一个基于覆盖率和可行性的广泛子集,同时注意到那些被遗漏或代表性不足的部分,例如被忽视的英语方言的问题回答,或者信任度的度量。 HELM采用了多度量方法:对每一个核心场景,它尽可能地(87.5%的时间)测量7个度量(准确性,校准,鲁棒性,公平性,偏见,毒性,和效率),确保除了准确性之外的度量不会被忽视,并明确揭示了不同模型和度量之间的权衡。同时,基于26个针对性的场景,它还进行了7次针对性评估,以更深入地分析特定方面(如知识,推理,记忆/版权,虚假信息)。 此外,HELM对30个知名的语言模型(包括开放的,有限访问的,和封闭的模型)进行了大规模评估,在所有42个场景中,包括21个以前没有在主流LM评估中使用过的场景。在HELM之前,模型平均只在核心HELM场景的17.9%上进行了评估,有些知名模型甚至没有一个共享的场景。HELM将这个比例提高到了96.0%:现在所有30个模型都在一组核心场景和度量上进行了密集的基准测试,并且条件是标准化的。评估揭示了关于不同场景,度量,和模型之间相互影响的25个顶级发现。 - 主页:https://crfm.stanford.edu/helm/latest/ - QA榜:https://crfm.stanford.edu/helm/latest/?group=question_answering | Model/adapter | Mean win rate ↑ [ sort ] | MMLU - EM ↑ [ sort ] | BoolQ - EM ↑ [ sort ] | NarrativeQA - F1 ↑ [ sort ] | NaturalQuestions (closed-book) - F1 ↑ [ sort ] | NaturalQuestions (open-book) - F1 ↑ [ sort ] | QuAC - F1 ↑ [ sort ] | HellaSwag - EM ↑ [ sort ] | OpenbookQA - EM ↑ [ sort ] | TruthfulQA - EM ↑ [ sort ] | |----------------------------|-------------------------|---------------------|----------------------|-------------------------------|---------------------------------------------|----------------------------------------------|---------------------|-------------------------|--------------------------|---------------------------| | text-davinci-003 | 0.988 | 0.569 | 0.881 | 0.727 | 0.406 | 0.77 | 0.525 | 0.822 | 0.646 | 0.593 | | text-davinci-002 | 0.961 | 0.568 | 0.877 | 0.727 | 0.383 | 0.713 | 0.445 | 0.815 | 0.594 | 0.61 | | Cohere Command beta (52.4B) | 0.92 | 0.452 | 0.856 | 0.752 | 0.372 | 0.76 | 0.432 | 0.811 | 0.582 | 0.269 | | Anthropic-LM v4-s3 (52B) | 0.865 | 0.481 | 0.815 | 0.728 | 0.288 | 0.686 | 0.431 | 0.807 | 0.558 | 0.368 | | TNLG v2 (530B) | 0.85 | 0.469 | 0.809 | 0.722 | 0.384 | 0.642 | 0.39 | 0.799 | 0.562 | 0.251 | | J1-Grande v2 beta (17B) | 0.821 | 0.445 | 0.812 | 0.725 | 0.337 | 0.625 | 0.392 | 0.764 | 0.56 | 0.306 | | Luminous Supreme (70B) | 0.757 | 0.38 | 0.775 | 0.711 | 0.293 | 0.649 | 0.37 | - | - | 0.222 | | OPT (175B) | 0.721 | 0.318 | 0.793 | 0.671 | 0.297 | 0.615 | 0.36 | 0.791 | 0.586 | 0.25 | | Cohere Command beta (6.1B) | 0.719 | 0.406 | 0.798 | 0.709 | 0.229 | 0. ### Arena [Chatbot Arena: Benchmarking LLMs in the Wild with Elo Ratings](https://lmsys.org/blog/2023-05-03-arena/) "Arena" 是一个为大型语言模型(LLMs)设立的基准测试平台,这个平台通过随机、匿名的竞争对战的方式来进行众包评估。在这个平台上,用户可以与两个匿名模型进行聊天,然后投票决定哪一个模型更好。该平台的数据收集方式代表了LLMs在真实环境中的一些使用情况。平台会记录所有用户的交互。在分析中,只有当模型名称被隐藏时才会使用投票数据。 "Chatbot Arena" 采用了 Elo 评分系统,这是一种在象棋和其他竞争游戏中广泛使用的评分系统。Elo 评分系统对于这种场景非常适用,因为有多个模型,并且它们之间进行两两对战。 根据收集到的数据,"Arena"计算了模型的 Elo 评分,并在一张主要结果表中展示了这些数据。平台提供的数据只包含投票结果,不包含对话历史,因为公开对话历史可能会引发隐私和恶劣行为的问题。 "Chatbot Arena"的推出是为了解决大型语言模型基准测试的挑战。尽管每周都有新模型发布,但社区在有效地对这些模型进行基准测试方面面临着挑战。大型语言模型助手的基准测试极其具有挑战性,因为问题可以是开放式的,很难编写程序自动评估响应质量。在这种情况下,我们通常必须依赖基于两两比较的人工评估。 Demo: https://chat.lmsys.org/?arena **热门开源大语言模型排名** | Rank | Model | Elo Rating | Description | |------|-----------------------------|------------|-------------------------------------------------------------------| | 1 | 🥇 vicuna-13b | 1169 | A chat assistant fine-tuned from LLaMA on user-shared conversations by LMSYS | | 2 | 🥈 koala-13b | 1082 | A dialogue model for academic research by BAIR | | 3 | 🥉 oasst-pythia-12b | 1065 | An Open Assistant for everyone by LAION | | 4 | alpaca-13b | 1008 | A model fine-tuned from LLaMA on instruction-following demonstrations by Stanford | | 5 | chatglm-6b | 985 | An open bilingual dialogue language model by Tsinghua University | | 6 | fastchat-t5-3b | 951 | A chat assistant fine-tuned from FLAN-T5 by LMSYS | | 7 | dolly-v2-12b | 944 | An instruction-tuned open large language model by Databricks | | 8 | llama-13b | 932 | Open and efficient foundation language models by Meta | | 9 | stablelm-tuned-alpha-7b | 858 | Stability AI language models | **大语言模型总榜** leaderboard: https://chat.lmsys.org/?arena | Rank | Model | Elo Rating | Description | |------|---------------------|------------|-----------------------------------------------------------------------------------------| | 1 | 🥇 gpt-4 | 1225 | ChatGPT-4 by OpenAI | | 2 | 🥈 claude-v1 | 1195 | Claude by Anthropic | | 3 | 🥉 claude-instant-v1 | 1153 | Claude Instant by Anthropic | | 4 | gpt-3.5-turbo | 1143 | ChatGPT-3.5 by OpenAI | | 5 | vicuna-13b | 1054 | A chat assistant fine-tuned from LLaMA on user-shared conversations by LMSYS | | 6 | palm-2 | 1042 | PaLM 2 for Chat (chat-bison@001) by Google | | 7 | vicuna-7b | 1007 | A chat assistant fine-tuned from LLaMA on user-shared conversations by LMSYS | | 8 | koala-13b | 980 | A dialogue model for academic research by BAIR | | 9 | mpt-7b-chat | 952 | A chatbot fine-tuned from MPT-7B by MosaicML | | 10 | fastchat-t5-3b | 941 | A chat assistant fine-tuned from FLAN-T5 by LMSYS | | 11 | alpaca-13b | 937 | A model fine-tuned from LLaMA on instruction-following demonstrations by Stanford | | 12 | RWKV-4-Raven-14B | 928 | An RNN with transformer-level LLM performance | | 13 | oasst-pythia-12b | 921 | An Open Assistant for everyone by LAION | | 14 | chatglm-6b | 921 | An open bilingual dialogue language model by Tsinghua University | | 15 | stablelm-tuned-alpha-7b | 882 | Stability AI language models | | 16 | dolly-v2-12b | 866 | An instruction-tuned open large language model by Databricks | | 17 | llama-13b | 854 | Open and efficient foundation language models by Meta | ### GPT4ALL榜单 主页:https://gpt4all.io/index.html | Model | BoolQ | PIQA | HellaSwag | WinoGrande | ARC-e | ARC-c | OBQA | Avg | |--------------------------|-------|------|-----------|------------|-------|-------|------|------| | GPT4All-J 6B v1.0 | 73.4 | 74.8 | 63.4 | 64.7 | 54.9 | 36 | 40.2 | 58.2 | | GPT4All-J v1.1-breezy | 74 | 75.1 | 63.2 | 63.6 | 55.4 | 34.9 | 38.4 | 57.8 | | GPT4All-J v1.2-jazzy | 74.8 | 74.9 | 63.6 | 63.8 | 56.6 | 35.3 | 41 | 58.6 | | GPT4All-J v1.3-groovy | 73.6 | 74.3 | 63.8 | 63.5 | 57.7 | 35 | 38.8 | 58.1 | | GPT4All-J Lora 6B | 68.6 | 75.8 | 66.2 | 63.5 | 56.4 | 35.7 | 40.2 | 58.1 | | GPT4All LLaMa Lora 7B | 73.1 | 77.6 | 72.1 | 67.8 | 51.1 | 40.4 | 40.2 | 60.3 | | GPT4All 13B snoozy | 83.3 | 79.2 | 75 | 71.3 | 60.9 | 44.2 | 43.4 | 65.3 | | GPT4All Falcon | 77.6 | 79.8 | 74.9 | 70.1 | 67.9 | 43.4 | 42.6 | 65.2 | | Nous-Hermes | 79.5 | 78.9 | 80 | 71.9 | 74.2 | 50.9 | 46.4 | 68.8 | | Dolly 6B | 68.8 | 77.3 | 67.6 | 63.9 | 62.9 | 38.7 | 41.2 | 60.1 | | Dolly 12B | 56.7 | 75.4 | 71 | 62.2 | 64.6 | 38.5 | 40.4 | 58.4 | | Alpaca 7B | 73.9 | 77.2 | 73.9 | 66.1 | 59.8 | 43.3 | 43.4 | 62.5 | | Alpaca Lora 7B | 74.3 | 79.3 | 74 | 68.8 | 56.6 | 43.9 | 42.6 | 62.8 | ### 本地LLMs对比(github榜单) 主页:https://github.com/Troyanovsky/Local-LLM-comparison | Model | Avg Score | Colab Link | Date Added | Link | | --- | --- | --- | --- | --- | | wizardLM-13B-1.0-GPTQ (using oobabooga/text-generation-webui) | 9.63 | [Colab](https://colab.research.google.com) | 2023/05/29 | [Link](https://huggingface.co/TheBloke/wizardLM-13B-1.0-GPTQ) | | Nous-Hermes-13B-GPTQ (using oobabooga/text-generation-webui) | 9.56 | [Colab](https://colab.research.google.com) | 2023/06/03 | [Link](https://huggingface.co/TheBloke/Nous-Hermes-13B-GPTQ/) | | Selfee-13B-GPTQ (using oobabooga/text-generation-webui) | 9.31 | [Colab](https://colab.research.google.com) | 2023/06/07 | [Link](https://huggingface.co/TheBloke/Selfee-13B-GPTQ) | | minotaur-13B-GPTQ (using oobabooga/text-generation-webui) | 9.31 | [Colab](https://colab.research.google.com) | 2023/06/09 | [Link](https://huggingface.co/TheBloke/minotaur-13B-GPTQ) | | wizard-vicuna-13B.ggml.q4_0 (using llama.cpp) | 9.31 | [Colab](https://colab.research.google.com) | 2023/05/07 | [Link](https://huggingface.co/TheBloke/wizard-vicuna-13B-GGML) | | wizardLM-7B.q4_2 (in GPT4All) | 9.31 | No | 2023/05/07 | [Link](https://gpt4all.io/models/ggml-wizardLM-7B.q4_2.bin) | | 13B-HyperMantis_GPTQ (using oobabooga/text-generation-webui) | 9.00 | [Colab](https://colab.research.google.com) | 2023/06/03 | [Link](https://huggingface.co/digitous/13B-HyperMantis_GPTQ_4bit-128g/) | | tulu-13B-GPTQ (using oobabooga/text-generation-webui) | 9.00 | [Colab](https://colab.research.google.com) | 2023/06/13 | [Link](https://huggingface.co/TheBloke/tulu-13B-GPTQ) | | Vicuna-13B-CoT-GPTQ (using oobabooga/text-generation-webui) | 8.88 | [Colab](https://colab.research.google.com) | 2023/06/09 | [Link](https://huggingface.co/TheBloke/Vicuna-13B-CoT-GPTQ) | | Airoboros-13B-GPTQ-4bit | 8.75 | [Colab](https://colab.research.google.com) | 2023/05/25 | [Link](https://huggingface.co/TheBloke/airobor) ### Hugging Face开源大语言模型榜 主页: https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard | Model | Revision | Average ⬆️ | ARC (25-shot) ⬆️ | HellaSwag (10-shot) ⬆️ | MMLU (5-shot) ⬆️ | TruthfulQA (0-shot) ⬆️ | |--------------------------------------------------|----------|-------------|------------------|-------------------------|------------------|----------------------| | tiiuae/falcon-40b-instruct | main | 63.2 | 61.6 | 84.4 | 54.1 | 52.5 | | timdettmers/guanaco-65b-merged | main | 62.2 | 60.2 | 84.6 | 52.7 | 51.3 | | CalderaAI/30B-Lazarus | main | 60.7 | 57.6 | 81.7 | 45.2 | 58.3 | | tiiuae/falcon-40b | main | 60.4 | 61.9 | 85.3 | 52.7 | 41.7 | | timdettmers/guanaco-33b-merged | main | 60.0 | 58.2 | 83.5 | 48.5 | 50.0 | | ausboss/llama-30b-supercot | main | 59.8 | 58.5 | 82.9 | 44.3 | 53.6 | | llama-65b | main | 58.3 | 57.8 | 84.2 | 48.8 | 42.3 | | huggyllama/llama-65b | main | 58.3 | 57.8 | 84.2 | 48.8 | 42.3 | | pinkmanlove/llama-65b-hf | main | 58.3 | 57.8 | 84.2 | 48.8 | 42.3 | | MetaIX/GPT4-X-Alpasta-30b | main | 57.9 | 56.7 | 81.4 | 43.6 | 49.7 | | Aeala/VicUnlocked-alpaca-30b | main | 57.6 | 55.0 | 80.8 | 44.0 | 50.4 | | digitous/Alpacino30b | main | 57.4 | 57.1 | 82.6 | 46.1 | 43.8 | | Aeala/GPT4-x-AlpacaDente2-30b | main | 57.2 | 56.1 | 79.8 | 44.0 | 49.1 | | TheBloke/dromedary-65b-lora-HF | main | 57.0 | 57.8 | 80.8 | 50.8 | 38.8 | ...... ### 国内野榜(基于中文测试)  --- ## 总结 按照需求 > 私有化部署,部署平台PC > 中文能力强,支持英文 > 有比较灵活的提示工程和本地知识库接入能力,能严格按照提示工程约束规则输出结果,提示工程字符数量规模越大越好 选择原则:**开源、社区大、可部署、性能好** 中文有清华大学的GLM、复旦大学的MOSS、鹏城·盘古α以及商汤的Chinese-Vicuna,英文有Vicuna、GPT4all和RWKV等。其中GPT4all相关项目**privateGPT**有本地知识库的接入能力,比较符合需求。 综合考虑后,以下的chatbot工程项目最值的尝试: - **ChatGLM(中英文)**(基于GLM,国内最大开源社区) - **Nous-Hermes(英文)** (开源本地大语言模型模型新王) - **privateGPT(中英文)**(使用langchain等提示工程framework,支持本地知识库,社区大,默认使用ggml-gpt4all-j-v1.3-groovy) - **Vicuna-13B(中英文)**(基于斯坦福alpaca-llama,最经典,但中文相对支持差) - **RWKV(中英文)**(demo中文效果不错,研究探索性质更多) - **MPT-7B(中英文)**(最大支持65ktoken,但中文支持相对差) -------- ## 新一版langchain项目(6/14) 按照可行性进行排序 **1. gpt_academic(35.9k):https://github.com/binary-husky/gpt_academic 2. privateGPT(30k) https://github.com/imartinez/privateGPT 3. langchain-ChatGLM(9k) https://github.com/imClumsyPanda/langchain-ChatGLM** 4. localGPT(8.4k) https://github.com/PromtEngineer/localGPT#how-does-it-work 5. DB-GPT(3.9k) https://github.com/csunny/DB-GPT 6. h2ogpt(2.2k) https://github.com/h2oai/h2ogpt -------- ## 模型机能评估(6/15) - chatglm-6b  - MOSS  - vicuna-13b  - baichuan-7b  - Chinese-LLaMA-Alpaca 
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up