自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

擊敗ChatGPT?OpenChat霸榜斯坦福AlpacaEval開源榜首,性能高達(dá)105.7%

人工智能
最能打的開源模型來了?OpenLLM在最新評(píng)測(cè)中,一舉擊敗ChatGPT。

一夜之間,全新開源模型「OpenLLM」擊敗ChatGPT的消息,在網(wǎng)上引起軒然大波。

根據(jù)官方的介紹,OpenLLM:

- 在斯坦福AlpacaEval上,以80.9%的勝率位列開源模型第一

- 在Vicuna GPT-4評(píng)測(cè)中,性能則達(dá)到了ChatGPT的105.7%

圖片圖片

最重要的是,如此卓越的性能,只需要6K的GPT-4對(duì)話數(shù)據(jù)進(jìn)行微調(diào)訓(xùn)練。

圖片圖片

項(xiàng)目地址:https://github.com/imoneoi/openchat

不過Chatbot Arena的「榜單主」提醒稱,由于舊的Vicu?a eval基準(zhǔn)存在一些bias,因此提倡大家遷移到新提出的MT-bench上——從而更好地測(cè)評(píng)LLM更多方面的能力。

圖片圖片

OpenLLM:只需6K GPT-4對(duì)話微調(diào)

OpenLLM是一個(gè)在多樣化且高質(zhì)量的多輪對(duì)話數(shù)據(jù)集上進(jìn)行微調(diào)的開源語言模型系列。

具體來講,研究人員從約90K的ShareGPT對(duì)話中,過濾出來約6K的GPT-4對(duì)話。

經(jīng)過6k數(shù)據(jù)微調(diào)后,令人驚訝的是,OpenLLM已經(jīng)被證明可以在有限的數(shù)據(jù)下實(shí)現(xiàn)高性能。

OpenLLM有兩個(gè)通用模型,它們是OpenChat和OpenChat-8192。

圖片圖片

OpenChat:基于LLaMA-13B微調(diào),上下文長(zhǎng)度為2048

- 在Vicuna GPT-4評(píng)估中達(dá)到ChatGPT分?jǐn)?shù)的105.7%

- 在AlpacaEval上取得了驚人的80.9%的勝率

OpenChat-8192:基于LLaMA-13B微調(diào),上下文長(zhǎng)度為8192

- 在Vicuna GPT-4評(píng)估中達(dá)到ChatGPT分?jǐn)?shù)的106.6%

- 在AlpacaEval上取得的79.5%勝率

圖片圖片

此外,OpenLLM還有代碼模型,其性能如下:

OpenCoderPlus:基于StarCoderPlus,原始上下文長(zhǎng)度為8192

- 在Vicuna GPT-4評(píng)估中達(dá)到ChatGPT分?jǐn)?shù)的102.5%

- 在AlpacaEval上獲得78.7%的勝率

模型評(píng)估

研究人員使用Vicuna GPT-4和AlpacaEval基準(zhǔn)評(píng)估了最新模型,結(jié)果如下圖所示:

圖片圖片

Vicuna GPT-4評(píng)估(v.s. gpt-3.5-turbo)

圖片圖片

Vicuna GPT-3.5-Turbo評(píng)估(v.s. gpt-3.5-turbo)

另外,值得注意的是,研究者采用的評(píng)估模式與Vicuna的略有不同,還使用了證據(jù)校準(zhǔn)(EC)+平衡位置校準(zhǔn)(BPC)來減少潛在的偏差。

圖片圖片

安裝和權(quán)重

要使用OpenLLM,需要安裝CUDA和PyTorch。用戶可以克隆這個(gè)資源庫,并通過pip安裝這些依賴:

git clone git@github.com:imoneoi/OChat.git
pip install -r requirements.txt

目前,研究人員已經(jīng)提供了所有模型的完整權(quán)重作為huggingface存儲(chǔ)庫。

用戶可以使用以下命令在本地啟動(dòng)一個(gè)API服務(wù)器,地址為http://localhost:18888。

圖片圖片

其中,服務(wù)器與openai包,以及ChatCompletions協(xié)議兼容(請(qǐng)注意,某些功能可能不完全支持)。

用戶可以通過設(shè)置以下方式指定openai包的服務(wù)器:

openai.api_base = "http://localhost:18888/v1"

當(dāng)前支持的ChatCompletions參數(shù)有:

圖片圖片

建議:使用至少40GB(1x A100)顯存的GPU來運(yùn)行服務(wù)器。

數(shù)據(jù)集

轉(zhuǎn)換后的數(shù)據(jù)集可在openchat_sharegpt4_dataset上獲取。

項(xiàng)目中所使用的數(shù)據(jù)集,是對(duì)ShareGPT清洗和篩選后的版本。

其中,原始的ShareGPT數(shù)據(jù)集包含大約90,000個(gè)對(duì)話,而僅有6,000個(gè)經(jīng)過清理的GPT-4對(duì)話被保留用于微調(diào)。

清洗后的GPT-4對(duì)話與對(duì)話模板和回合結(jié)束時(shí)的token相結(jié)合,然后根據(jù)模型的上下文限制進(jìn)行截?cái)啵ǔ鱿拗频膬?nèi)容將被丟棄)。

要運(yùn)行數(shù)據(jù)處理流程,請(qǐng)執(zhí)行以下命令:

./ochat/data/run_data_pipeline.sh INPUT_FOLDER OUTPUT_FOLDER

輸入文件夾應(yīng)包含一個(gè)ShareGPT文件夾,其中包含每個(gè)ShareGPT對(duì)話頁面的.html文件。

數(shù)據(jù)處理流程包括三個(gè)步驟:

- 清洗:對(duì)HTML進(jìn)行清理并轉(zhuǎn)換為Markdown格式,刪除格式錯(cuò)誤的對(duì)話,刪除包含被屏蔽詞匯的對(duì)話,并進(jìn)行基于哈希的精確去重處理

- 篩選:僅保留token為Model: GPT-4的對(duì)話

- 轉(zhuǎn)換:為了模型的微調(diào),針對(duì)所有的對(duì)話進(jìn)行轉(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解碼的純文本

除此之外,研究人員還提供了一個(gè)用于可視化對(duì)話嵌入的工具。

只需用瀏覽器打開ochat/visualization/ui/visualizer.html,并將MODEL_TYPE.visualizer.json拖放到網(wǎng)頁中。點(diǎn)擊3D圖中的點(diǎn),就可以顯示相應(yīng)的對(duì)話。

其中,嵌入是使用openai_embeddings.py創(chuàng)建的,然后使用dim_reduction.ipynb進(jìn)行UMAP降維和K-Means著色。

圖片圖片

模型修改

研究人員為每個(gè)基礎(chǔ)模型添加了一個(gè)EOT(對(duì)話結(jié)束)token。

對(duì)于LLaMA模型,EOT的嵌入初始化為所有現(xiàn)有token嵌入的平均值。對(duì)于StarCoder模型,EOT的嵌入以0.02標(biāo)準(zhǔn)差進(jìn)行隨機(jī)初始化。

對(duì)于具有8192上下文的LLaMA-based模型,max_position_embeddings被設(shè)置為8192,并且進(jìn)行了RoPE(相對(duì)位置編碼)代碼的外推。

訓(xùn)練

訓(xùn)練模型時(shí)使用的超參數(shù)在所有模型中都是相同的:

圖片圖片

使用8xA100 80GB進(jìn)行訓(xùn)練:

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 \
    --epochs 5 \
    --data_path DATASET_PATH \
    --deepspeed \
    --deepspeed_config ochat/training_deepspeed/deepspeed_config.json

評(píng)估

要運(yùn)行Vicuna GPT-4評(píng)估,請(qǐng)執(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. 運(yùn)行GPT-4評(píng)估

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. 可視化和細(xì)節(jié)

要獲得可視化和繪制評(píng)估結(jié)果,請(qǐng)使用瀏覽器打開ochat/visualization/eval_result_ui/eval_result_visualizer.html,并選擇./eval_results/eval_result_YYYYMMDD文件夾中的所有文件以顯示結(jié)果。

局限性

基礎(chǔ)模型限制

盡管能夠?qū)崿F(xiàn)優(yōu)秀的性能,但OpenLLM仍然受到其基礎(chǔ)模型固有限制的限制。這些限制可能會(huì)影響模型在以下領(lǐng)域的性能:

- 復(fù)雜推理

- 數(shù)學(xué)和算術(shù)任務(wù)

- 編程和編碼挑戰(zhàn)

不存在信息的幻覺

OpenLLM有時(shí)可能會(huì)產(chǎn)生不存在或不準(zhǔn)確的信息,也稱為「幻覺」。用戶應(yīng)該意識(shí)到這種可能性,并驗(yàn)證從模型中獲得的任何關(guān)鍵信息。

參考資料:

https://github.com/imoneoi/openchat

https://tatsu-lab.github.io/alpaca_eval/

責(zé)任編輯:武曉燕 來源: 新智元
相關(guān)推薦

2023-09-21 12:31:54

AI數(shù)據(jù)

2025-01-17 10:26:19

模型開發(fā)ChatGPT

2021-03-04 14:50:11

計(jì)算機(jī)互聯(lián)網(wǎng) 技術(shù)

2023-03-31 13:55:00

模型智能

2023-02-14 09:45:11

模型測(cè)試

2024-05-06 08:00:00

AI模型

2024-01-03 13:37:00

模型數(shù)據(jù)

2023-04-04 13:58:55

人工智能論文

2021-04-02 15:02:42

開源技術(shù) 工具

2023-02-17 09:01:50

ChatGPT對(duì)話機(jī)器人

2025-03-12 10:38:05

2009-05-19 09:06:41

Apple斯坦福iPhone

2013-01-31 09:45:14

斯坦福超級(jí)電腦百萬內(nèi)核

2012-03-21 21:38:27

蘋果

2025-02-28 09:22:00

2019-12-16 14:33:01

AI人工智能斯坦福

2018-08-13 21:19:07

Weld開源數(shù)據(jù)

2023-09-21 10:30:05

AI開源

2024-04-02 08:45:08

ChatGPTAI會(huì)議人工智能
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)