MLDebugging: Towards benchmarking code debugging across multi-library scenarios

저자: Jinyang Huang, Xiachong Feng, Qiguang Chen, Hanzhang Zhao, Zheng Cheng, Jie Bai, Jingxuan Zhou, Min Li, L. Q. Qin | 날짜: 2025 | DOI: N/A


Essence

Figure 1

다중 라이브러리 코드 디버깅의 예시: (a) 단순 정적 버그 vs (b) 라이브러리 간 변수 적응 문제

본 논문은 실제 소프트웨어 개발 환경에서 흔히 나타나는 다중 라이브러리 시나리오에서의 코드 디버깅을 체계적으로 평가하기 위한 MLDebugging 벤치마크를 제시한다. 126개의 Python 라이브러리를 포함하고 7가지 버그 유형으로 분류된 1,175개의 샘플로 구성되어 있다.

Motivation

Achievement

Figure 2

데이터셋 구축 파이프라인: (1) 데이터셋 수집, (2) LLM을 통한 디버깅, (3) 카테고리 균형 조정, (4) 수동 검증

  1. 다중 라이브러리 디버깅 벤치마크 구축: 126개의 widely-used 라이브러리를 포함하는 1,175개의 고품질 샘플 생성. 기존 벤치마크(xCodeEval, HumanEval, MdEval)와 달리 2-6개의 라이브러리 사용 및 실제 시나리오 반영.
  2. 체계적 버그 분류 체계: Type Mismatch(TM), Data Transfer Issues(DTI), Function Parameter Errors(FPE), Parameter Configuration Errors(PCE), Function Misuse(FM), Requirement Misunderstanding(RM), Import Errors(IE) 등 7개 카테고리로 분류.
  3. 종합적 LLM 평가: GPT-4o, Claude-3.5-sonnet, DeepSeek-V3, DeepSeek-r1 등 주요 모델 평가 결과:
    • 모든 LLM이 다중 라이브러리 디버깅에서 제한된 성능 보임
    • 방법 클래스 에러(method class error)는 잘 처리하나 개념적 오류와 import 누락에 취약
    • 런타임 정보(테스트 케이스, 피드백) 접근성이 성능 향상에 기여

How

Figure 2

데이터셋 구축의 4단계 프로세스

1. 소스 코드 수집

2. LLM을 통한 어노테이션 및 디버깅

3. 버그 카테고리 균형 조정

4. 품질 제어

Originality

Limitation & Further Study

Evaluation

총평: MLDebugging은 코드 디버깅 연구의 중요한 공백인 다중 라이브러리 시나리오를 처음으로 체계적으로 다루는 실질적인 기여를 한다. 엄격한 데이터 수집 및 품질 관리 프로세스와 포괄적인 LLM 평가를 통해 이 분야의 토대를 마련했으나, 언어 제한, 샘플 규모, 버그 현실성 검증 측면에서 개선 여지가 있다.

같이 보면 좋은 논문

기반 연구
AI가 과학을 변혁시키는 전반적 트렌드 하에서 코드 디버깅 자동화라는 구체적 영역을 다룬다.
다른 접근
LLM 기반 PDE 솔버 생성과 다중 라이브러리 코드 디버깅 모두 과학 코딩 자동화 도구로서 상호 보완적 접근법을 제시한다.
후속 연구
MLAgentBench의 머신러닝 에이전트 평가 방식을 다중 라이브러리 디버깅 벤치마크로 확장한 연구이다.
응용 사례
ResearchCodeAgent가 자동화된 과학 코드 생성을 수행할 때 MLDebugging의 디버깅 벤치마크를 활용할 수 있다.
← 목록으로 돌아가기