天天看点

收藏!大型语言模型(LLMs)大盘点,含源码(附链接,持续更新)

作者:智驱力AI

ChatGPT的爆红引起了广泛关注,许多国内高校、研究机构和企业纷纷推出类似的ChatGPT发布计划。然而,由于ChatGPT没有开源,复现它的难度非常大,即使到目前为止,没有任何单位或企业能够成功复现GPT3的全部能力。最近,OpenAI宣布发布了图文多模态的GPT4模型,其能力相对于ChatGPT有了大幅提升,似乎已经嗅到了以通用人工智能为主导的第四次工业革命的味道。

收藏!大型语言模型(LLMs)大盘点,含源码(附链接,持续更新)

无论是国外还是国内,目前与OpenAI之间的差距越来越大,各方都在紧锣密鼓地追赶,以争取在这场技术革新中占据一定的优势地位。目前,许多大型企业的研发基本上都选择闭源的路线。ChatGPT和GPT4的官方公布的细节非常有限,不像之前发布几十页的论文介绍。OpenAI的商业化时代已经到来,当OpenAI不再公开开源时,我们就必须寻求开源模型来打破技术的限制。为此,我整理了一些组织或个人开源的模型,具体如下:

收藏!大型语言模型(LLMs)大盘点,含源码(附链接,持续更新)

ChatYuan:由元语智能开发团队开发和发布,自称为国内最早的一个功能型对话大模型。它可以用于写文章、写作业、写诗歌、中英文翻译等,对于一些特定领域的问题,也可以提供相关信息。该模型目前只支持中文。

❤️[GitHub链接](https://github.com/clue-ai/ChatYuan)

Colossal AI:最近,ColossalAI开源了他们的ChatGPT实现。分享了他们的三步策略,完整实现了ChatGPT核心的技术路线。

本人基于该项目,更加明确了三步策略,并进行了分享:

  • 第一阶段(stage1_sft.py):SFT监督微调阶段,该开源项目没有实现,这个比较简单,因为ColossalAI无缝支持Huggingface,本人直接用Huggingface的Trainer函数几行代码轻松实现,在这里我用了一个gpt2模型,从其实现上看,其支持GPT2、OPT和BLOOM模型;
  • 第二阶段(stage2_rm.py):奖励模型(RM)训练阶段,即项目Examples里train_reward_model.py部分;
  • 第三阶段(stage3_ppo.py):强化学习(RLHF)阶段,即项目train_prompts.py。

三个文件的执行需要放在ColossalAI项目中,其中代码中的cores即原始工程中的chatgpt,cores.nn在原始工程中变成了chatgpt.models。

❤️[GitHub链接](https://github.com/hpcaitech/ColossalAI)

ChatGLM:ChatGLM是清华技术成果转化的公司智谱AI开源的GLM系列的对话模型,支持中英两个语种,目前开源了其62亿参数量的模型。其继承了GLM之前的优势,在模型架构上进行了优化,从而使得部署和应用门槛变低,实现大模型在消费级显卡上的推理应用。

从技术路线上看,其实现了ChatGPT强化学习人类对齐策略,使得生成效果更佳贴近人类价值,其目前能力域主要包括自我认知、提纲写作、文案写作、邮件写作助手、信息抽取、角色扮演、评论比较、旅游建议等,目前其已经开发了正在内测的1300亿的超大模型,算是目前开源平替里面参数规模较大的对话大模型。

❤️[GitHub链接](https://github.com/THUDM/ChatGLM-6B)

LLaMa:LLaMA是由Facebook 母公司Meta发布的全新人工智能大型语言模型,在生成文本、对话、总结书面材料、证明数学定理或预测蛋白质结构等任务上方面表现良好。LLaMA模型支持20种语言,包括拉丁语和西里尔字母语言,目前看原始模型并不支持中文。

LLaMA目前比较火的两个顶流开源项目是ChatLLaMA和stanford_alpaca。

ChatLLaMA是由Nebuly+AI推出的基于人类反馈强化学习的LLaMA+AI聊天机器人的开源实现,它的技术路线类似 ChatGPT,该项目上线刚刚 2 天,狂揽 5.2K 星。

ChatLLaMA 训练过程算法实现主打比 ChatGPT 训练更快、更便宜,据说能快近15倍,主要特色有:

  • 完整的开源实现,允许用户基于预训练的 LLaMA 模型构建 ChatGPT 风格的服务;
  • LLaMA 架构更小,使得训练过程和推理速度更快,成本更低;
  • 内置了对 DeepSpeed ZERO 的支持,以加速微调过程;
  • 支持各种尺寸的 LLaMA 模型架构,用户可以根据自身偏好对模型进行微调。

❤️[GitHub链接](https://github.com/nebuly-ai/nebullvm/tree/main/apps/accelerate/chatllama)

stanford_alpaca:另外一个比较火的是最近刚发布的alpaca(羊驼模型)是基于斯坦福的LLaMA 7B模型微调出的新模型,使用OpenAI的text-davinci-003模型生成了52K个指令样本,并以此微调LLaMA。该项目已开源训练数据、生成训练数据的代码和超参数,模型文件尚未公开,但引起了5.6K个星标的关注。、

❤️[GitHub链接](https://github.com/tatsu-lab/stanford_alpaca)

[DEMO地址](https://alpaca-ai-custom6.ngrok.io)

收藏!大型语言模型(LLMs)大盘点,含源码(附链接,持续更新)

除此之外,还有其他一些开源模型可供参考。例如:

OpenChatKit:由前OpenAI研究员所在的Together团队、LAION和Ontocord.ai团队共同打造。包含200亿个参数,使用了GPT-3的开源版本GPT-NoX-20B进行微调,并使用60亿参数的审核模型进行信息过滤,确保生成内容的安全和质量。

❤️[GitHub链接](https://github.com/togethercomputer/OpenChatKit)

BELLE:基于Stanford Alpaca实现的对话模型,支持中英两种语言。他们开源了62亿参数量的模型,还在开发中的1300亿超大模型。

❤️ [GitHub链接](https://github.com/THUDM/ChatGLM-6B)

PaLM-rlhf-pytorch:其号称首个开源ChatGPT平替项目,其基本思路是基于谷歌语言大模型PaLM架构,以及使用从人类反馈中强化学习的方法(RLHF)。PaLM是谷歌在今年4月发布的5400亿参数全能大模型,基于Pathways系统训练。其可以完成写代码、聊天、语言理解等任务,并且在大多数任务上具有强大的少样本学习性能。同时采用了ChatGPT一样的强化学习机制,能让AI的回答更加符合情景要求,降低模型毒性。

❤️[GitHub链接](https://github.com/lucidrains/PaLM-rlhf-pytorch)

alpaca-lora:alpaca-lora是斯坦福大学的另一个巨作,其使用LoRA(low-rank adaptation)技术复现了Alpaca的结果,用了一个更加低成本的方法,只在一块RTX 4090显卡上训练5个小时得到了一个Alpaca水平相当的模型。而且,该模型可以在树莓派上运行。在该项目中,其使用了Hugging Face的PEFT来实现廉价高效的微调。PEFT 是一个库(LoRA 是其支持的技术之一),可以让你使用各种基于 Transformer的语言模型并使用LoRA对其进行微调,从而使得在一般的硬件上廉价而有效地微调模型。

❤️[GitHub链接](https://github.com/tloen/alpaca-lora)

尽管 Alpaca和alpaca-lora取得了较大的提升,但其种子任务都是英语,缺乏对中文的支持。一方面除了以上提到Belle收集到了大量的中文语料,另一方面基于alpaca-lora等前人工作,来自华中师范大学等机构的三位个人开发者开源的中文语言模型骆驼 (Luotuo),单卡就能完成训练部署。目前该项目释放了两个模型 luotuo-lora-7b-0.1、luotuo-lora-7b-0.3,还有一个模型在计划中。

❤️[GitHub链接](https://github.com/tloen/alpaca-lora)

Dolly:Dolly在Alpaca的启发下,用Alpaca数据集,在GPT-J-6B上实现微调,由于Dolly本身是一个模型的“克隆”,所以团队最终决定将其命名为“多莉”。这种克隆式在Alpaca启发下越来越多,总结起来大致采用Alpaca开源的数据获取方式,在6B或者7B规模大小的旧模型上进行指令微调,获得类似ChatGPT的的效果。这种思想很经济,也能迅速模仿出ChatGPT的韵味来,广受欢迎,一经推出star爆棚。

❤️[GitHub链接](https://github.com/databrickslabs/dolly)

Vicuna 和 Chinese-Vicuna:斯坦福学者继推出alpaca后,联手CMU、UC伯克利等,推出一个全新模型——130亿参数的Vicuna(俗称小羊驼、骆马)。仅需300美元就能实现ChatGPT 90%的性能。Vicuna是通过在ShareGPT收集的用户共享对话上对LLaMA进行微调训练而来,测试过程使用GPT-4作为评判标准,结果显示Vicuna-13B在超过90%的情况下实现了与ChatGPT和Bard相匹敌的能力。UC伯克利LMSys org近期又发布了70亿参数的Vicuna,不仅体积小、效率高、能力强,而且只需两行命令就能在M1/M2芯片的Mac上运行,还能开启GPU加速!

❤️[GitHub链接](https://github.com/lm-sys/FastChat/)

❤️[Chinese-Vicuna GitHub链接]:(https://github.com/Facico/Chinese-Vicuna)

LMFLOW:ChatGPT爆火后,都在寻找通往圣殿的快捷之路,一些类ChatGPT开始出现,尤其是低成本效仿ChatGPT成为一个热门途径。LMFlow就是在这种需求场景下诞生的产物,他使得在3090这样的普通显卡上也能炼大模型。该项目由香港科技大学统计和机器学习实验室团队发起,致力于建立一个全开放的大模型研究平台,支持有限机器资源下的各类实验,并且在平台上提升现有的数据利用方式和优化算法效率,让平台发展成一个比之前方法更高效的大模型训练系统。利用该项目,即便是有限的计算资源,也能让使用者针对专有领域支持个性化训练。

例如LLaMA-7B,一张3090耗时 5 个小时即可完成训练,成本大幅降低。该项目还开放了网页端即刻体验问答服务 (lmflow.com)。LMFlow的出现和开源使得普通资源可以训练问答、陪伴、写作、翻译、专家领域咨询等各种任务。目前很多研究者们正在尝试用该项目训练650亿甚至更高参数量的大模型。

❤️[GitHub链接](https://github.com/OptimalScale/LMFlow)

GPTrillion:该项目号称开源的最大规模模型,高达1.5万亿,且是多模态的模型。其能力域包括自然语言理解、机器翻译、智能问答、情感分析和图文匹配等。

❤️[GitHub链接](https://huggingface.co/banana-dev/GPTrillion)

OpenFlamingo:OpenFlamingo是一个对标GPT-4、支持大型多模态模型训练和评估的框架,由非盈利机构LAION重磅开源发布,其是对DeepMind的Flamingo模型的复现。目前开源的是其基于LLaMA的 OpenFlamingo-9B模型。Flamingo模型在包含交错文本和图像的大规模网络语料库上进行训练,具备上下文少样本学习能力。OpenFlamingo实现了原始Flamingo中提出的相同架构,在一个新的多模态C4数据集的5M样本和LAION-2B的10M样本上训练而来。

❤️[GitHub链接](https://github.com/mlfoundations/open_flamingo)

Baize白泽:该项目提出了一个自动收集 ChatGPT 对话的方法,让 ChatGPT 自我对话,批量生成高质量多轮对话数据集,分别收集了5万条左右Quora、StackOverflow和MedQA的高质量问答语料,并已经全部开源。同时其改进了LLama模型,效果还不错。白泽同样采用目前低成本的LoRA微调方案,获得白泽-7B、13B 和30B三种不同尺度,以及一个医疗垂直领域的模型。遗憾的是中文名字起的不错,但目前仍然不支持中文,中文的白泽模型据悉在计划中,未来发布。

❤️[GitHub链接](https://github.com/project-baize/baize)

Koala考拉:基于LLama的ChatGPT平替继续发酵,UC伯克利的伯克利发布了一个可以在消费级GPU上运行的对话模型Koala,参数达到13B。Koala 的训练数据集包括如下几个部分:ChatGPT数据和开源数据(Open Instruction Generalist (OIG)、斯坦福 Alpaca 模型使用的数据集、Anthropic HH、OpenAI WebGPT、OpenAI Summarization)。Koala模型在EasyLM中使用JAX/Flax实现,用了8 个A100 GPU,完成2轮迭代需要6个小时。评测效果优于Alpaca,达到ChatGPT 50%的性能。

❤️[GitHub链接](https://github.com/young-geng/EasyLM)

StackLLaMA:随着斯坦福Alpaca的出现,一大堆基于LLama的羊驼家族和扩展动物家族开始出现,终于Hugging Face研究人员近期发布了一篇博客StackLLaMA:用RLHF训练LLaMA的实践指南。同时也发布了一个70亿参数的模型——StackLLaMA。这是一个通过人类反馈强化学习在LLaMA-7B微调而来的

希望这些开源项目能够为您提供更多选择,并推动人工智能技术的发展与应用。

Edited by freeze

继续阅读