ChatGPT的平替来了?一文总结 ChatGPT 的开源平替,你值得拥有

news/2024/11/29 5:42:14/

文章目录

  • 【AIGC精选】总结 ChatGPT 的开源平替,你值得拥有
    • 1.斯坦福发布 Alpaca 7B,性能匹敌 GPT-3.5
    • 2.弥补斯坦福 Alpaca 中文短板,中文大模型 BELLE 开源
    • 3.国产AI大模型 ChatGLM-6B 开启内测
    • 4.中文 Alpaca 模型 Luotuo 开源
    • 5. ChatGPT 最强竞品 Claude 开放API

【AIGC精选】总结 ChatGPT 的开源平替,你值得拥有

2023 年,聊天机器人领域似乎只剩下两个阵营:「OpenAI 的 ChatGPT」和「其他」。

再加上前段时间 GPT-4 的发布,ChatGPT 也有了更强大的推理和多模态能力,OpenAI 几乎不可能将其开源。

OpenAI 分享了大量 GPT-4 的基准和测试结果,但是基本上没有提供用于训练的数据、成本、或者用于创建模型的方法。

在这里插入图片描述

然而,表现欠佳的「其他」阵营却一直在做开源方面的努力。

目前业界可以下载到的一些大模型:

  • GLM-10B/130B:双语(中文和英文)双向稠密模型。
  • OPT-2.7B/13B/30B/66B:Meta开源的预训练语言模型。
  • LLaMA-7B/13B/30B/65B:Meta开源的基础大语言模型。
  • Alpaca(LLaMA-7B):一个强大的可复现的智能跟随模型,种子任务都是英语,收集的数据也都是英文,因此训练出来的模型未对中文优化。
  • Alpaca-Lora:Stanford Alpaca 是在 LLaMA 整个模型上微调,而 Alpaca-Lora 则是利用 Lora 技术,在冻结原模型 LLaMA 参数的情况下,通过往模型中加入额外的网络层,并只训练这些新增的网络层参数。由于这些新增参数数量较少,这样不仅微调的成本显著下降,还能获得和全模型微调类似的效果。
  • BELLE(BLOOMZ-7B/LLaMA-7B):项目基于 Stanford Alpaca,针对中文做了优化,模型调优仅使用由ChatGPT生产的数据(不包含任何其他数据)。
  • ChatGLM-6B:中英双语的对话语言模型。

原文传送门:【AIGC精选】总结 ChatGPT 的开源平替,你值得拥有

1.斯坦福发布 Alpaca 7B,性能匹敌 GPT-3.5

面对 ChatGPT 等大模型的来势汹汹,开源平替是一个不错的选择。

二月低,Meta「开源」了一个新的大模型系列 —— LLaMA(Large Language Model Meta AI),参数量从 70 亿到 650 亿不等。130 亿参数的 LLaMA 模型「在大多数基准上」可以胜过参数量达 1750 亿的 GPT-3,而且可以在单块 V100 GPU 上运行。

传送门:Meta发布最新大模型LLaMA:参数规模更小,单卡就能跑赢GPT-3

在这里插入图片描述

图注:LLaMA做出的一些成果

翻译:
- 2月24日,LLaMA发布,并在非商业许可下提供给政府、社区和学术界的研究人员和实体工作者;
- 3月2日,4chan网友泄露了全部的LLaMA模型;
- 3月10日,Georgi Gerganov创建了llama.cpp工具,可以在搭载M1/M2芯片的Mac上运行LLaMA;
- 3月11日:通过llama.cpp可以在4GB RaspberryPi上运行7B模型,但速度比较慢,只有10秒/token;
- 3月12日:LLaMA 7B在一个node.js执行工具NPX上成功运行;
- 3月13日:llama.cpp可以在Pixel 6手机上运行;
- 3月14日,斯坦福Alpaca「羊驼」发布。

3月14日,斯坦福基于 LLaMA 7B 微调出一个具有 70 亿参数的新模型 Alpaca,他们使用了 Self-Instruct 论文中介绍的技术生成了 52K 条指令数据,同时进行了一些修改,在初步的人类评估中,Alpaca 7B 模型在 Self-Instruct 指令评估上的表现类似于 text-davinci-003(GPT-3.5)模型。

从参数规模的角度看,Alpaca 远远小于 text-davinci-003,移动端甚至也可以运行 7B 的轻量级语言模型。

在性能上,研究团队测试的结果表明 Alpaca 的输出良好,并且反映出指令遵循数据集的一般风格。例如,Alpaca 输出的答案通常比 ChatGPT 更简洁,这和 text-davinci-003 类似。不过,Alpaca 还是会表现出语言模型的几种常见缺陷,包括幻觉、毒性和刻板印象。

成本方面,研究所涉及到的数据集,是斯坦福团队花了不到500美元用 OpenAI 的API来生成的。另外,在 8 个 80GB A100 上微调一个 7B LLaMA 模型需要 3 个小时,这对大多数云计算提供商来说成本不到 100 美元。所以,斯坦福团队用不到 600 美元就复现了一个性能匹敌 GPT-3.5的AI模型。

部署方面,基于 LLaMA 微调的 Alpaca 可以轻松在本地部署。没有显卡也没关系,苹果笔记本甚至树莓派、手机都可以玩。

最后,团队把数据集(秒省500刀,且比原论文的数据多样性更高)、代码统统都给开源了,这下子人人都能去微调个效果炸裂的对话AI:复制一个GPT-3.5效果的AI,很便宜,很容易,还很小。

在这里插入图片描述

项目地址:
https://github.com/tatsu-lab/stanford_alpaca

试用地址:
https://alpaca-ai-custom6.ngrok.io/

Demo地址:
https://crfm.stanford.edu/alpaca/

2.弥补斯坦福 Alpaca 中文短板,中文大模型 BELLE 开源

由于 Alpaca 的种子任务都是英语,收集的数据也都是英文,因此训练出来的模型未对中文优化。为了提升对话模型在中文上的效果,开源中文对话大模型 70 亿参数的 BELLE(Bloom-Enhanced Large Language model Engine)来了。

BELLE 基于斯坦福的 Alpaca 完成,对中文做了优化,并对生成代码进行了一些修改,模型调优仅使用由 ChatGPT 生产的数据(不包含任何其他数据)。

在这里插入图片描述

项目地址:
https://github.com/LianjiaTech/BELLE

在数据方面,该项目开源了基于 Alpaca 的数据收集代码,基于这段代码生成了约 100 万条中文数据,结合 Alpaca 的 5 万条英文数据,在 BLOOMZ-7B 模型训练得到的 checkpoint 上传在 Hugging Face。

Hugging Face 地址:
https://huggingface.co/BelleGroup

该项目还采取了不同大小规模(20 万、60 万、100 万和 200 万样本)的指令学习的数据集训练模型,得到不同的模型版本如下所示:
在这里插入图片描述

该项目也采用对应数据集基于LLAMA-7B训练调优了模型,现已开放:
在这里插入图片描述

具体的模型训练方法可参考Hugingface Transformers的样例,SFT方法可参考Alpaca的训练代码。

3.国产AI大模型 ChatGLM-6B 开启内测

3 月 14 日,由清华技术成果转化的公司智谱 AI 开源了 GLM 系列模型的新成员——中英双语对话模型 ChatGLM-6B,初具问答和对话功能,现已开启邀请制内测(内测申请网址 http://chatglm.cn)。需要注意的是,目前 ChatGLM 每轮对话最多只可以进行5个来回,每次最多输入1000字。

ChatGLM-6B 基于General Language Model(GLM)架构,具有62亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署。

具体来说,ChatGLM-6B 具备以下特点:

  • 充分的中英双语预训练:ChatGLM-6B 在 1:1 比例的中英语料上训练了 1T 的 token 量,兼具双语能力。
  • 优化了模型架构和大小:具有 62 亿参数,可以在消费级显卡上部署使用。
  • 更长的序列长度:相比 GLM-10B(序列长度 1024),ChatGLM-6B 序列长度达 2048,支持更长对话和应用。
  • 人类意图对齐训练:使用了监督微调(Supervised Fine-Tuning)、反馈自助(Feedback Bootstrap)、人类反馈强化学习(RLHF)等方式,使模型初具理解人类指令意图的能力。

因此,ChatGLM-6B 具备了一定条件下较好的对话与问答能力。

与此同时,ChatGLM-6B 也存在模型容量较小、可能会产生有害说明或有偏见的内容、较弱的多轮对话能力、英文能力不足、易被误导等缺陷。

不过,网上有人质疑该模型是拿 ChatGPT 的数据训练的,加了点中文语料。
在这里插入图片描述

项目地址:
https://github.com/THUDM/ChatGLM-6B

官方博客:
https://chatglm.cn/blog

4.中文 Alpaca 模型 Luotuo 开源

Alpaca 是斯坦福团队基于 LLaMA 7B 在 52k 指令上微调得到的模型,能出色适应多种自然语言应用场景。

Stanford Alpaca 对于普通研究者来说,这是一种切实可行的廉价微调方式,不过需要的运算量仍然较大。而且,Alpaca 的种子任务都是英语,收集的数据也都是英文,因此训练出来的模型未对中文优化。

为了进一步降低微调成本,另一位来自斯坦福的研究者 ——Eric J. Wang 使用 LoRA(low-rank adaptation)技术复现了 Alpaca 的结果。具体来说,Eric J. Wang 使用一块 RTX 4090 显卡,只用 5 个小时就训练了一个和 Alpaca 水平相当的模型,将这类模型对算力的需求降到了消费级。而且,该模型可以在树莓派上运行(用于研究)。

在这里插入图片描述

图注:Eric J. Wang 发布的 Alpaca-LoRA 项目

项目地址:
https://github.com/tloen/alpaca-lora

这非常适合想要训练自己的类 ChatGPT 模型(包括中文版类 ChatGPT)但又没有顶级算力资源配置的研究者。

在 Alpaca-LoRA 项目问世后,为了提升对话模型在中文上的效果,来自商汤科技和华中科技大学开源中文语言模型骆驼 Luotuo,该项目基于 LLaMA、Stanford Alpaca、Alpaca LoRA、Japanese-Alpaca-LoRA 等完成,单卡就能完成训练部署。

一点小插曲,之所以将模型名字命名为骆驼,是因为 LLaMA(大羊驼)和 Alpaca(羊驼)都属于偶蹄目 - 骆驼科。

在这里插入图片描述

项目地址:
https://github.com/LC1332/Chinese-alpaca-lora

目前该项目已公开训练的语料和模型权重文件(两个型号:luotuo-lora-7b-0.1、luotuo-lora-7b-0.3),供开发者可使用自己各种大小的语料,训练自己的语言模型,并适用到对应的垂直领域。

在这里插入图片描述

目前这个中文版 Alpaca-LoRa 模型 —— Luotuo 能够进行简单的中文对话和问答,开发者可以通过引入其他领域的数据进行模型优化。

不过 luotuo-lora-7b-0.1(0.1)、luotuo-lora-7b-0.3(0.3)还是有差距的,在用户询问华中师范大学地址时,0.1 回答错误。

在这里插入图片描述

5. ChatGPT 最强竞品 Claude 开放API

由 OpenAI 前员工(原GPT-3核心成员)创立的人工智能初创公司“Anthropic”发布了一款类似于 ChatGPT的 AI 助手,名为"Claude"。Anthropic宣称,它的目标是“更安全”、“危害更小”的人工智能,但代价更高。目前提供两个版本的 Claude:Claude 和 Claude Instant。不过,Claude 的初始版本无法访问互联网。

因为2019年 OpenAI 与微软达成第一笔交易后越来越注重商业运用,“对公司的方向产生分歧后”离开 OpenAI 的11名前员工创立了“Anthropic”。

在去年12月发布「Constituional人工智能:来自人工智能反馈的无害性」一文后不久,Anthropic 便推出了自家的聊天机器人 Claude,不过并没有开放接口,只能在各个合作伙伴开发的应用中进行体验。

Claude 被称为 ChatGPT 最强竞品,与 ChatGPT 类似,Claude 具有高超的对话能力,能够处理总结、搜索、创意、协同写作、问答、写代码等任务。

3月14日,Anthropic 开放 Claude API,并提供两个版本的模型:Claude 和 Claude Instant。其中 Claude Instant 的延迟更低,性能略差,价格比完全体的 Claude-v1要便宜,两个模型的上下文窗口都是9000个token(约5000个单词,或15页)。

  • Claude Instant,是一个更快、更便宜的模型,可以处理一系列任务,包括随意对话、文本分析、摘要和文档问题回答。定价:输入:0.43美元/百万字符,输出:1.45美元/百万字符。
  • Claude-v1,是Anthropic公司目前最好的产品,擅长于从复杂的对话和创造性的内容生成。定价:输入:2.9美元/百万字符,输出:8.6美元/百万字符。

友情提示:ChatGPT 3.5(gpt-3.5-turbo接口)价格为2.7美元/百万tokens,和Claude-v1版本价格差不多。

在这里插入图片描述

Claude 和 ChatGPT 都依赖于强化学习(RL)来训练偏好(preference)模型,被选中的回复内容将在后续用于模型的微调,只不过具体的模型开发方法不同。Claude 采用了 Anthropic 称之为“宪法式 AI”(Constitutional AI,CAI)的训练技术。

CAI 建立在RLHF的基础之上,不同之处在于,CAI的排序过程使用模型(而非人类)对所有生成的输出结果提供一个初始排序结果。

在这里插入图片描述

体验地址:https://www.anthropic.com/product

自 2020 年底以来,Claude 一直在与发布合作伙伴进行安静的 Beta 测试,包括 AssemblyAI、DuckDuckGo、Notion、Quora 和 Robin AI,具体产品包括为 DuckDuckGo 推出的 DuckAssist 工具、Quora 的 AI 聊天应用程序 Poe 和 AI 写作助手 Notion AI 提供支持。

Claude也在积极的与外部伙伴紧密合作,涵盖问答社区、在线教育、法律领域、数字媒体等。- Quora:通过人工智能聊天应用程序Poe向用户提供Claude的对话能力。
- Juni Learning:一个在线教育解决方案提供商,利用Claude模型对Discord Juni Tutor Bot的能力进行增强,通过在线辅导的方式提升学生的学术能力。
- Notion:Claude 与 Notion 合作以提高工作和学习场景中的生产力。
- DuckDuckGo:一个隐私浏览器,与Anthropic合作,推出全新工具DuckAssist,可以自动从维基百科中提取和总结信息,并对用户的问题进行回答。
- Robin AI:法律领域软件提供商,使用 Claude 来评估合同的特定部分,并提出对客户更友好的新的替代语言。
- AssemblyAI:数字媒体,Claude 帮助其 API 平台大规模转录和理解音频数据。

Claude 的主要优势有以下几点:Claude 比 ChatGPT 更可控,Claude 比 ChatGPT 更诚实,Claude 比 ChatGPT 更无害。

封闭测试期间的客户报告说,Claude 基本不会生成有害的输出,更容易交谈,可操作性更强,不需要精心组织语言,同时还可以对性格、语气和行为等进行设计等。

欢迎各位关注我的个人微信公众号:HsuDan,我将分享更多自己的学习心得、避坑总结、面试经验、AI最新技术资讯。

参考:
https://crfm.stanford.edu/2023/03/13/alpaca.html
https://www.thepaper.cn/newsDetail_forward_22302856
https://www.ithome.com/0/681/614.htm
https://replicate.com/blog/fine-tune-alpaca-with-lora?continueFlag=4ecae39885197a5c008faabbefb5c824
https://www.thepaper.cn/newsDetail_forward_22455425
https://zhuanlan.zhihu.com/p/616929229


http://www.ppmy.cn/news/40159.html

相关文章

【周末闲谈】AI的旅途

个人主页:【😊个人主页】 系列专栏:【❤️周末闲谈】 系列目录 ✨第一周 二进制VS三进制 ✨第二周 文心一言,模仿还是超越? ✨第二周 畅想AR 文章目录系列目录前言AIAI的开端第一个AI程序AI的寒冬关于AI的思考末尾前言…

一些常用芯片

目录 一、FPGA 二、ADC 三、DAC 四、flash 五、ddr 六、电机驱动芯片 七、红外探测器 八、可见光senser 九、以太网phy 十、USB芯片 十 一、视频编解码芯片 十 二、放大器 十三、SRAM 十四、ARM 十五、屏 十六、filter 十七、超声传感器 十八、other 一、FPG…

苹果蓝牙耳机太贵了买哪个替代?苹果蓝牙耳机平替推荐

随着人们生活水平的提高,蓝牙耳机已经遍布在我们生活的各个角落。同时随着科技的发展,许多人果粉选择苹果耳机平替。下面我们一起来看看2023年有哪些适用于苹果的平替蓝牙耳机吧! 一、南卡小音舱Lite2蓝牙耳机 蓝牙版本:5.3 售…

UEFI Device Path (1): 重新认识Device Path

从事UEFI开发的人员,对UEFI Device Path的概念都有一定了解,但未必都建立了比较系统而深刻的认识。UEFI Device Path的认知仅限于: 1)它是用来表示系统中设备的路径;2) 在UEFI SPEC中定义了它的数据结构和若干操作它的UEFI Protocol。除此以外…

SpringBoot源码之Bean的生命周期

入口方法为SpringApplication#run() 1.SpringApplication#run() /*** Run the Spring application, creating and refreshing a new* {link ApplicationContext}.* param args the application arguments (usually passed from a Java main method)* return a running {link A…

QT 安装 及环境变量配置及出现的错误的解决方法

文章目录QT安装教程(win版)下载链接点击 产品 Qt开发工具点击 下载Qt下滑点击 开源用户下载下滑点击 下载Qt在线安装程序点击 win版本下载打开程序这一步可能遇到的问题1.在自己有Qt账号的情况下,下一步无法点击2.弹出一句话You need to verify your Qt account eai…

企业数据平台建设的基石:构建统一的数据存算能力

随着企业数字化程度的逐步提高,数字化业务对数据管理的需求也持续深化。根据企业本身所处的数字化程度不同,我们将企业的数据平台的建设总结为五个阶段,本篇我们对统一的数据存储与算力做介绍。 — 整体介绍 — 企业发展的战略目标就是为了更…

详解linux多线程——互斥锁、条件变量、读写锁、自旋锁、信号量

一、互斥锁(同步) 在多任务操作系统中,同时运行的多个任务可能都需要使用同一种资源。这个过程有点类似于,公司部门里,我在使用着打印机打印东西的同时(还没有打印完),别人刚好也在此…