LoRACode: LoRA-адаптеры для векторных представлений кода
LoRACode: LoRA Adapters for Code Embeddings
March 7, 2025
Авторы: Saumya Chaturvedi, Aman Chadha, Laurent Bindschaedler
cs.AI
Аннотация
Векторные представления кода (code embeddings) играют ключевую роль в семантическом поиске кода; однако современные подходы часто испытывают трудности с точным захватом синтаксических и контекстуальных нюансов, присущих коду. Открытые модели, такие как CodeBERT и UniXcoder, демонстрируют ограничения в масштабируемости и эффективности, в то время как высокопроизводительные проприетарные системы требуют значительных вычислительных затрат. Мы представляем метод параметрически эффективной тонкой настройки, основанный на адаптации с низким рангом (Low-Rank Adaptation, LoRA), для создания специализированных адаптеров для поиска кода. Наш подход сокращает количество обучаемых параметров до менее чем двух процентов от базовой модели, что позволяет быстро выполнять тонкую настройку на обширных корпусах кода (2 миллиона образцов за 25 минут на двух GPU H100). Эксперименты показывают увеличение средней обратной позиции (Mean Reciprocal Rank, MRR) до 9,1% для задач поиска Code2Code и до 86,69% для задач поиска Text2Code в различных языках программирования. Различие в адаптации для конкретных задач и языков помогает исследовать чувствительность поиска кода к синтаксическим и лингвистическим вариациям.
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