CodeShrink: 효율적인 멀티모달 코드 이해를 위한 적응형 시각적 압축
요약
CodeShrink은 멀티모달 거대 언어 모델(MLLMs)의 코드 이해 효율을 높이기 위한 적응형 시각적 압축 프레임워크입니다. 공백 제거 렌더링, 강화학습 기반의 적응형 설정, 지시 사항 인식 토큰 선택을 통해 시각적 토큰 사용량을 최대 71.2%까지 절감합니다.
핵심 포인트
- 공백을 제거하고 구조적 마커를 사용하는 Blank-Free Rendering 제안
- 강화학습 에이전트를 통한 입력별 최적 압축 설정 예측
- 지시 사항과 무관한 시각적 토큰을 제거하는 Dominant Token Selection 적용
- 시각적 토큰을 최대 71.2% 줄이면서도 기존 텍스트 기반 성능 상회
소스 코드를 이미지로 렌더링하는 것은 멀티모달 거대 언어 모델 (MLLMs)의 입력 비용을 줄이는 유망한 방법을 제공합니다. 이미지 해상도를 조정하면 시각적 토큰 (visual token) 비용과 콘텐츠 충실도 (content fidelity) 사이의 절충이 가능합니다. 그러나 해상도 스케일링만으로는 두 가지 비효율성의 원인을 간과하게 됩니다: 줄 바꿈과 들여쓰기로 인해 생성되는 빈 영역, 그리고 현재 지시 사항과 관련 없는 코드 영역입니다. 더욱이, 최적의 압축 설정은 입력, 작업 및 모델에 따라 달라지므로 고정 비율 전략에는 한계가 있습니다. 우리는 세 가지 구성 요소로 이루어진 적응형 시각적 압축 프레임워크인 CodeShrink을 제안합니다. Blank-Free Rendering은 공백에 의존하는 레이아웃을 조밀한 레이아웃과 명시적인 구조적 마커로 대체하여 레이아웃으로 인해 발생하는 토큰을 제거합니다. Adaptive Compression Configuration은 강화학습 (RL)으로 훈련된 경량 에이전트를 사용하여 토큰 효율성과 가독성의 균형을 맞추는 입력별 설정을 예측합니다. Dominant Token Selection은 지시 사항과 코드 이미지를 공동으로 분석하여 추론 중에 작업과 무관한 시각적 토큰을 제거합니다. 우리는 코드 질의응답 (code question answering), 클론 탐지 (clone detection), 코드 완성 (code completion)에서 CodeShrink을 평가합니다. CodeShrink은 압축되지 않은 텍스트 전용 입력과 대등하거나 이를 능가하면서도 시각적 토큰 사용량을 최대 71.2%까지 줄이며, 세 가지 작업 모두에서 텍스트 기반 및 시각적 압축 베이스라인을 일관되게 능가합니다. 이러한 결과는 레이아웃 압축, 적응형 구성, 지시 사항 인식 가지치기 (instruction-aware pruning)를 결합함으로써 멀티모달 코드 이해를 더욱 효율적으로 만들 수 있음을 보여줍니다. 우리의 코드는 https://github.com/vinsontang1/CodeShrink 에서 확인할 수 있습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기