
연구자들이 arXiv에 공개한 사전논문에 따르면 GPT-5로 PyTorch 2의 컴파일러 프런트엔드 TorchDynamo를 시험해 신규 버그 23건을 찾아냈다. 연구진은 논문 작성 시점에 15건이 확인됐고 이 가운데 10건은 관련 수정이 반영됐다고 밝혔다.
TorchDynamo는 Python 바이트코드를 분석해 계산 그래프를 만드는 torch.compile의 앞단이다. 이 단계에서 생긴 결함은 프로그램 충돌뿐 아니라 잘못된 출력이나 성능 저하로 이어질 수 있다. 특히 예외나 경고 없이 결과만 달라지는 오류는 모델 개발자가 문제를 알아채기 어렵다.
연구진은 먼저 기존 TorchDynamo 프런트엔드 버그 123건을 분석했다. GPT-5로 각 이슈의 관련 작업과 발생 조건, 증상, 내용을 구조화하고 GPT-5와 Claude Sonnet 4를 함께 사용해 원인별로 묶었다. 두 명의 연구자가 모델이 만든 주석을 모두 검토하고 의견이 다른 항목은 수동 확인을 거쳐 합의했다. 그 결과 근본 원인을 7개 범주와 15개 하위 범주로 정리했다.
새 버그 탐지에는 GPT-5가 쓰였다. 알려진 원인과 비슷하지만 다른 상황을 겨냥하도록 테스트를 만들고, 컴파일을 적용하지 않은 eager 모드와 torch.compile 모드의 실행 결과를 단언문으로 비교했다. 연구진은 17개 세부 원인마다 10건씩 모두 170건의 테스트를 PyTorch 2.10에서 실행했다.
170건 가운데 23건이 실패나 오류를 일으켰다. 논문은 이들 이슈를 PyTorch 프로젝트에 보고했으며 15건이 확인됐다고 설명한다. 5건에는 높은 우선순위가 부여됐고, 사용자 정의 매직 메서드를 덮어쓸 때 결과가 달라지는 이슈 #174050과 특정 Python 예외 처리 구문을 지원하지 못하는 이슈 #174166 등이 포함됐다.
연구진은 복잡한 Python 기능 지원 부족을 주요 원인으로 지목했다. 동적 타입, 메타프로그래밍, 런타임 검사 같은 언어 특성이 그래프 캡처와 가드, 부수효과 처리에 얽히면서 오류를 만들 수 있다는 분석이다. 같은 근본 원인을 가진 버그가 비슷한 Python 구문과 실행 조건에서 재현되는 경향도 관찰했다.
이번 결과는 LLM이 코드를 직접 고치는 역할뿐 아니라 기존 결함의 패턴을 구조화하고 새 테스트를 합성하는 도구로 쓰일 수 있음을 보여준다. 다만 연구진도 여러 소스 파일의 상호작용, 외부 라이브러리 API, 특정 GPU 환경에 의존하는 결함은 현재 방식으로 재현하기 어렵다고 밝혔다.
이 연구는 동료평가가 완료되지 않은 사전논문이다. 15건 확인과 10건 수정은 연구진이 논문 작성 시점의 이슈와 풀리퀘스트 상태를 집계한 수치이며, 향후 PyTorch 버전과 프로젝트 판단에 따라 상태가 달라질 수 있다. 재현자료와 버그 분류 데이터는 GitHub와 Zenodo에 공개됐다.
출처: 연구자 원문(arXiv) https://arxiv.org/abs/2607.25651
출처: 연구자 공개 재현자료(GitHub) https://github.com/sssssh1228/DLC_fBug
출처: 연구자 공개 재현자료(Zenodo) https://doi.org/10.5281/zenodo.19229496
출처: PyTorch 공식 이슈 #174050 https://github.com/pytorch/pytorch/issues/174050
출처: PyTorch 공식 이슈 #174166 https://github.com/pytorch/pytorch/issues/174166