명세(Specification)로부터 코드의 정확성 추론하기
요약
LLM이 생성한 코드의 정확성을 검증하기 위해 명세 기반의 입력-출력 쌍을 활용하는 TRAILS~ 방법론을 제안합니다. 기존의 동적 합의나 정적 추론 방식의 한계를 극복하여 코드 실행 결과가 명세에 부합하는지 평가함으로써 높은 정확도와 안정성을 확보합니다.
핵심 포인트
- 명세 기반 카테고리 분할을 통한 테스트 입력 생성
- 코드 자체 대신 입력-출력 쌍의 명세 부합 여부 평가
- Zero-Shot COT 대비 매튜 상관 계수 최대 39% 향상
- LLM의 비결정성에 대한 민감도를 낮추어 높은 안정성 제공
대규모 언어 모델 (LLMs)은 대규모의 자동화된 코드 생성을 가능하게 함으로써 현대 소프트웨어 개발의 필수적인 요소가 되었습니다. 그러나 LLM이 생성한 코드의 정확성을 검증하는 것은 여전히 매우 중요하며 상당 부분 해결되지 않은 과제로 남아 있습니다. 기존의 접근 방식들은 여러 코드 후보군 사이의 동적 합의 (dynamic consensus)에 의존하여 비용이 많이 들고 확장하기 어렵거나, 동적 버그 (dynamic bugs) 및 순서 편향 (order bias)에 취약한 정적 추론 (static reasoning)에 의존합니다. 본 논문에서는 구체적인 (입력, 출력) 쌍을 통해 LLM의 추론을 근거화하는 방식인 TRAILS~ (Targeted Reasoning Agreement via Inputs and Specifications)를 제안합니다. TRAILS는 먼저 명세 (specification)를 기반으로 한 카테고리 분할 (category partitioning)을 통해 다양한 테스트 입력을 생성한 다음, 이를 후보 코드에 대해 실행하고, 결과로 나온 입력-출력 쌍이 명세에 부합하는지 LLM이 평가하도록 유도합니다. 이 과정에서 코드 자체에 대해서는 추론하지 않습니다. 점수는 입력값 전반에 걸쳐 집계되어 프로그램이 정확할 가능성이 있는지 결정합니다. 우리는 세 가지 LLM (Qwen3Coder-30B, Devstral-Small-24B, Olmo3.1-Instruct)을 대상으로 LiveCodeBench 및 CoCoClaNeL 두 데이터셋에서 TRAILS를 평가하였으며, 이를 HoarePrompt 및 Zero-Shot Chain-of-Thought (Zero-Shot COT) 베이스라인과 비교하였습니다. TRAILS는 Zero-Shot COT 대비 매튜 상관 계수 (Matthew Correlation Coefficient)를 최대 39%까지 향상시켰으며, HoarePrompt보다 일관되게 우수한 성능을 보였습니다. 정확도 외에도, TRAILS는 시드 기반 실행 (seeded runs) 전반에서 더 높은 안정성을 보여주어 LLM의 비결정성 (non-determinism)에 대한 민감도를 줄였으며, 경쟁 방식들보다 더 많은 고유 코드 샘플 세트에 대해 정확한 라벨을 할당합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기