查看原文
其他

Open Assistant:开源聊天助手

lencx 浮之静 2023-04-20

OpenAssistant[1] :简称 OA,是一款基于聊天的开源助手。该项目的愿景是制作一个可以在单个高端消费类 GPU 上运行的大型语言模型。通过一些修改,OA 还应该能够轻松地与其他第三方应用程序交互,以及从数据库和互联网(Internet)检索信息。它包括模型[2]对话数据集 (OASST1)[3]聊天界面[4]。相关论文 OpenAssistant Conversations - Democratizing Large Language Model Alignment[5]

数据集:为了使大规模对齐的研究更加民主化,发布了 OpenAssistant Conversations(OASST1)数据集,这是一个由人类生成、人类注释的助手式对话语料库,包括 35 种不同语言中的 161k 条消息,用 461k 个质量评分进行了注释,形成了超过 10k 个完全注释的对话树。该语料库是一个全球范围内的众包努力的产物,涉及了超过 13.5k 名志愿者。这个数据集发布是巨大的!有不同的模型可用,包括基于 LLaMA 和基于 Pythia 的模型。

它不同于其他类聊天程序,在它的主面板中,还包含一个任务列表,通过做任务获得积分(目前并不知道积分有啥用)。

常见问题

以下这些问题,可以带你快速了解 OA,如果想要了解更多问题,可以查看 OA FAQ[6]

Open Assistant 会免费吗?

模型代码、权重和数据都是免费的。由于 Stability AI[7] 通过 LAION[8] 提供的计算捐赠,OA 将尽可能长时间地托管当前最佳模型的免费公共实例!

可以本地安装吗?

候选 Pythia SFT 模型可在 HuggingFace OpenAssistant[9] 上获得,通过 HuggingFace Transformers 库来加载,但需要你有足够的硬件来使用它们。HF 上虽然可以在没有硬件的情况下与 OA 聊天。但这些模型不是最终模型,可能会产生不良或不理想的输出。由于 Meta 的许可协议,LLaMa SFT 模型无法直接发布,但 XOR 权重将很快发布。

运行模型的硬件要求

目前最小的(Pythia)模型是 12B 参数,在消费类硬件上运行具有挑战性,但可以在单个专业 GPU 上运行。将来可能会有更小的模型,OpenAssistant 也希望在整数量化等方法上取得进展,这有助于在更小的硬件上运行模型。

涉及哪些技术栈

数据收集应用程序和推理后端是由 Python 实现,使用 FastAPI[10]。前端是用 NextJS[11]Typescript[12] 构建的。ML 代码库主要基于 PyTorch[13],并使用 HuggingFace Transformers[14] 以及加速、DeepSpeed[15]bitsandbytes[16]NLTK[17] 和其他库。

关于数据收集的一些问题

  • 不能使用 ChatGPT 来帮助模型回答问题,它违反了 ChatGPT 服务条款,类似 ChatGPT 的答案将被删除。详情请查看 I want to use GOOD chatGPT chat output that can be used for Open-Assistant training.[18]

  • 如果遇到不会做的助手任务请跳过它

  • OA 回答的问题你应该去核实它,如果不确定,则跳过该任务

  • 账号设置[19]中可以看到任务得分

  • OA Stats[20] 中可以看到具体收集的数据点(定期更新)

  • 如何编写和标记提示,请查看此指南 OA Guidelines[21]

  • GitHub OA Issues[22] 中报告错误或创建新功能请求

  • 无法编写这个话题,即使它不违法。这是因为希望确保 OA 数据集尽可能易于访问,因此有必要避免在 Hugging Face 等网站上出现任何可能成为删除理由的有害或冒犯性内容。OA 也希望训练的模型能够拒绝尽可能少的问题,重要的是不要包含让助手别无选择而只能拒绝的提示,以避免产生有害内容。

References

[1]

OpenAssistant: https://github.com/LAION-AI/Open-Assistant

[2]

模型: https://huggingface.co/OpenAssistant

[3]

对话数据集 (OASST1): https://huggingface.co/datasets/OpenAssistant/oasst1

[4]

聊天界面: https://open-assistant.io/chat

[5]

OpenAssistant Conversations - Democratizing Large Language Model Alignment: https://ykilcher.com/OA_Paper_2023_04_15.pdf

[6]

OA FAQ: https://projects.laion.ai/Open-Assistant/docs/faq

[7]

Stability AI: https://stability.ai

[8]

LAION: https://laion.ai

[9]

HuggingFace OpenAssistant: https://huggingface.co/OpenAssistant

[10]

FastAPI: https://fastapi.tiangolo.com

[11]

NextJS: https://nextjs.org

[12]

Typescript: https://www.typescriptlang.org/

[13]

PyTorch: https://pytorch.org

[14]

HuggingFace Transformers: https://huggingface.co/docs/transformers/index

[15]

DeepSpeed: https://github.com/microsoft/DeepSpeed

[16]

bitsandbytes: https://github.com/TimDettmers/bitsandbytes

[17]

NLTK: https://github.com/nltk/nltk

[18]

I want to use GOOD chatGPT chat output that can be used for Open-Assistant training.: https://github.com/LAION-AI/Open-Assistant/issues/471#issuecomment-1374392299

[19]

账号设置: https://open-assistant.io/account

[20]

OA Stats: https://open-assistant.io/stats

[21]

OA Guidelines: https://projects.laion.ai/Open-Assistant/docs/guides/guidelines

[22]

GitHub OA Issues: https://github.com/LAION-AI/Open-Assistant/issues

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存