Core Concepts
CHATDBG는 대화형 디버깅을 통해 프로그램 상태를 분석하고 버그의 근본 원인을 파악하며 수정 방안을 제시할 수 있는 AI 기반 디버깅 도우미입니다.
Abstract
CHATDBG는 기존 디버거의 기능을 확장하여 프로그래머가 디버거와 대화형으로 상호작용할 수 있게 합니다. 프로그래머는 CHATDBG에게 프로그램 상태에 대한 복잡한 질문을 할 수 있으며, CHATDBG는 LLM(Large Language Model)을 활용하여 자율적으로 디버거 명령을 실행하고 그 결과를 바탕으로 답변을 제공합니다.
CHATDBG는 C/C++, Python 등 다양한 언어의 표준 디버거(GDB, LLDB, Pdb 등)와 통합되어 있습니다. 실험 결과, CHATDBG는 다양한 실제 버그에 대해 효과적으로 근본 원인을 파악하고 수정 방안을 제시할 수 있었습니다. Python 프로그램의 경우 단일 질문만으로도 67%의 경우에 실행 가능한 버그 수정 방안을 제시할 수 있었고, 추가 질문을 통해 85%의 성공률을 달성했습니다. C/C++ 프로그램의 경우에도 36%의 경우에 근본 원인을 파악하고 수정 방안을 제시할 수 있었습니다.
Stats
프로그램 실행 중 발생한 예외 오류로 인해 실행이 중단되었습니다.
디버거가 제공한 스택 트레이스에 따르면 assert len(stats) == num_trials 문장에서 오류가 발생했습니다.
num_trials 변수의 값은 5이고, stats 변수의 길이는 150입니다.
Quotes
"CHATDBG는 프로그래머가 디버거와 대화형으로 상호작용할 수 있게 하여 프로그램 상태에 대한 복잡한 질문을 할 수 있게 합니다."
"CHATDBG는 LLM을 활용하여 자율적으로 디버거 명령을 실행하고 그 결과를 바탕으로 답변을 제공합니다."