코드베이스 구조가 AI 코딩 성능을 결정하는 이유
- •AI 코딩 모델에서 코드베이스는 외부 데이터가 아닌 쿼리 프롬프트 자체로 기능한다.
- •구조가 잘 잡힌 로컬 코드는 압축률이 높아 모델이 누락된 정보를 쉽게 추론할 수 있다.
- •AI의 효율성을 극대화하려면 복잡하고 비지역적인 문제를 명확한 쿼리로 압축해야 한다.
소프트웨어 개발자 팀 크렙스(Timon Krebs)는 AI 기반 코딩 작업에서 전체 코드베이스가 단순한 참고 자료가 아닌 프롬프트의 핵심 요소로 작용한다고 설명한다. AI 모델은 단순한 사실 정보 저장소가 아니라, 입력된 패턴을 바탕으로 논리적인 후속 코드를 재구성하는 시스템이다. 명명 규칙, 아키텍처, 숨겨진 가정, 테스트 상태, 파일 구조 등 코드베이스 내 모든 요소가 쿼리의 일부로 작동하기 때문이다.
그는 AI 코딩 도구인 Fable 5를 활용해 개인 프로젝트를 재개하며 모델의 성능을 체감했다. 모델은 솔루션의 형상을 시각화하도록 도와 복잡한 문제를 해결했지만, 전문적인 코드베이스에서는 성능이 일관되지 않았다. 이는 출력 품질이 코드의 근본적인 구조에 달려있음을 보여준다. 캡슐화와 명확한 인터페이스를 갖춘 '좋은 코드'는 지역적(local) 특성이 강해 압축이 용이하고 모델의 추론을 돕는다. 반면, 전역 상태나 먼 의존성에 의존하는 '나쁜 코드'는 컨텍스트 윈도우를 벗어나기 쉽다.
단순히 모델에 모범 사례를 전달하는 방식은 오히려 복잡한 코드베이스와 상충하는 정보를 제공해 역효과를 낳는다. 특히 컨텍스트 로트(Context Rot) 현상으로 인해 오래된 파일과 관련 없는 예시들이 모델의 활성 창에 머물며 결과값을 왜곡한다. 팀 크렙스는 코딩 성능 개선의 핵심이 기교적인 프롬프트 작성이 아닌, 비지역적 맥락을 구체적으로 제공하는 데 있다고 강조한다. 모델이 제한된 경계 내에서 작동하도록 과제를 축소하고, 숨겨진 불변 항목을 식별하는 과정이 성공적인 LLM 활용의 필수 조건이다.