BELLE 是基於 Stanford Alpaca,對中文做了最佳化,模型調優僅使用 ChatGPT 生產的資料(不包含任何其他資料)。
距離 ChatGPT 的最初發布,過去差不多四個月的時間了。就在上週 GPT-4 發佈時,ChatGPT 在第一時間上線了新版本。不過眾所周知的一個秘密是,不管是 ChatGPT 還是 GPT-4 都不大可能開源。加上龐大的算力投入以及海量的訓練資料等,都為研究界複製其實現過程設下重重關卡。
面對 ChatGPT 等大模型的來勢洶洶,開源平替是一個不錯的選擇。本月初,Meta「開源」了一個新的大模型系列 ——LLaMA(Large Language Model Meta AI),參數量從 70 億到 650 億不等。 130 億參數的 LLaMA 模型「在大多數基準上」可以勝過參數量達 1750 億的 GPT-3,而且可以在單塊 V100 GPU 上運行。
時隔幾天,史丹佛基於LLaMA 7B 微調出一個具有70 億參數的新模型Alpaca,他們使用了Self-Instruct 論文中介紹的技術產生了52K 條指令數據,同時進行了一些修改,在初步的人類評估中,Alpaca 7B 模型在Self-Instruct 指令評估上的表現類似於text-davinci-003(GPT-3.5)模型。
但遺憾的是,Alpaca 的種子任務都是英語,收集的資料也都是英文,因此訓練出來的模型未對中文優化。為了提升對話模型在中文的效果,有沒有更好的方法呢?別急,接下來介紹的這個項目就能很好的解決這個問題。
開源中文對話大模型70 億參數的 BELLE(Bloom-Enhanced Large Language model Engine)來了。它基於斯坦福的 Alpaca 完成,但進行了中文優化,並對生成程式碼進行了一些修改,不僅如此,模型調優僅使用由 ChatGPT 生產的數據(不包含任何其他數據)。
在數據方面,該專案開源了基於Alpaca 的數據收集程式碼,基於這段程式碼產生了約100 萬條中文數據,結合Alpaca 的5 萬條英文數據,在BLOOMZ-7B 模型訓練得到的checkpoint 上傳在Hugging Face。
Hugging Face 網址:https://huggingface.co/BelleGroup
計畫作者表示:此計畫旨在促進中文對話大模式開源社群的發展。
專案網址:https://github.com/LianjiaTech/BELLE
此專案主要包含以下四部分內容:
資料發佈
1. zh_seed_tasks.jsonl:包含175 個種子任務,樣例如下
{"id ": "seed_task_20", "name": "horror_movie_opening", "instruction": "你需要為一部恐怖電影寫一個創意的開場場景。", "instances": [{"input": "","output ":" 太陽已經落山,留下了一個黑暗的小鎮。微風吹拂空蕩的街道,讓每一個冒險走出門外的人感到一陣寒意。唯一的聲音是被風吹動的樹葉發出的輕微沙沙聲。突然,一聲令人毛骨悚然的尖叫聲劃破了寂靜,隨後是玻璃破碎的聲音。一所房子亮起了燈光,可以看到一個人影朝鎮中心奔跑。當> 那個人影越來越靠近時,清楚地看到那是一個年輕女子,她渾身血跡斑斑。"}],"is_classification": false}
2. prompt_cn.txt: 產生所使用的提示語
3. 0.5M 產生的資料
資料產生
#沿用Alpaca 的方式:
pip install -r requirements.txt
export OPENAI_API_KEY=YOUR_API_KEY
python generate_instruction.py generate_instruction_following_data
預設使用Completion API,模型text-davinci-003。如果想使用Chat API 並使用gpt-3.5-turbo 模型,可透過參數控制:
python generate_instruction.py generate_instruction_following_data
--api=chat --model_name=gpt-3.5-turbo
輸出檔在Belle.train.json,可以人工篩選後再使用。
模型調優
此專案基於BLOOMZ-7B1-mt 模型與Belle.train.json 訓練模型,具體參數如下:
#此外,該專案還採取了不同大小規模(20 萬、60 萬、100 萬和200 萬樣本)的指令學習的資料集訓練模型,得到不同的模型版本如下所示:
模型使用範例
限制和使用限制
以上是彌補史丹佛70億參數「羊駝」短板,精通中文的大模型來了,已開源的詳細內容。更多資訊請關注PHP中文網其他相關文章!