glider
1.0.0
紙上“滑翔機:全球和本地指導驅動的專家路由器”的官方代碼。我們的代碼庫建立在Phatgoose上。
Glider - 與洛拉(Lora)這樣的專業專家的集合同時進行了“安排/ - out”任務!

性能預訓練的模型的可用性導致了專門針對特定領域的微調專家模型的擴散。這使創建功能強大且基於自適應路由的“模型Moerging”方法的目標是使用專家模塊來創建具有改進性能或概括的聚合系統。但是,現有的Moering方法通常優先考慮概括,以看不見的任務,而犧牲了固定任務的性能,這限制了其在現實世界部署方案中的實際適用性。我們觀察到,當前的令牌級路由機制忽略了輸入任務的全局語義上下文。由於路由決策未能納入任務的語義屬性,因此這種代幣的獨立性阻礙了有效的專家選擇。為了解決這個問題,我們提出了集成了多尺度路由機制,涵蓋語義全局路由器和博學的本地路由器的全球和本地指導驅動的專家路由器(Glider)。全球路由器利用LLM的高級推理功能來獲得與語義相關的上下文,以增強專家的選擇。鑑於輸入查詢和LLM,路由器生成語義任務說明,以指導所有層中最相關的專家的檢索。該全球指南的補充是一條本地路由器,該路由器促進了每個模塊中代幣級別的路由決策,從而實現了更精細的控制並增強了看不見的任務的性能。我們使用基於T5的T5模型進行T0和FLAN任務的實驗表明,Glider在保持對持有任務的強烈概括的同時,實現了大幅提高的持有性能。我們還進行消融實驗,以深入研究滑翔機的組成部分。我們的實驗強調了我們多尺度路由的重要性,即利用LLM驅動的語義推理來進行潮濕方法。
conda create -n glider python=3.9
conda activate glider
conda install git-lfs
pip install -r requirements.txt
pip uninstall peft -y cd src && mkdir saved_runs && cd saved_runs
git lfs install
# Glider LLM-Generated task embeddings
git clone https://huggingface.co/MoE-UNC/gpt-generated-instruction-nomic-embeddings
# P3 LoRA checkpoints (derived from Phatgoose)
git clone https://huggingface.co/MoE-UNC/p3-lora-checkpoints
# FLAN LoRA checkpoints (derived from Phatgoose)
git clone https://huggingface.co/MoE-UNC/flan-lora-checkpoints
# Baseline- Arrow checkpoints
git clone https://huggingface.co/MoE-UNC/p3-lora-checkpoints-arrow
# Baseline - Merged Experts checkpoints (derived from Phatgoose)
git clone https://huggingface.co/MoE-UNC/phatgoose-checkpoints請在src/scripts/paper-eval.sh中查看命令和評論以獲取結果。
@misc { li2024glidergloballocalinstructiondriven ,
title = { Glider: Global and Local Instruction-Driven Expert Router } ,
author = { Pingzhi Li and Prateek Yadav and Jaehong Yoon and Jie Peng and Yi-Lin Sung and Mohit Bansal and Tianlong Chen } ,
year = { 2024 } ,
eprint = { 2410.07172 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.LG } ,
url = { https://arxiv.org/abs/2410.07172 } ,
}