Ce référentiel contient le code de reproduction des résultats rapportés dans l'article suivant:
Orhan AE (2023) Reconnaissance, rappel et rétention de souvenirs à quelques coups dans les modèles de grande langue. Arxiv: 2303.17557.
Le référentiel contient trois fichiers Python train.py , test.py , generate.py (tous modifiés à partir de l'exemple de modélisation du langage causal de HuggingFace ici) pour former (ou finetune) un modèle, pour exécuter un test de reconnaissance et exécuter un test de rappel, respectivement.
Certains exemples d'utilisation pour ces fichiers sont donnés ci-dessous.
gpt-j-6B Modèle avec les phrases d'étude dans seen_data_0.json pour 1 époque (1 exposition) sur 4 GPU (avec une taille totale de lots de 4x4 = 16 phrases) en utilisant le cadre accéléré de HuggingFace (voir l'exemple de configuration ici):: accelerate launch - - config_file accelerate_config . yaml - - num_cpu_threads_per_process 4 train . py
- - model_name_or_path "EleutherAI/gpt-j-6B"
- - train_file "data/llm-experiment-data/expt1/seen_data_0.json"
- - per_device_train_batch_size 4
- - learning_rate 0.00001
- - output_dir OUTPUT_DIR
- - save_prefix INFORMATIVE_SAVE_PREFIX
- - block_size 128
- - num_train_epochs 1
- - overwrite_cacheseen_data_0.json et Foils dans unseen_data_0.json : python - u test . py
- - model_name_or_path MODEL_PATH
- - seen_file "data/llm-experiment-data/expt1/seen_data_0.json"
- - unseen_file "data/llm-experiment-data/expt1/unseen_data_0.json"
- - per_device_eval_batch_size 1
- - output_dir OUTPUT_DIR
- - save_prefix INFORMATIVE_SAVE_PREFIX
- - block_size 128
- - overwrite_cacheseen_data_0.json : python - u generate . py
- - model_name_or_path MODEL_PATH
- - seen_file "data/llm-experiment-data/expt1/seen_data_0.json"
- - per_device_eval_batch_size 1
- - output_dir OUTPUT_DIR
- - save_prefix INFORMATIVE_SAVE_PREFIX
- - block_size 128
- - overwrite_cache Le dossier scripts contient des scripts Slurm pour reproduire toutes les expériences rapportées dans l'article, en utilisant ces trois fichiers. Le dossier data contient toutes les données expérimentales utilisées dans les expériences. Le dossier utils contient des fonctions d'utilité qui ont été utilisées pour générer les données expérimentales. Les résultats de toutes les expériences de reconnaissance, de rappel et de rétention rapportés dans le document sont disponibles à partir de ce référentiel de jeu de données HuggingFace.