当前位置:首页|资讯|ChatGPT|GitHub|编程

6个中文开源语言模型的对话体验

作者:璃花昼发布时间:2023-03-08

        体验了一些中文开源的语言模型,功能上可以算做类ChatGPT的模型吧(虽然模型结构完全不一样),效果上肯定不能和ChatGPT比,但基本的对话功能已经有了雏形,有一定的理解能力和回答能力。并且因为是开源模型,可以在这个基础上收集语料继续训练,有可拓展的空间。

        这些模型不一定是完全用来对话的,还有生成、判别之类的其他功能,这里只是进行了本地部署,并初步测试了它们的对话功能。

ChatRWKV

代码地址:https://github.com/BlinkDL/ChatRWKV

模型地址:https://huggingface.co/BlinkDL

在【Models】里面选择一个模型,然后在【FIles and versions】里面选择一个版本进行下载


ChatRWKV模型下载

模型结构:近些年随着 Transformer 的火爆后,RNN 明显逐渐没落了,然而 RWKV 反其道行之,选择使用了纯 RNN 结构,通过对架构的修改,同时拥有了 RNN 和 Transformer 两者的优点。

参数数量:目前有1.5B、3B、7B、14B四种,参数数量越多效果越好。14B大约要28G显存,我显存只有24G,所以我这里用的模型是RWKV-4-Pile-7B-Instruct-test2-20230209,大约要15G显存。

训练数据:331B个token的语料上训练。

测试方法:下载代码和模型,模型和代码在同一个目录下,如图修改chat.py的参数,执行chat.py即可

ChatRWKV配置修改

对话体验:模型在回答的时候是有理解到问题的,也是有回答到一些点的,但回答的内容更像是在根据我的话生成内容,而不是在和我对话,可能这个模型本身就是基于生成文本来训练的。可以在开头加上+gen、+qa、+qq之类的指令,来控制对话的内容是生成模式还是独立对话等。

ChatRWKV对话体验

EVA2

代码地址:https://github.com/thu-coai/EVA

模型地址:https://huggingface.co/thu-coai/EVA2.0-xlarge

另外还有base和large两个版本,这里用的是最大的xlarge版本


EVA2模型下载

参数数量:xlarge 2.8B

论文地址:https://arxiv.org/abs/2203.09313

训练数据:经过清洗的Wudao对话语料库

测试方法:下载代码,然后下载模型到model目录即可

EVA2测试代码

对话体验:可以进行日常的闲聊,回答比较随心所欲。

EVA2对话体验

gpt2-dialogbot-base-chinese

代码地址:https://github.com/shibing624/dialogbot 

模型地址:https://huggingface.co/shibing624/gpt2-dialogbot-base-chinese

模型结构:基于GPT2

训练数据:来自一些论坛、电视剧的对话语料

测试方法:下载代码,然后下载模型到model目录即可

gpt2-dialogbot-base-chinese测试代码

对话体验:能够进行一些简单的闲聊对话,有点在网上和人瞎扯的感觉。

gpt2-dialogbot-base-chinese对话体验

chat-DialoGPT-small-zh

模型地址:https://huggingface.co/liam168/chat-DialoGPT-small-zh

模型结构:比较老的一个基于GPT2的对话模型,目前已被GODEL替代,但可惜没有找到GODEL的开源中文模型。

论文地址:https://arxiv.org/abs/1911.00536

训练数据:中文聊天数据

测试方法:下载模型到model目录即可,模型地址中有测试的代码

chat-DialoGPT-small-zh测试代码

对话体验:比较抽象。这里他有提示padding的问题,不过加上这两个参数:padding=True和padding_side='left',似乎也没有什么改变。

chat-DialoGPT-small-zh对话体验

PromptCLUE

代码地址:https://github.com/clue-ai/PromptCLUE

模型地址:https://huggingface.co/ClueAI/PromptCLUE-base-v1-5

在线测试:https://www.cluebenchmarks.com/clueai.html

模型结构:基于t5-large

参数数量:base 220M,large 770M

训练数据:万亿级别token

测试方法:我这里直接用modelscope框架。也可以下载原始代码和模型,然后用示例代码进行测试

PromptCLUE测试代码

对话体验:这是一个多任务预训练零样本的语言模型,可以支持情感分析、阅读理解 、提取、生成、翻译等几十种任务,但是在对话方面好像并不擅长,所以这里只是简单测试一下问答的情况。开源的是base版本,比网页上的large版本效果也会差一些。

PromptCLUE对话体验

ChatYuan

代码地址:https://github.com/clue-ai/ChatYuan

模型地址:https://huggingface.co/ClueAI/ChatYuan-large-v1

在线测试:模型的介绍页面的【Colab在线试用】

模型结构:基于PromptCLUE-large进一步训练

训练数据:数亿条功能对话多轮对话数据

测试方法:这里同样使用modelscope框架,也可以用原始代码和模型测试

ChatYuan测试代码

对话体验:这个模型是基于PromptCLUE-large用对话数据训练的,虽然PromptCLUE可能对话效果并不是很好,但ChatYuan在对话领域已经有了很大的提升。简单的短对话都能够有效的进行,并且有对上下文的理解。 不过对话很长时,还是会有些问题。

ChatYuan对话体验‍

        总体上,这些模型的规模可能只有ChatGPT的千分之一,能达到这样有一定理解能力的效果已经不错了,说明整体的方向没有走偏。

        后续可以尝试的,可以选一个模型作为基础模型,然后在一个特定领域的对话语料集上进行微调,如果能在这个领域有不错的效果,那么就能有进一步的应用空间。

        当然这些模型结构和ChatGPT并不一样,如果要训练结构一样的小型ChatGPT,可以参考OpenAssistant,也是一个可尝试方向(就是成本可能有点高)。

        另外,随着这两天的LLaMA模型被公开,应该很快就会有各种各样自研的大型语言模型出来了。



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1