滚动:击败ChatGPT?OpenChat霸榜斯坦福AlpacaEval开源榜首,性能高达105.7%
【新智元导读】最能打的开源模型来了?OpenLLM在最新评测中,一举击败ChatGPT。
一夜之间,全新开源模型「OpenLLM」击败ChatGPT的消息,在网上引起轩然大波。
根据官方的介绍,OpenLLM:
(相关资料图)
- 在斯坦福AlpacaEval上,以80.9%的胜率位列开源模型第一
- 在Vicuna GPT-4评测中,性能则达到了ChatGPT的105.7%
最重要的是,如此卓越的性能,只需要6K的GPT-4对话数据进行微调训练。
项目地址:https://github.com/imoneoi/openchat
不过Chatbot Arena的「榜单主」提醒称,由于旧的Vicua eval基准存在一些bias,因此提倡大家迁移到新提出的MT-bench上——从而更好地测评LLM更多方面的能力。
OpenLLM:只需6K GPT-4对话微调
OpenLLM是一个在多样化且高质量的多轮对话数据集上进行微调的开源语言模型系列。
具体来讲,研究人员从约90K的ShareGPT对话中,过滤出来约6K的GPT-4对话。
经过6k数据微调后,令人惊讶的是,OpenLLM已经被证明可以在有限的数据下实现高性能。
OpenLLM有两个通用模型,它们是OpenChat和OpenChat-8192。
OpenChat:基于LLaMA-13B微调,上下文长度为2048
- 在Vicuna GPT-4评估中达到ChatGPT分数的105.7%
- 在AlpacaEval上取得了惊人的80.9%的胜率
OpenChat-8192:基于LLaMA-13B微调,上下文长度为8192
- 在Vicuna GPT-4评估中达到ChatGPT分数的106.6%
- 在AlpacaEval上取得的79.5%胜率
此外,OpenLLM还有代码模型,其性能如下:
OpenCoderPlus:基于StarCoderPlus,原始上下文长度为8192
- 在Vicuna GPT-4评估中达到ChatGPT分数的102.5%
- 在AlpacaEval上获得78.7%的胜率
模型评估
研究人员使用Vicuna GPT-4和AlpacaEval基准评估了最新模型,结果如下图所示:
Vicuna GPT-4评估(v.s. gpt-3.5-turbo)
Vicuna GPT-3.5-Turbo评估(v.s. gpt-3.5-turbo)
另外,值得注意的是,研究者采用的评估模式与Vicuna的略有不同,还使用了证据校准(EC)+平衡位置校准(BPC)来减少潜在的偏差。
安装和权重
要使用OpenLLM,需要安装CUDA和PyTorch。用户可以克隆这个资源库,并通过pip安装这些依赖:
gitclonegit@github.com:imoneoi/OChat.gitpipinstall-rrequirements.txt
目前,研究人员已经提供了所有模型的完整权重作为huggingface存储库。
用户可以使用以下命令在本地启动一个API服务器,地址为https://localhost:18888。
其中,服务器与openai包,以及ChatCompletions协议兼容(请注意,某些功能可能不完全支持)。
用户可以通过设置以下方式指定openai包的服务器:
openai.api_base="https://localhost:18888/v1"
当前支持的ChatCompletions参数有:
建议:使用至少40GB(1x A100)显存的GPU来运行服务器。
数据集
转换后的数据集可在openchat_sharegpt4_dataset上获取。
项目中所使用的数据集,是对ShareGPT清洗和筛选后的版本。
其中,原始的ShareGPT数据集包含大约90,000个对话,而仅有6,000个经过清理的GPT-4对话编程客栈被保留用于微调。
清洗后的编程GPT-4对话与对话模板和回合结束时的token相结合,然后根据模型的上下文限制进行截断(超出限制的内容将被丢弃)。
要运行数据处理流程,请执行以下命令:
./ochat/data/run_data_pipeline.shINPUT_FOLDEROUTPUT_FOLDER
输入文件夹应包含一个ShareGPT文件夹,其中包含每个ShareGPT对话页面的.html文件。
数据处理流程包括三个步骤:
- 清洗:对HTML进行清理并转换为Markdown格式,删除格式错误的对话,删除包含被屏蔽词汇的对话,并进行基于哈希的精确去重处理
- 筛选:仅保留token为Model: GPT-4的对话
- 转换:为了模型的微调,针对所有的对话进行转换和分词处理
最终转换后的数据集遵循以下格式:
MODEL_TYPE.train.json / .eval.json
[[token_id_list,supervise_mask_list],[token_id_list,supervise_mask_list],...]
MODEL_TYPE.train.text.json / .eval.text.json从token_id_list解码的纯文本
除此之外,研究人员还提供了一个用于可视化对话嵌入的工具。
只需用浏览器打开ochat/visualization/ui/visualizer.html,并将MODEL_TYPE.visualizer.json拖放到网页中。点击3D图中的点,就可以显示相应的对话。
其中,嵌入是使用openai_embeddings.py创建的,然后使用dim_reduction.ipynb进行UMAP降维和K-Means着色。
模型修改
研究人员为每个基础模型添加了一个EOT(对话结束)token。
对于LLaMA模型,EOT的嵌入初始化为所有现有token嵌入的平均值。对于StarCoder模php型,EOT的嵌入以0.02标准差进行随机初始化。
对于具有8192上下文的LLaMA-based模型,max_p编程客栈osition_embeddings被设置为8192,并且进行了RoPE(相对位置编码)代码的外推。
训练
训练模型时使用的超参数在所有模型中都是相同的:
使用8xA10080GB进行训练:
NUM_GPUS=8
deepspeed --num_gpus=$NUM_GPUS --module ochat.training_deepspeed.train \
--model_type MODEL_TYPE \
--model_path BASE_MODEL_PATH \
--save_path TARGET_FOLDER \
--length_grouping \
--epochs5\
--data_path DATASET_PATH \
--deepspeed \
--deepspeed_config ochat/training_deepspeed/deepspeed_config.json
评估
要运行Vicuna GPT-4评估,请执行以下步骤:
1. 生成模型答案
python-mochat.evaLuation.get_model_answer--model_typeMODEL_TYPE--models_pathPATH_CONTAINING_ALL_MODELS_SAME_TYPE--data_path./ochat/evaluation/vicuna--output_path./eval_results
2. 生成基线(GPT-3.5)答案
OPENAI_API_KEY=sk-XXXpython-mochat.evaluation.get_openai_answer--data_path./ochat/evaluation/vicuna--output_path./eval_baselines--model_typesgpt-3.5-turbo
3. 运行GPT-4评估
OPENAI_API_KEY=sk-XXXpython-mochat.evaluation.openai_eval--data_path./ochat/evaluation/vicuna--baseline_path./eval_baselines/vicuna_gpt-3.5-turbo.jsonl--input_path./eval_results
4. 可视化和细节
要获得可视化和绘制评估结果,请使用浏览器打开ochat/visualization/eval_result_ui/eval_result_visualizer.html,并选择./eval_results/eval_result_YYYYMMDD文件夹中的所有文件以显示结果。
局限性
基础模型限制
尽管能够实现优秀的性能,但OpenLLM仍然受到其基础模型固有限制的限制。这些限制可能会影响模型在以下领域的性能:
- 复杂推理
- 数学和算术任务
- 编程和编码挑战
不存在信息的幻觉
OpenLLM有时可能会产生不存在或不准确的信息,也称为「幻觉」。用户应该意识到这种可能性,并验证从模型中获得的任何关键信息。
参考资料:
https://github.com/imoneoi/openchat
https://tatsu-lab.github.io/alpaca_eval/
-
滚动:击败ChatGPT?OpenChat霸榜斯坦福AlpacaEval开源榜首,性能高达105.7%
新智元公众号 2023-07-03
-
异地恋怎么送花给女朋友 如何委婉表达对一个人的思念
互联网 2023-07-03
-
日本内阁官房长官称夏季排放福岛核污染水的计划未变_世界滚动
央视新闻客户端 2023-07-03
-
环球热点!红桥区非法同居律师怎么收费
法师兄 2023-07-03
-
世界球精选!嘉实海外基金终于赎回了_嘉实海外基金是不是骗局
互联网 2023-07-03
-
【天天热闻】咋就这么不听劝?又有误食中毒事件发生!
桂林疾控 2023-07-03
-
环球通讯!朱鹮保护区今年人工繁育朱鹮幼鸟55只 同比增长14.6%
西安日报 2023-07-03
-
锡北线航道整治工程通过竣工验收 "黄金水道"船舶通过量增4倍
无锡日报 2023-07-03
-
包头3 8级地震(关于包头3 8级地震的基本详情介绍)
互联网 2023-07-03
-
全球微头条丨牛市早报|央行:坚决防范汇率大起大落风险 美财政部部长将访华
澎湃新闻 2023-07-03
-
滚动:击败ChatGPT?OpenChat霸榜斯坦福AlpacaEval开源榜首,性能高达105.7%
新智元公众号 2023-07-03
-
异地恋怎么送花给女朋友 如何委婉表达对一个人的思念
互联网 2023-07-03
-
日本内阁官房长官称夏季排放福岛核污染水的计划未变_世界滚动
央视新闻客户端 2023-07-03
-
环球热点!红桥区非法同居律师怎么收费
法师兄 2023-07-03
-
世界球精选!嘉实海外基金终于赎回了_嘉实海外基金是不是骗局
互联网 2023-07-03
-
【天天热闻】咋就这么不听劝?又有误食中毒事件发生!
桂林疾控 2023-07-03
-
环球通讯!朱鹮保护区今年人工繁育朱鹮幼鸟55只 同比增长14.6%
西安日报 2023-07-03
-
锡北线航道整治工程通过竣工验收 "黄金水道"船舶通过量增4倍
无锡日报 2023-07-03
-
包头3 8级地震(关于包头3 8级地震的基本详情介绍)
互联网 2023-07-03
-
全球微头条丨牛市早报|央行:坚决防范汇率大起大落风险 美财政部部长将访华
澎湃新闻 2023-07-03
-
中国邮政集团有限公司庆阳市分公司西峰区县域商业体系建设设备配备项目成交公告 世界实时
甘肃经济信息网 2023-07-03
-
彩票销售延续高景气,前5月销售额同比增逾5成,这些公司有望受益
金融界 2023-07-03
-
洁白的反义词是怎么写 洁白的反义词是什么-天天快资讯
互联网 2023-07-03
-
英媒称政府或禁前官员入职中企,专家:再次表明英国现政府对华态度 世界时讯
环球网 2023-07-03
-
特斯拉 Q2 汽车产量 47.97 万辆,Model 3 / Y 占 46.02 万
搜狐汽车 2023-07-03
-
调查| 热点城市毕业季租金稳定,各长租公寓品牌推优惠“抢客源”
搜狐焦点广州资讯 2023-07-03
-
【环球报资讯】山西农民4亩大棚樱桃创收高
小马侃农业 2023-07-03
-
【新视野】澳佳宝跟swisse哪个好_澳佳宝和swisse哪个好
互联网 2023-07-03
-
天天热资讯!美国“转运移民”闹剧:得州又把一车人发至洛杉矶
海口网 2023-07-02
-
贵安站融入国家铁路网-环球新资讯
贵阳网 2023-07-02
-
现车最高降4.5万,特斯拉降库存还是冲销量
北京商报官方账号 2023-07-02
-
从川大出发!成都大运会火炬开启成都市内传递活动
四川在线 2023-07-02
-
世界今日讯!春的春花图是哪段 春的春花图
城市网 2023-07-02
-
大到暴雨局部大暴雨!山东13地有强降雨,局部伴有9级阵风
齐鲁晚报 2023-07-02
-
成都大运会火炬传递成都站举行|快资讯
新华网 2023-07-02
-
重庆秀山强降雨致山体塌方道路中断,消防紧急救援多名被困群众 天天播资讯
百度新闻 2023-07-02
-
全球观察:特长包括哪些 什么是特长
互联网 2023-07-02
-
超大“风车”吊装成功 打卡我国投运最大海上风电机组
央视财经 2023-07-02
-
泽连斯基表明与俄谈判唯一条件:实现和平解决乌克兰冲突_每日速讯
中国物联网 2023-07-02
-
我是大运火炬手丨四川省抗震救灾模范卢廷俊:做火炬手既是光荣也是责任
红星新闻 2023-07-02