ProDebug: Prolog을 위한 자동 디버깅 시스템
요약
Prolog 학습자를 위한 자동 디버깅 시스템인 ProDebug을 소개합니다. LLM과 스펙트럼 및 변이 기반 기술을 결합하여 학생들의 코드 결함을 식별하고 수정 사항을 제안합니다.
핵심 포인트
- Prolog의 디버깅 난관을 해결하기 위한 최초의 LLM 결합 도구
- 스펙트럼, 변이 기반 기술과 LLM 추론을 통한 결함 탐지
- Git 제출물을 분석하여 자동화된 버그 수정 제안
- 1,499개의 실제 사례를 통해 교육적 잠재력 입증
Prolog는 논리와 추론에 관한 입문 과정에서 흔히 사용되는 잘 알려진 선언형 프로그래밍 언어 (declarative programming language)입니다. 하지만 많은 학생들은 명령형 언어 (imperative languages)에서 볼 수 있는 익숙한 디버깅 메커니즘이 부족하기 때문에 Prolog를 어렵게 느낍니다. 대규모 강의에서는 학생들에게 적시에 개인화된 피드백을 제공해야 하는 어려움으로 인해 이러한 난관이 더욱 심화됩니다. 본 연구에서는 Prolog 과제의 자동 디버깅을 위해 대규모 언어 모델 (LLMs)을 스펙트럼 기반 (spectrum-based) 및 변이 기반 (mutation-based) 기술과 결합한 최초의 도구인 ProDebug을 소개합니다. ProDebug은 학생들의 Git 제출물에서 결함 (faults)을 자동으로 식별하고 버그 수정 (bug repairs)을 제안합니다. 결함은 스펙트럼 기반, 변이 기반, 그리고 LLM 추론 (LLM reasoning)이라는 세 가지 접근 방식을 사용하여 탐지되는 반면, 수정 사항은 변이 기반 기술과 LLM을 사용하여 생성됩니다. 학사 수준의 프로그래밍 수업에서 발생한 1499개의 버그가 있는 학생 제출물을 대상으로 한 평가 결과, 자동화된 LLM 증강 피드백 시스템이 선언형 프로그래밍 교육을 위한 지원을 확장할 수 있는 잠재력이 있음을 입증하였습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기