Optimisation efficace des paramètres pour l'adaptation fine des grands modèles de langage en vue de la génération de tests unitaires : une étude empirique
Parameter-Efficient Fine-Tuning of Large Language Models for Unit Test Generation: An Empirical Study
November 4, 2024
Auteurs: André Storhaug, Jingyue Li
cs.AI
Résumé
L'avènement des grands modèles de langage (LLM) tels que GitHub Copilot a considérablement amélioré la productivité des programmeurs, notamment dans la génération de code. Cependant, ces modèles rencontrent souvent des difficultés avec les tâches du monde réel sans un ajustement fin. À mesure que les LLM deviennent plus grands et plus performants, l'ajustement fin pour des tâches spécialisées devient de plus en plus coûteux. Les méthodes d'ajustement fin à paramètres efficaces (PEFT), qui n'ajustent qu'un sous-ensemble des paramètres du modèle, offrent une solution prometteuse en réduisant les coûts computationnels de l'ajustement des LLM tout en maintenant leurs performances. Des études existantes ont exploré l'utilisation de PEFT et de LLM pour diverses tâches liées au code et ont constaté que l'efficacité des techniques PEFT dépend de la tâche. L'application des techniques PEFT dans la génération de tests unitaires reste peu explorée. L'état de l'art se limite à l'utilisation de LLM avec un ajustement fin complet pour générer des tests unitaires. Cet article examine à la fois l'ajustement fin complet et diverses méthodes PEFT, y compris LoRA, (IA)^3 et le réglage de l'invite, sur différentes architectures et tailles de modèles. Nous utilisons des ensembles de données de référence bien établis pour évaluer leur efficacité dans la génération de tests unitaires. Nos résultats montrent que les méthodes PEFT peuvent offrir des performances comparables à un ajustement fin complet pour la génération de tests unitaires, rendant l'ajustement fin spécialisé plus accessible et rentable. Notamment, le réglage de l'invite est le plus efficace en termes de coût et d'utilisation des ressources, tandis que LoRA approche l'efficacité de l'ajustement fin complet dans plusieurs cas.
English
The advent of large language models (LLMs) like GitHub Copilot has
significantly enhanced programmers' productivity, particularly in code
generation. However, these models often struggle with real-world tasks without
fine-tuning. As LLMs grow larger and more performant, fine-tuning for
specialized tasks becomes increasingly expensive. Parameter-efficient
fine-tuning (PEFT) methods, which fine-tune only a subset of model parameters,
offer a promising solution by reducing the computational costs of tuning LLMs
while maintaining their performance. Existing studies have explored using PEFT
and LLMs for various code-related tasks and found that the effectiveness of
PEFT techniques is task-dependent. The application of PEFT techniques in unit
test generation remains underexplored. The state-of-the-art is limited to using
LLMs with full fine-tuning to generate unit tests. This paper investigates both
full fine-tuning and various PEFT methods, including LoRA, (IA)^3, and prompt
tuning, across different model architectures and sizes. We use well-established
benchmark datasets to evaluate their effectiveness in unit test generation. Our
findings show that PEFT methods can deliver performance comparable to full
fine-tuning for unit test generation, making specialized fine-tuning more
accessible and cost-effective. Notably, prompt tuning is the most effective in
terms of cost and resource utilization, while LoRA approaches the effectiveness
of full fine-tuning in several cases.Summary
AI-Generated Summary