Repositori ini berisi kode -kode percobaan kertas Sorsa: Nilai Singular dan Vektor Singular Singular Orthonormal Adaptasi dari Model Bahasa Besar .

Kemajuan cepat dalam model bahasa besar (LLM) hadir dengan peningkatan yang signifikan dalam ukuran parameternya, menghadirkan tantangan untuk adaptasi dan penyesuaian. Metode fine-tuning (PEFT) parameter-efisien banyak digunakan untuk mengadaptasi LLMS untuk tugas hilir secara efisien. Dalam makalah ini, kami mengusulkan nilai -nilai tunggal dan adaptasi vektor tunggal ortonormal, atau Sorsa, metode PEFT baru. Setiap adaptor Sorsa terdiri dari dua bagian utama: bobot tunggal utama yang dapat dilatih

Pertama, instal paket sorsa dari PIP:
pip install sorsa Kemudian, buat file .env di direktori root proyek dan tambahkan token akses wajah pemeluk Anda:
hf=Your_Hugging_Face_Access_TokenPertama, pasang paket melalui Anaconda
conda env create -f environment.yml Jalankan skrip dari ./scripts/train_sorsa.sh untuk melatih model.
Setelah pelatihan, jalankan ./scripts/merge_sorsa.sh untuk menggabungkan adaptor ke model dasar:
Jalankan perintah berikut untuk mengevaluasi GSM-8K:
python3 run.py --name llama2_sorsa_r128
--test
--test-dataset gsm-8k
--test-precision bf16Jalankan perintah berikut untuk mengevaluasi matematika:
python3 run.py --name llama2_sorsa_r128
--test
--test-dataset math
--test-precision bf16Jalankan perintah berikut untuk mengevaluasi pada humaneval:
python3 run.py --name llama2_sorsa_r128
--test
--test-dataset humaneval
--test-precision bf16 Jika Anda melatih, menggabungkan, atau menguji model RWKV6, silakan tambahkan bendera --rwkv ke run.py
Anda dapat mengutip pekerjaan dengan menggunakan kode BIBTEX sebagai berikut:
@article { cao2024sorsa ,
title = { SORSA: Singular Values and Orthonormal Regularized Singular Vectors Adaptation of Large Language Models } ,
author = { Cao, Yang } ,
journal = { arXiv preprint arXiv:2409.00055 } ,
year = { 2024 }
}