Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

机器之心编辑部机器之心报道

还在为玩不了ChatGPT苦恼?这十几个开源平替也能体验智能对话

本文将为大家盘点一下 ChatGPT 的开源平替项目。

距离 ChatGPT 的最初发布,过去差不多四个月的时间了。在这期间,ChatGPT 的惊艳表现,让人直呼 AIGC 是不是要提前实现了。

不过众所周知的一个秘密是,ChatGPT 不大可能开源,加上巨大的算力投入以及海量的训练数据等,都为研究界复制其实现过程设下重重关卡。

面对 ChatGPT 的来势汹汹,开源平替是一个不错的选择,它们在实现相似功能的同时,还能让你通过替代品了解 ChatGPT 的运行机理。

随着技术的进步,现在已经出现了许多其他类似于 ChatGPT 的新 AI 模型。本文我们将为大家盘点一下 ChatGPT 的开源平替项目。内容将分为两部分,一部分为类 ChatGPT 开源项目汇总,另一部分是对该项目汇总的补充。

项目汇总

项目作者 nichtdax 整理了 9 个开源的 ChatGPT 平替项目。接下来会一一介绍。

图片
项目地址:https://github.com/nichtdax/awesome-totally-open-chatgpt

PaLM-rlhf-pytorch

第一个项目是「PaLM-rlhf-pytorch」,项目作者为 Phil Wang。该项目是在 PaLM 架构之上实现 RLHF(人类反馈的强化学习),它基本上是使用 PaLM 的 ChatGPT。

该项目已在 GitHub 上获得了 5.8k 的 Stars。
图片
项目地址:https://github.com/lucidrains/PaLM-rlhf-pytorch

下图为训练流程。

图片
OpenChatKit

第二个项目是「OpenChatKit」,它提供了一个强大的的开源基础,为各种应用程序创建专用和通用的聊天机器人。该 kit 包含了一个经过指令调优的 200 亿参数语言模型、一个 60 亿参数调节模型和一个涵盖自定义存储库最新响应的可扩展检索系统。

OpenChatKit 是在 OIG-43M 训练数据集上训练的,该数据集是 Together、LAION 和 Ontocord.ai 三者的联合。项目作者表示,这不仅仅是一个模型的发布,还是一个开源项目的开始。他们正在发布一套工具和流程,并通过社区贡献持续改进。

该项目已在 GitHub 上获得了 5.7k 的 Stars。
图片
项目地址:https://github.com/togethercomputer/OpenChatKit

text-generation-webui

第三个项目是「text-generation-webui」,它是一个用于运行 GPT-J 6B、OPT、GALACTICA、LLaMA 和 Pygmalion 等大语言模型的 gradio web UI。该项目旨在成为文本生成领域的 AUTOMATIC1111/stable-diffusion-webui。

功能包括使用下拉菜单在不同模型之间切换、提供类似于 OpenAI playground 的笔记本模式、用于对话和角色扮演的聊天模式、为 GPT-4chan 生成漂亮的 HTML 输出等等。

该项目已在 GitHub 上获得了 3.4k 的 Star。
图片
项目地址:https://github.com/oobabooga/text-generation-webui

KoboldAI-Client

第四个项目是「KoboldAI-Client」,它是一个基于浏览器的前端,通过多个本地和远程 AI 模型实现 AI 辅助写作。

KoboldAI-Client 提供了一系列标准的工具,包括内存、作者注释、世界信息、保存 & 加载、可调节的 AI 设置、格式化选项以及导入现有文字冒险游戏《AI Dungeon》的能力。你可以开启 Adventure 模式,也可以玩 AI Dungeon Unleashed 之类的游戏。

该项目已在 GitHub 上获得了 1.4k 的 Stars。
图片

项目地址:https://github.com/KoboldAI/KoboldAI-Client

Open-Assistant

第五个项目是「Open-Assistant」,它旨在让每一个人都可以访问基于聊天的大语言模型。项目作者希望借此在语言创新方面掀起一场革命,就像 stable diffusion 帮助世界以新的方式创造艺术和图像一样。

项目作者计划收集高质量人工生成指令执行样本(指示 + 响应),目标大于 50k。对于收集到的每个指示,他们将采样多个补全结果。接下来进入基于指示和奖励模型的 RLHF 训练阶段。

该项目已在 GitHub 上获得了 19k 的 Stars。
图片
项目地址:https://github.com/LAION-AI/Open-Assistant

stanford_alpaca

第六个项目是「stanford_alpaca」,它旨在建立和共享一个指令遵循的 LLaMA 模型。该 repo 包含了用于微调模型的 52k 数据、用于生成数据的代码以及用于微调模型的代码。

该项目已在 GitHub 上获得了 9.5k 的 Stars。
图片
项目地址:https://github.com/tatsu-lab/stanford_alpaca

ChatRWKV

第七个项目是「ChatRWKV」,它类似于 ChatGPT,但由 RWKV(100% RNN)模型支持,并且是开源的。项目作者表示,RWKV 是目前唯一能在质量和扩展方面媲美 transformers 的 RNN 模型,同时速度更快、节省 VRAM。

该项目已在 GitHub 上获得了 3.5k 的 Stars。
图片
项目地址:https://github.com/BlinkDL/ChatRWKV

ChatGLM-6B

第八个项目是由清华技术成果转化的公司智谱 AI 开源、支持中英双语的对话语言模型「ChatGLM-6B」,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。

ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。

不过由于 ChatGLM-6B 的规模较小,目前已知其具有相当多的局限性,如事实性 / 数学逻辑错误、可能生成有害 / 有偏见内容、较弱的上下文能力、自我认知混乱、以及对英文指示生成与中文指示完全矛盾的内容。

该项目已在 GitHub 上获得了 6k 的 Stars。
图片
项目地址:https://github.com/THUDM/ChatGLM-6B

xmtf

第九个项目是「xmtf」,包含了创建论文《Crosslingual Generalization through Multitask Finetuning》中介绍的 BLOOMZ、mT0 和 xP3 的所有组件。

其中 BLOOMZ 是一个 1760 亿参数且可开放获取的多语言模型;mT0(这里特指谷歌的 T5X);xP3 是 46 种语言的有监督数据集,带有英语和机器翻译的 prompts。
图片
项目地址:https://github.com/bigscience-workshop/xmtf

除了上述提到的模型,ChatGPT 平替项目还包括基于 Meta 开源的大模型系列 LLaMA(Large Language Model Meta AI)的一些研究,这个系列模型的参数量从 70 亿到 650 亿不等。具有 130 亿参数的 LLaMA 模型「在大多数基准上」可以胜过 GPT-3( 参数量达 1750 亿),而且可以在单块 V100 GPU 上运行;而最大的 650 亿参数的 LLaMA 模型可以媲美谷歌的 Chinchilla-70B 和 PaLM-540B。图片
  • 论文链接:https://research.facebook.com/publications/llama-open-and-efficient-foundation-language-models/
  • GitHub 链接:https://github.com/facebookresearch/llama

基于此研究,开发者也提出了几个开源项目。

llama.cpp 无需 GPU,就能运行 LLaMA

llama.cpp 项目实现了在 MacBook 上运行 LLaMA,还有开发者成功的在 4GB RAM 的树莓派上运行了 LLaMA 7B。总结而言,即使开发者没有 GPU ,也能运行 LLaMA 模型。
图片
项目地址:https://github.com/ggerganov/llama.cpp

ChatLLaMA

由于 LLaMA 大模型系列没有使用 RLHF 方法,因此初创公司 Nebuly AI 开源了 RLHF 版 LLaMA(ChatLLaMA)的训练方法。它的训练过程类似 ChatGPT,该项目允许基于预训练的 LLaMA 模型构建 ChatGPT 形式的服务。与 ChatGPT 相比,LLaMA 架构更小,但训练过程和单 GPU 推理速度更快,成本更低;该库还支持所有的 LLaMA 模型架构(7B、13B、33B、65B),因此用户可以根据训练时间和推理性能偏好对模型进行微调。
图片
项目地址:https://github.com/nebuly-ai/nebullvm/tree/main/apps/accelerate/chatllama

期待后续更多开源项目加入进来。

参考链接:https://www.reddit.com/r/MachineLearning/comments/11uk8ti/d_totally_open_alternatives_to_chatgpt/
入门ChatGPT平替
1
相关数据
基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

机器翻译技术

机器翻译(MT)是利用机器的力量「自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)」。机器翻译方法通常可分成三大类:基于规则的机器翻译(RBMT)、统计机器翻译(SMT)和神经机器翻译(NMT)。

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

聊天机器人技术

聊天机器人是经由对话或文字进行交谈的计算机程序。能够模拟人类对话,通过图灵测试。 聊天机器人可用于实用的目的,如客户服务或资讯获取。有些聊天机器人会搭载自然语言处理系统,但大多简单的系统只会撷取输入的关键字,再从数据库中找寻最合适的应答句。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

文本生成技术

文本生成是生成文本的任务,其目的是使人类书写文本难以区分。

语言模型技术

统计式的语言模型是借由一个几率分布,而指派几率给字词所组成的字串。语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。

量化技术

深度学习中的量化是指,用低位宽数字的神经网络近似使用了浮点数的神经网络的过程。

推荐文章
暂无评论
暂无评论~