OpenChatKit:ChatGPT 的开源替代方案?
OpenAI 的 ChatGPT 近期引发了广泛关注,同时也让人们开始反思其背后的发展模式。这家成立于 2015 年的机构,最初以非营利为目标,承诺公开专利和研究成果,致力于为人类福祉服务。然而,随着 2019 年转型为营利性公司 OpenAI LP,并接受了微软高达 10 亿美元的投资后,其发展轨迹发生了转变。GPT-3 仅以 API 形式发布,而 ChatGPT 也未见开源迹象,这使得许多人感到失望。
不过,OpenChatKit 的出现,为那些寻求开源替代方案的人们带来了一线希望。3 月 12 日,Orca Security 的数据科学主管 Itamar Golan 在 Twitter 上分享了这一消息:Together 组织,一个由前 OpenAI 研究员组成的团队,发布了一个类似于 ChatGPT 的开源模型,名为 OpenChatKit。值得注意的是,OpenChatKit 的源代码、模型权重和训练数据集都已完全公开。
OpenChatKit 的技术特点
OpenChatKit 的核心是 GPT-NeoXT-Chat-Base-20B,这是一个基于 EleutherAI 的 GPT-NeoX-20B 模型构建的大型语言模型。EleutherAI 作为一个成立于 2020 年 7 月的“黑客组织”,由一群机器学习研究人员组成,旨在对抗微软和 OpenAI 对大规模 NLP 模型的垄断。他们的目标是构建和开源大型语言模型。
EleutherAI 的创始人 Connor Leahy 曾表示,他们的初衷仅仅是出于对技术的好奇和对挑战的热爱。在成立不到 3 年的时间里,EleutherAI 不断实现其目标,相继发布了类 GPT 的 27 亿参数模型 GPT-Neo、60 亿参数的 NLP 模型 GPT-J,并在去年免费开放了包含 200 亿参数的 GPT-NeoX-20B。
由于 GPT-NeoX-20B 的开源,Together得以利用包含 4300 万条高质量指令的数据集,对模型的聊天功能进行微调。通过在多轮对话、问答、分类、提取和摘要等方面进行重点优化,最终得到了 GPT-NeoXT-Chat-Base-20B。
据 Together 官方介绍,GPT-NeoXT-Chat-Base-20B 开箱即用,为各种自然语言处理任务提供了一个强大的基础。在 HELM 基准测试中,它的得分高于其基本模型 GPT-NeoX,尤其是在问答、提取和分类等任务上。
OpenChatKit 继承了 GPT-NeoXT-Chat-Base-20B 的这些优点,使其在特定领域表现出色。
OpenChatKit 的关键组件
OpenChatKit 主要包含以下四个关键组件:
- 指令调整的大型语言模型:该模型基于 EleutherAI 的 GPT-NeoX-20B,并经过了 4300 万条指令的微调。
- 定制配方:用于对模型进行微调,以实现任务的高精确度。
- 可扩展的检索系统:能够在推理时利用来自文件库、API 或其他实时更新的信息源的信息来增强响应。
- 调节模型:一个由 GPT-JT-6B 微调的模型,用于过滤一些问题的响应。
基于这些组件,OpenChatKit 现阶段在问答、信息提取和文本分类方面表现出色:
User: 将下面句子的情感分为正面、中性或负面:对于教授斯坦福大学的第一门大型语言模型课程,我感到非常兴奋!在这里查看教学大纲。
Bot: 正面的。
User: 将下面句子的情感分为正面、中性或负面:外面在下雨,我感到很忧郁。
Bot: 负面的。
OpenChatKit 的局限性
尽管 OpenChatKit 具有一定的优势,但 Together 也承认,它仍存在不少问题和缺陷,例如编码能力不足、会重复回答等。
- 知识型问答:聊天机器人可能会产生幻觉并给出不正确的结果。用户务必进行事实核查,并在可能的情况下提供反馈和更正的信息。
- 编码任务:聊天机器人没有经过足够大的源代码库的训练,所以暂且无法出色地编写代码。
- 重复回答:有时聊天机器人会重复回答,用户可以通过单击刷新按钮开始新的对话。
- 语境切换:如果在对话中改变话题,聊天机器人可能无法自动进行切换,并将继续提供与先前主题相关的答案。
- 创意写作:当前的聊天机器人不能生成有创意的长文,例如散文或故事。
为此,Together 呼吁大家一起尝试与 OpenChatKit 对话,并积极反馈问题,以此加强数据集并提高其准确性。他们强调,这不仅是一个模型的发布,更是一个开源项目的开始,希望能在社区的帮助下不断改进。
OpenChatKit 的多语言能力
OpenChatKit 能够处理中文问答,无需使用中文数据集进行额外训练。一位开发者分享的截图显示,OpenChatKit 可以理解中文提示,并给出相应的回答。OpenChatKit 在处理中文问题时,输出质量会受到提示的影响。
OpenChatKit 的未来展望
尽管 OpenChatKit 与 ChatGPT 相比仍有差距和不足,但它作为一个开源项目,具有巨大的发展潜力。感兴趣的程序员可以访问项目主页,查看更多信息并进行尝试。
项目地址:https://github.com/togethercomputer/OpenChatKit
测试链接:https://huggingface.co/spaces/togethercomputer/OpenChatKit
OpenChatKit 的出现,为自然语言处理领域带来了一股新的活力。虽然它还处于发展初期,但其开源的特性,以及社区的共同努力,有望使其在未来取得更大的突破。
OpenChatKit的出现,给那些希望参与到大型语言模型开发中的研究者和开发者提供了一个低门槛的平台。通过贡献代码、数据和反馈,社区成员可以共同推动OpenChatKit的进步,使其在各种实际应用中发挥更大的作用。例如,OpenChatKit可以被用于构建智能客服系统,自动文本摘要工具,以及各种教育和娱乐应用。
然而,OpenChatKit的发展也面临着一些挑战。首先,作为一个开源项目,它需要吸引足够多的贡献者,才能保证其持续的进步和维护。其次,OpenChatKit需要不断地提升其性能和功能,才能与商业化的竞争对手相抗衡。最后,OpenChatKit需要解决一些伦理和社会问题,例如如何防止其被用于恶意目的,如何保护用户的隐私等等。
总的来说,OpenChatKit是一个有希望的开源项目,它有可能改变自然语言处理领域的格局。通过社区的共同努力,OpenChatKit有望成为一个强大而可靠的工具,为各行各业带来价值。