LoRACode: Adaptadores LoRA para Embeddings de Código
LoRACode: LoRA Adapters for Code Embeddings
March 7, 2025
Autores: Saumya Chaturvedi, Aman Chadha, Laurent Bindschaedler
cs.AI
Resumo
Os embeddings de código são essenciais para a busca semântica de código; no entanto, as abordagens atuais frequentemente enfrentam dificuldades para capturar as nuances sintáticas e contextuais precisas inerentes ao código. Modelos de código aberto, como CodeBERT e UniXcoder, apresentam limitações em escalabilidade e eficiência, enquanto sistemas proprietários de alto desempenho impõem custos computacionais substanciais. Introduzimos um método de ajuste fino eficiente em parâmetros baseado em Low-Rank Adaptation (LoRA) para construir adaptadores específicos para tarefas de recuperação de código. Nossa abordagem reduz o número de parâmetros treináveis para menos de dois por cento do modelo base, permitindo um ajuste rápido em extensos corpora de código (2 milhões de amostras em 25 minutos em duas GPUs H100). Experimentos demonstram um aumento de até 9,1% no Mean Reciprocal Rank (MRR) para tarefas de busca Code2Code e até 86,69% para tarefas de busca Text2Code em várias linguagens de programação. A distinção na adaptação por tarefa e por linguagem ajuda a explorar a sensibilidade da recuperação de código para variações sintáticas e linguísticas.
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