2023-07-03 16:05:21來源:新智元
一夜之間,全新開源模型「OpenLLM」擊敗ChatGPT的消息,在網(wǎng)上引起軒然大波。
根據(jù)官方的介紹,OpenLLM:
(資料圖片僅供參考)
- 在斯坦福AlpacaEval上,以80.9%的勝率位列開源模型第一
- 在Vicuna GPT-4評測中,性能則達到了ChatGPT的105.7%
圖片
最重要的是,如此卓越的性能,只需要6K的GPT-4對話數(shù)據(jù)進行微調(diào)訓(xùn)練。
圖片
項目地址:https://github.com/imoneoi/openchat
不過Chatbot Arena的「榜單主」提醒稱,由于舊的Vicu?a eval基準存在一些bias,因此提倡大家遷移到新提出的MT-bench上——從而更好地測評LLM更多方面的能力。
圖片
OpenLLM:只需6K GPT-4對話微調(diào)
OpenLLM是一個在多樣化且高質(zhì)量的多輪對話數(shù)據(jù)集上進行微調(diào)的開源語言模型系列。
具體來講,研究人員從約90K的ShareGPT對話中,過濾出來約6K的GPT-4對話。
經(jīng)過6k數(shù)據(jù)微調(diào)后,令人驚訝的是,OpenLLM已經(jīng)被證明可以在有限的數(shù)據(jù)下實現(xiàn)高性能。
OpenLLM有兩個通用模型,它們是OpenChat和OpenChat-8192。
圖片
OpenChat:基于LLaMA-13B微調(diào),上下文長度為2048
- 在Vicuna GPT-4評估中達到ChatGPT分數(shù)的105.7%
- 在AlpacaEval上取得了驚人的80.9%的勝率
OpenChat-8192:基于LLaMA-13B微調(diào),上下文長度為8192
- 在Vicuna GPT-4評估中達到ChatGPT分數(shù)的106.6%
- 在AlpacaEval上取得的79.5%勝率
圖片
此外,OpenLLM還有代碼模型,其性能如下:
OpenCoderPlus:基于StarCoderPlus,原始上下文長度為8192
- 在Vicuna GPT-4評估中達到ChatGPT分數(shù)的102.5%
- 在AlpacaEval上獲得78.7%的勝率
模型評估研究人員使用Vicuna GPT-4和AlpacaEval基準評估了最新模型,結(jié)果如下圖所示:
圖片
Vicuna GPT-4評估(v.s. gpt-3.5-turbo)
圖片
Vicuna GPT-3.5-Turbo評估(v.s. gpt-3.5-turbo)
另外,值得注意的是,研究者采用的評估模式與Vicuna的略有不同,還使用了證據(jù)校準(EC)+平衡位置校準(BPC)來減少潛在的偏差。
圖片
安裝和權(quán)重要使用OpenLLM,需要安裝CUDA和PyTorch。用戶可以克隆這個資源庫,并通過pip安裝這些依賴:
git clone [email protected]:imoneoi/OChat.gitpip install -r requirements.txt
目前,研究人員已經(jīng)提供了所有模型的完整權(quán)重作為huggingface存儲庫。
用戶可以使用以下命令在本地啟動一個API服務(wù)器,地址為http://localhost:18888。
圖片
其中,服務(wù)器與openai包,以及ChatCompletions協(xié)議兼容(請注意,某些功能可能不完全支持)。
用戶可以通過設(shè)置以下方式指定openai包的服務(wù)器:
openai.api_base = "http://localhost:18888/v1"
當前支持的ChatCompletions參數(shù)有:
圖片
建議:使用至少40GB(1x A100)顯存的GPU來運行服務(wù)器。
數(shù)據(jù)集轉(zhuǎn)換后的數(shù)據(jù)集可在openchat_sharegpt4_dataset上獲取。
項目中所使用的數(shù)據(jù)集,是對ShareGPT清洗和篩選后的版本。
其中,原始的ShareGPT數(shù)據(jù)集包含大約90,000個對話,而僅有6,000個經(jīng)過清理的GPT-4對話被保留用于微調(diào)。
清洗后的GPT-4對話與對話模板和回合結(jié)束時的token相結(jié)合,然后根據(jù)模型的上下文限制進行截斷(超出限制的內(nèi)容將被丟棄)。
要運行數(shù)據(jù)處理流程,請執(zhí)行以下命令:
./ochat/data/run_data_pipeline.sh INPUT_FOLDER OUTPUT_FOLDER
輸入文件夾應(yīng)包含一個ShareGPT文件夾,其中包含每個ShareGPT對話頁面的.html文件。
數(shù)據(jù)處理流程包括三個步驟:
- 清洗:對HTML進行清理并轉(zhuǎn)換為Markdown格式,刪除格式錯誤的對話,刪除包含被屏蔽詞匯的對話,并進行基于哈希的精確去重處理
- 篩選:僅保留token為Model: GPT-4的對話
- 轉(zhuǎn)換:為了模型的微調(diào),針對所有的對話進行轉(zhuǎn)換和分詞處理
最終轉(zhuǎn)換后的數(shù)據(jù)集遵循以下格式:
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拖放到網(wǎng)頁中。點擊3D圖中的點,就可以顯示相應(yīng)的對話。
其中,嵌入是使用openai_embeddings.py創(chuàng)建的,然后使用dim_reduction.ipynb進行UMAP降維和K-Means著色。
圖片
模型修改研究人員為每個基礎(chǔ)模型添加了一個EOT(對話結(jié)束)token。
對于LLaMA模型,EOT的嵌入初始化為所有現(xiàn)有token嵌入的平均值。對于StarCoder模型,EOT的嵌入以0.02標準差進行隨機初始化。
對于具有8192上下文的LLaMA-based模型,max_position_embeddings被設(shè)置為8192,并且進行了RoPE(相對位置編碼)代碼的外推。
訓(xùn)練訓(xùn)練模型時使用的超參數(shù)在所有模型中都是相同的:
圖片
使用8xA100 80GB進行訓(xùn)練:
NUM_GPUS=8deepspeed --num_gpus=$NUM_GPUS --module ochat.training_deepspeed.train \ --model_type MODEL_TYPE \ --model_path BASE_MODEL_PATH \ --save_path TARGET_FOLDER \ --length_grouping \ --epochs 5 \ --data_path DATASET_PATH \ --deepspeed \ --deepspeed_config ochat/training_deepspeed/deepspeed_config.json
評估要運行Vicuna GPT-4評估,請執(zhí)行以下步驟:
1. 生成模型答案
python -m ochat.evaluation.get_model_answer --model_type MODEL_TYPE --models_path PATH_CONTAINING_ALL_MODELS_SAME_TYPE --data_path ./ochat/evaluation/vicuna --output_path ./eval_results
2. 生成基線(GPT-3.5)答案
OPENAI_API_KEY=sk-XXX python -m ochat.evaluation.get_openai_answer --data_path ./ochat/evaluation/vicuna --output_path ./eval_baselines --model_types gpt-3.5-turbo
3. 運行GPT-4評估
OPENAI_API_KEY=sk-XXX python -m ochat.evaluation.openai_eval --data_path ./ochat/evaluation/vicuna --baseline_path ./eval_baselines/vicuna_gpt-3.5-turbo.jsonl --input_path ./eval_results
4. 可視化和細節(jié)
要獲得可視化和繪制評估結(jié)果,請使用瀏覽器打開ochat/visualization/eval_result_ui/eval_result_visualizer.html,并選擇./eval_results/eval_result_YYYYMMDD文件夾中的所有文件以顯示結(jié)果。
局限性基礎(chǔ)模型限制
盡管能夠?qū)崿F(xiàn)優(yōu)秀的性能,但OpenLLM仍然受到其基礎(chǔ)模型固有限制的限制。這些限制可能會影響模型在以下領(lǐng)域的性能:
- 復(fù)雜推理
- 數(shù)學(xué)和算術(shù)任務(wù)
- 編程和編碼挑戰(zhàn)
不存在信息的幻覺
OpenLLM有時可能會產(chǎn)生不存在或不準確的信息,也稱為「幻覺」。用戶應(yīng)該意識到這種可能性,并驗證從模型中獲得的任何關(guān)鍵信息。
參考資料:
https://github.com/imoneoi/openchat
https://tatsu-lab.github.io/alpaca_eval/
關(guān)鍵詞:
一夜之間,全新開源模型「OpenLLM」擊敗ChatGPT的消息,在網(wǎng)上引起軒然
大家好,我是CUGGZ。之前分享過一篇《使用TypeScript編寫React的最佳實
多模態(tài)大語言模型(MultimodalLargeLanguageModel,MLLM)依賴于LLM豐
即使在那些經(jīng)歷過未經(jīng)授權(quán)訪問或數(shù)據(jù)泄露的企業(yè)中,對企業(yè)對免受網(wǎng)絡(luò)攻
前幾天,一篇加州理工和MIT研究者用ChatGPT證明數(shù)學(xué)定理的論文爆火,在
韓國現(xiàn)代集團會長玄貞恩方面取消訪朝悼念已故前會長鄭夢憲去世20周年的
EBC外匯商品股指快訊周五(6月30日)美股大幅收高,季度走勢強勁,數(shù)據(jù)
一、淘寶直播體系化調(diào)控能力演進目前淘寶直播推薦算法工作階段性重心轉(zhuǎn)
本文整理自瀾舟科技創(chuàng)始人兼CEO周明在WOT2023大會上的主題分享,更多精
星漢燦爛中的曹常侍是文帝的貼身太監(jiān),他也是皇宮中的太監(jiān)總管,屬于是
屬兔的人,7·4日明天,金銀滿屋,情商頗高,為人低調(diào),聰明伶俐,一生
為構(gòu)建更加緊密的“雙聯(lián)系”機制,進一步拓寬區(qū)人大常委會聯(lián)系代表的渠
伴隨港股汽車股持續(xù)反彈,汽車零件股應(yīng)聲走強。截至發(fā)稿,新晨動力()、
中國利郎7月3日公告,公司第二季度LILANZ產(chǎn)品之零售金額(按零售價值計
本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。