문서 생성 시 환각 방지: LLM에 직접 줄 번호를 쓰게 하지 마세요
코드베이스 문서화 시 LLM의 줄 번호 생성 오류를 막고, 파서를 통해 정확한 소스 슬라이스를 강제하는 기술적 기법.
요약
코드베이스 문서화 도구를 유지보수하는 개발자는 모델이 생성한 코드 범위(range)의 정확성 문제를 해결하기 위해 새로운 파이프라인을 도입했다. 기존 방식처럼 모델이 직접 파일 경로와 줄 번호를 생성하게 하면, 실제 파일 내에서 30줄가량 오차가 발생하는 등 허구의 정보를 생성하는 문제가 발생했다. 이를 해결하기 위해 모델이 직접 줄 번호를 쓰지 못하게 하고, Tree-sitter를 활용해 소스 코드의 모든 심볼 위치와 범위를 시스템이 직접 파악하도록 구조를 변경했다. 이후 각 심볼 단위로 모델을 호출하여 사실 정보를 추출하고, 모델이 아닌 시스템 파서 데이터에서 직접 범위를 매핑하는 방식으로 정확도를 높였다. 이 접근법은 LLM의 환각 문제를 방지하고 문서의 신뢰성을 확보하는 데 효과적인 대안을 제시한다.
AI가 원문을 요약한 내용으로, 부정확할 수 있습니다.
원문 제목 If your model writes the citation, it will eventually make one up. Give it an opaque ID and substitute the real range yourself.
원문 보기 ↗