LoRACode: LoRA-Adapter für Code-Embeddings
LoRACode: LoRA Adapters for Code Embeddings
March 7, 2025
Autoren: Saumya Chaturvedi, Aman Chadha, Laurent Bindschaedler
cs.AI
Zusammenfassung
Code-Embeddings sind entscheidend für die semantische Codesuche; aktuelle Ansätze haben jedoch oft Schwierigkeiten, die präzisen syntaktischen und kontextuellen Nuancen, die in Code inhärent sind, zu erfassen. Open-Source-Modelle wie CodeBERT und UniXcoder zeigen Einschränkungen in Bezug auf Skalierbarkeit und Effizienz, während leistungsstarke proprietäre Systeme erhebliche Rechenkosten verursachen. Wir stellen eine parameter-effiziente Feinabstimmungsmethode basierend auf Low-Rank Adaptation (LoRA) vor, um aufgaben-spezifische Adapter für die Code-Retrieval zu konstruieren. Unser Ansatz reduziert die Anzahl der trainierbaren Parameter auf weniger als zwei Prozent des Basismodells und ermöglicht eine schnelle Feinabstimmung auf umfangreichen Code-Korpora (2 Millionen Beispiele in 25 Minuten auf zwei H100-GPUs). Experimente zeigen eine Steigerung von bis zu 9,1 % im Mean Reciprocal Rank (MRR) für Code2Code-Suche und bis zu 86,69 % für Text2Code-Suche über mehrere Programmiersprachen hinweg. Die Unterscheidung in der aufgaben- und sprachspezifischen Anpassung hilft, die Sensitivität der Code-Retrieval für syntaktische und linguistische Variationen zu untersuchen.
English
Code embeddings are essential for semantic code search; however, current
approaches often struggle to capture the precise syntactic and contextual
nuances inherent in code. Open-source models such as CodeBERT and UniXcoder
exhibit limitations in scalability and efficiency, while high-performing
proprietary systems impose substantial computational costs. We introduce a
parameter-efficient fine-tuning method based on Low-Rank Adaptation (LoRA) to
construct task-specific adapters for code retrieval. Our approach reduces the
number of trainable parameters to less than two percent of the base model,
enabling rapid fine-tuning on extensive code corpora (2 million samples in 25
minutes on two H100 GPUs). Experiments demonstrate an increase of up to 9.1% in
Mean Reciprocal Rank (MRR) for Code2Code search, and up to 86.69% for Text2Code
search tasks across multiple programming languages. Distinction in task-wise
and language-wise adaptation helps explore the sensitivity of code retrieval
for syntactical and linguistic variations.Summary
AI-Generated Summary