人人妻人人澡人人爽人人精品av_精品乱码一区内射人妻无码_老司机午夜福利视频_精品成品国色天香摄像头_99精品福利国产在线导航_野花社区在线观看视频_大地资源在线影视播放_东北高大肥胖丰满熟女_金门瓶马车内剧烈运动

首頁>國內(nèi) > 正文

擊敗ChatGPT?OpenChat霸榜斯坦福AlpacaEval開源榜首,性能高達105.7%-天天新要聞

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)鍵詞:

相關(guān)新聞

Copyright 2015-2020   三好網(wǎng)  版權(quán)所有 聯(lián)系郵箱:435 22 [email protected]  備案號: 京ICP備2022022245號-21