CONTRA: LLM 코드 생성의 선택적 명확화를 위한 행동 변경 질문 발견 및 자격 검증
요약
본 논문은 코딩 에이전트가 사용자의 의도와 다른 동작을 할 수 있는 문제를 해결하기 위해 CONTRA라는 새로운 방법을 제안합니다. CONTRA는 광범위한 질문 발견과 의미론적/실행 기반의 자격 검증을 결합하여, 개발 흐름을 방해하지 않으면서 핵심적인 명확화 질문만을 식별하는 것이 특징입니다.
핵심 포인트
- CONTRA는 학습이 필요 없는(training-free) 방법으로 코딩 에이전트의 불일치 문제를 해결합니다.
- 후보 질문 생성 후, 실행 기반 테스트를 통해 필수적이고 자격 있는 질문만 필터링합니다.
- ClarifyCodeBench 실험에서 네 가지 코딩 에이전트 모두에서 높은 F1 점수를 달성했습니다.
- CONTRA는 Claude Code 플러그인으로 구현되어 실제 개발 환경에 통합될 수 있습니다.
코딩 에이전트는 사용자가 의도하지 않은 동작을 구현하는, 겉보기에는 정확한 코드를 생성할 수 있습니다. 이러한 불일치는 에이전트가 명세가 부족한 요구사항을 자체적인 가정으로 조용히 해결할 때 발생할 수 있습니다. 후속 개발이 이러한 가정을 기반으로 진행됨에 따라, 결과적인 동작을 수정하는 비용은 점점 더 커질 수 있습니다. 초기 명확화는 이러한 불일치를 방지하는 데 도움이 될 수 있지만, 불필요한 질문은 개발 흐름을 끊고 개발 속도를 늦출 수 있습니다. 기존 방법들은 불필요한 질문을 피하면서 핵심적인 명확화 질문을 식별하는 데 어려움을 겪습니다. 따라서 우리는 광범위한 질문 발견과 의미론적 및 실행 기반의 질문 자격 검증을 결합한, 학습이 필요 없는(training-free) 방법인 CONTRA를 제안합니다. CONTRA는 먼저 후보 질문들을 생성하고, 필요한 동작과 관련 없거나 요구사항에 의해 이미 해결된 질문들은 필터링합니다. 남아있는 각 질문에 대해, 두 가지 그럴듯한 답변을 조건으로 하는 프로그램을 생성하고 공유 입력값(shared inputs)에서 안정적인 행동 차이가 있는지 확인합니다. 그런 다음 상호작용 기록을 사용하여 자격이 검증된 질문들 중에서 선택하거나 질문하기를 중단합니다. ClarifyCodeBench에서의 실험 결과, CONTRA는 네 가지 코딩 에이전트 모두에서 가장 높은 F1 점수를 달성하며, 최고 기준선(baseline)의 매크로 평균 F1보다 13.88 퍼센트 포인트 더 높았습니다. 동일한 LLM과 평가 프로토콜을 사용했을 때도, CONTRA는 Claude Code와 OpenHands 코딩 하니스보다 높은 명확화 재현율(clarification recall)과 F1 점수를 달성했습니다. 실제 활용을 지원하기 위해, 우리는 또한 선택적 명확화를 일상적인 개발에 통합하는 Claude Code 플러그인으로 CONTRA를 구현했습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기