Skip to main content
QUICK REVIEW

[논문 리뷰] Environment-Aware Code Generation: How far are We?

Tongtong Wu, Rongyi Chen|arXiv (Cornell University)|2026. 01. 18.
Software Engineering Research인용 수 0
한 줄 요약

본 논문은 Environment-Aware Code Generation (EACG)을 정의하고 VersiBCB를 도입합니다. 실행 가능하고 다중 라이브러리 및 버전 인식 태스크를 갖춘 벤치마크이며, 추론 시점 맞춤화 전략 세 가지(데이터, 매개변수, 캐시)를 평가하고 실행 가능성, 호환성, 구성 가능성에 대한 영향을 분석합니다.

ABSTRACT

Recent progress in large language models (LLMs) has improved code generation, but most evaluations still test isolated, small-scale code (e.g., a single function) under default or unspecified software environments. As a result, it is unclear whether LLMs can reliably generate executable code tailored to a user's specific environment. We present the first systematic study of Environment-Aware Code Generation (EACG), where generated code must be functionally correct and directly executable under arbitrary software configurations. To enable realistic evaluation, we introduce VersiBCB, a benchmark that is multi-package, execution-verified, and deprecation-aware, capturing complex and evolving environments that prior datasets often overlook. Using VersiBCB, we investigate three complementary adaptation axes: data, parameters, and cache, and develop representative strategies for each. Our results show that current LLMs struggle with environment-specific code generation, while our adaptations improve environment compatibility and executability. These findings highlight key challenges and opportunities for deploying LLMs in practical software engineering workflows.

연구 동기 및 목표

  • Environment-Aware Code Generation (EACG)를 주어진 환경에서 기능적으로 정확하고 실행 가능한 코드 생성으로 형식화한다.
  • 실세계 파이썬 환경을 반영하는 대규모, 실행 가능성 검증된 다중 라이브러리 벤치마크인 VersiBCB를 만든다.
  • 환경 적응성을 위한 세 가지 추론 시점 적응 전략(데이터 기반 RAG, 매개변수 기반 MoE, 캐시 기반 메모리)을 평가한다.
  • 실행 가능성, API 호환성, 그리고 보지 않은 라이브러리/버전 구성에 대한 일반화를 평가한다.
  • 실용적인 소프트웨어 엔지니어링 워크플로우에서 LLM을 배포하기 위한 인사이트와 가이드를 제공한다.

제안 방법

  • EACG 및 환경 L, V 및 기능 요구 d를 포함한 EACM의 태스크 수식을 정의한다.
  • BigCodeBench에 환경 인식 주석을 보강하고 제어된 환경에서 코드를 실행해 실행 가능성을 검증함으로써 VersiBCB를 구성한다.
  • Pass@k를 포함한 엄격한 API 사용 규범과 관대 한 API 사용 규범을 포함하여 EACG 및 EACM에서 최첨단 LLM을 평가한다.
  • 추론 시점에서의 세 가지 적응 축: 데이터 기반의 검색 강화 생성(RAG), 버전 인식 라우팅이 있는 매개변수 기반의 전문가 혼합(MoE), 환경별 패턴의 메모리 기반 캐시를 제안한다.
Figure 1 . Task definition covering both environment-aware code generation and code migration.
Figure 1 . Task definition covering both environment-aware code generation and code migration.

실험 결과

연구 질문

  • RQ1LLM이 주어진 환경에서 코드를 올바르게 실행할 수 있도록 생성할 수 있는가(실행 가능성)?
  • RQ2생성된 API가 주어진 환경의 API 세트와 호환되는가(호환성)?
  • RQ3모델이 보지 못한 라이브러리/버전 조합에 일반화할 수 있는가(구성 가능성)?
  • RQ4환경 적응 전략이 엄격한 API 준수와 실용적 실행 가능성 측면에서 어떻게 비교되는가?

주요 결과

모델코드 생성을 Pass@1코드 생성을 Pass@3코드 생성을 Pass@5코드 마이그레이션 Pass@1코드 마이그레이션 Pass@3코드 마이그레이션 Pass@5
DS-7B0.000.000.002.996.598.38
CodeGemma-7B0.600.902.6913.4734.1349.70
CodeLlama-13B0.300.901.7918.2636.2349.10
StarCoder2-15B0.000.000.305.9915.8721.26
LLaMA3-70B18.5124.7827.7657.1960.7861.98
GPT-4.1-mini27.7632.2433.4353.2959.2861.68
DeepSeek-v323.8828.0630.7566.1770.0670.66
  • 기존 LLM은 환경 인지 코드 생성에 어려움을 겪고; 더 큰 모델이 더 잘 수행하지만 여전히 비환경 비특이 벤치마크에 비해 뒤처진다.
  • MoE 기반 적응은 엄격한 API 일관성과 생성 작업의 부분적 정확성을 개선한다.
  • 메모리 기반 적응은 환경 조건 패턴 재사용으로 코드 마이그레이션에서 강한 이점을 제공하지만, 더 오래된 API를 허용할 수 있다.
  • RAG는 보수적인 적응으로 중간 수준의 이점과 해석 가능한 환경 신호를 제공한다.
  • 모든 전략은 기계학습 도메인 및 보지 못한 라이브러리/버전 조합에서 성능 저하를 보이며, 버전 민감한 환경의 지속적인 도전 과제를 드러낸다.
  • VersiBCB는 실행성, 호환성, 교차 라이브러리 진화에 걸쳐 세밀한 평가를 가능하게 하며, 표준 벤치마크로는 포착되지 않는 간극을 드러낸다.
Figure 2 . Overview of dataset construction via bidirectional environment traversal.
Figure 2 . Overview of dataset construction via bidirectional environment traversal.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.