Büyük Dil Modellerini Kullanarak Kod Örneklerinin Analizi ve Hata Ayıklama
No Thumbnail Available
Date
2024
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Kod hata ayıklama ve analizi zorlu bir görevdir. Özellikle otomatik olmayan hata yerelleştirme görevi kaynak tüketir ve hatanın kök nedenini belirlemek için önemli bir çaba gerektirir. Bu tezde, büyük dil modellerini kullanarak testsiz, otomatik satır seviyesi hata yerelleştirme incelenmiştir. Çalışmada, çift yönlü dikkat tabanlı mekanizma ve kod-anlama için önceden eğitilmiş büyük dil modelleri kullanıldı. Aynı zamanda büyük dil modellerinde girilen kodun satır seviyesi hatalılık puanlarını çıktı olarak vermesi için adaptör ayarlaması yapılmıştır. Ortaya çıkan model FLICoder olarak adlandırıldı. Farklı ayarlarla birden çok FLICoder modeli eğitildi ve mimarisinin çeşitli yönlerinin genel performans üzerindeki etkisi incelendi. FLICoder modeli ayrıca temel LLM tabanlı hata yerelleştirme çözümü ile karşılaştırılmış olup, FLICoder modelinin %25 - %52 iyileştirme gösterdiği tespit edilmiştir.
Code debugging and analysis is a challenging task. Specially the task of manual fault localization (FL) is resource-consuming and requires significant effort to identify the root cause of the fault. In this thesis, test-free, automatic line-level fault localization using large language models is explored. Different bidirectional attention-based code-understanding pre-trained large language models (CLMs) are used and adapter tuning is performed to fine-tune the CLM to output line-level faultiness scores of the input code. The resulting model is called FLICoder. Multiple FLICoder models with different settings are trained and the impact of various aspects of its architecture on its overall performance is investigated. The FLICoder model is also compared with the baseline LLM-based FL solution. The baseline is outperformed by FLICoder by 25% - 52%.
Code debugging and analysis is a challenging task. Specially the task of manual fault localization (FL) is resource-consuming and requires significant effort to identify the root cause of the fault. In this thesis, test-free, automatic line-level fault localization using large language models is explored. Different bidirectional attention-based code-understanding pre-trained large language models (CLMs) are used and adapter tuning is performed to fine-tune the CLM to output line-level faultiness scores of the input code. The resulting model is called FLICoder. Multiple FLICoder models with different settings are trained and the impact of various aspects of its architecture on its overall performance is investigated. The FLICoder model is also compared with the baseline LLM-based FL solution. The baseline is outperformed by FLICoder by 25% - 52%.
Description
Keywords
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control