Bitune
1.0.0

Bitune: réglage de l'instruction bidirectionnelle
[ Paper ] [ Website ]
Ce code source contient l'implémentation de Bitune, et il suffit de reproduire les résultats du papier. Veuillez noter qu'il a été utilisé pour explorer différentes idées, et de nombreux composants ont des noms différents ou se réfèrent à des concepts non mentionnés dans l'article.
Nous prévoyons de publier un dépôt propre pour Bitune dans un avenir proche.
Le répertoire lm-evaluation-harness contient le référentiel de l'évaluation ELEUTHERAI / LM, adapté à notre méthode. Vous pouvez l'installer avec la commande suivante:
pip install -e lm-evaluation-harnesscommon_0.sh .wandb pour la journalisation. Mettez à jour la ligne 57 de eval.py avec votre nom d'utilisateur wandb . instruct.sh .downstream.sh Assurez-vous de définir le nombre correct d'étapes de mise à jour (en fonction des valeurs fournies en annexe) et de l'intervalle des lignes appropriées pour le nom de l'ensemble de données, les évaluations (tout en bas) et le nom de la méthode.ablations.sh et exécutez le script. models :pass_scale_k , pass_scale_v ).enforce_bidir de la fonction forward() .forward() responsable de l'appel de l' emballage Bitune ._pass_fn() dans le fichier passes.py ):pass_scale_k , pass_scale_v ).peft définit les adaptateurs inactifs comme non traditionables.PassScale définie dans models/think_gemma.py ):forward() qui applique l'opération de mélange en fonction de la variante spécifiée dans la config ( config.pass_type ). Notre méthode finale est définie par la variante 607 (celle utilisée pour les expériences) et sa version 801 simplifiée. Les versions suivantes des bibliothèques ont été utilisées:
transformers==4.38.2peft==0.11.1datasets==2.18.0evaluate==0.4.0 @misc { kopiczko2024bitune ,
title = { Bitune: Bidirectional Instruction-Tuning } ,
author = { Dawid J. Kopiczko and Tijmen Blankevoort and Yuki M. Asano } ,
year = { 2024 } ,
eprint = { 2405.14862 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.CL }
}