Your Coding Intent is Secretly in the Context and You Should Deliberately Infer It Before Completion

2508.09537v1 cs.SE, cs.AI 2025-08-15
Авторы:

Yanzhou Li, Tianlin Li, Yiran Zhang, Shangqing Liu, Aishan Liu, Yang Liu

Резюме на русском

------------------------------------- ## Контекст ------------------------------------- Функциональность репозиториев с кодом постоянно растет, что делает важной задачу реализации функций с помощью л LLM (Large Language Models). Несмотря на то, что при наличии докстрингов (docstrings) модели показывают высокую точность, в реальных репозиториях такой информации часто недостаточно. Это приводит к снижению качества результатов. Наша модель адресует эту проблему, разбив задачу на три этапа: интент-инференс, интерактивная рефинементация, и генерация кода. Специфичен фреймворк при решении задачи, который позволяет лучше использовать контекстный код перед функцией. ------------------------------------- ## Метод ------------------------------------- Мы предлагаем трехэтапный подход. 1) **Интент-инференс**: Модель анализирует код перед функцией, ищет скрытые сигналы о приоритете. 2) **Интерактивная рефинементация**: Модель предлагает несколько вариантов интента, где пользователь может выбрать или отредактировать. 3) **Генерация кода**: По уточненному интенту LLM генерирует функцию. Мы используем 40,000 примеров с аннотированными рассуждениями и докстрингами для обучения. ------------------------------------- ## Результаты ------------------------------------- Мы проводили эксперименты на двух датасетах: DevEval и ComplexCodeEval. Наша модель показала до 20% относительного увеличения точности в сравнении с базовыми моделями, особенно при использовании интерактивного рефинемента. Также, люди, работавшие с нашим подходом, отзывались о повышении качества результатов в реальных сценариях. ------------------------------------- ## Значимость ------------------------------------- Наш подход может применяться в различных областях, где требуется точность реализации функций на основе контекста. Он улучшает качество генерации кода, особенно в ситуациях, когда документации недоступна. Кроме того, он может способствовать улучшению интеллектуальных систем разработки, например, в системах автоматизированной генерации кода. ------------------------------------- ## Выводы ------------------------------------- Мы представили многоэтапный подход, который позволяет моделям лучше использовать контекстный код. Мы получили заметные улучшения в точности генерации кода с использованием интерактивной рефинементации. Будущие исследования будут фокусироваться на расширении этого подхода для более сложных сценариев и улучшении его точности и работы в реальных условиях.

Abstract

Large Language Models (LLMs) are increasingly used for function completion in repository-scale codebases. Prior studies demonstrate that when explicit instructions--such as docstrings--are provided, these models can generate highly accurate implementations. However, in real-world repositories, such annotations are frequently absent, and performance drops substantially without them. To address this gap, we frame the task as a three-stage process. The first stage focuses on intent inference, where the model analyzes the code preceding the target function to uncover cues about the desired functionality. Such preceding context often encodes subtle but critical information, and we design a reasoning-based prompting framework to guide the LLM through step-by-step extraction and synthesis of these signals before any code is generated. The second stage introduces an optional interactive refinement mechanism to handle cases where preceding context alone is insufficient for intent recovery. In this stage, the model proposes a small set of candidate intentions, enabling the developer to select or edit them so that the inferred intent closely matches the actual requirement. Finally, in the third stage, the LLM generates the target function conditioned on the finalized intent. To support this pipeline, we curate a dataset of 40,000 examples annotated with intermediate reasoning traces and corresponding docstrings. Extensive experiments on DevEval and ComplexCodeEval show that our approach consistently boosts multiple LLMs, achieving over 20\% relative gains in both reference-based and execution-based metrics, with the interactive refinement stage delivering additional improvements beyond these gains.

Ссылки и действия