Kaggle LMSYS
1.0.0
pip install - r requirements . txt export KAGGLE_USERNAME= " your_kaggle_username "
export KAGGLE_KEY= " your_api_key "
export HF_TOKEN= " your_hf_token " sudo apt install unzipkaggle datasets download -d lizhecheng/lmsys-datasets
unzip lmsys-datasets.zipkaggle datasets download -d lizhecheng/lmsys-lora
unzip lmsys-lora.zip cd src
cd team gemma / cd team llama
python train_xxx.py單擊全訓練代碼
在LMSYS GITHUB上檢查我們的代碼。
我們採用說明調整,使輸入格式至關重要。實驗各種格式後,我們確定了最佳方法:
首先,我們定義最大長度。然後,我們在此限制內串聯多個迅速響應對。如果先前的提示響應對超過最大長度,則將新的提示響應對放在單獨的行中。例如,考慮提示[P1,P2,P3],具有相應的響應[A1,A2,A3]和[B1,B2,B3]。此方法允許我們生成兩行:(P1,A1,B1)和(P2,A2,B2,P3,A3,B3),假設(P1,A1,B1)不超過最大長度。但是,對於培訓,我們僅對每個ID使用及時響應對的最後一回合。
這種方法提供了兩個關鍵優勢:
<start_of_turn>user
Here are two question-answering dialogues. Compare two models' performance on answering questions, determine which is better.
#Prompt1
xxxxx
#Response
##Model A
xxxxx
##Model B
xxxx
#Prompt2
xxxxx
#Response
............
###options
A. Model A
B. Model B
C. Tie
<end_of_turn>
<start_of_turn>model
A<eos>
4bit Qlora在Gemma-2-9b-it和Meta-llama-3.1-8b-inscruct上,參數:r = 32,模塊= [“ q_proj”,“ k_proj”,“ v_proj”,“ v_proj”,“ o_proj”]。
指導調用而不是分類。
沒有gradient_checkpointing_enable()來減少訓練時間。
使用其他33K數據進行微調和示例10K數據進行TTA。
大量簡歷分開(80% / 20%),以避免在火車和驗證之間進行重複。
GPU:多個80GB A100 GPU +多個A40 GPU。
設定溫度= 1.03用於推理。
提交1:Gemma-2-9b-it + Llama-3.1-8b-it + gemma-2-2b-it&incmission2:gemma-2-9b-it + llama-3.1-8b-it + tta。
由於一些惡意人,曾經是一場非常穩定且有意義的競爭已經變成了卡格格爾歷史上最糟糕的比賽之一。
感謝整個團隊的辛勤工作。讓我們繼續前進!