줄 단위 앵커 피드백으로 AI 코드 수정의 토큰 비용 줄이고 정확도 높이기
Line-Anchored Feedback Cuts Token Costs and Improves Correctness in AI Code Editing
TL;DR Highlight
수정 요청을 줄 번호에 붙여 보냈더니 Sonnet 출력 토큰이 58% 줄었다
Who Should Read
LLM 코드 수정 에이전트에 리뷰 피드백을 넘기면서 출력 토큰 비용과 지연이 부담인 개발자
Core Mechanics
- 같은 요청, 형식만 바꿨다
- 요청 내용은 같고 전달 방식만 다르다.
- 한쪽은 통째로 쓴 프롬프트, 다른 쪽은 줄 위치와 원문 인용이 붙은 FileMark 내보내기다.
- 큰 파일에서 토큰이 크게 줄었다
- Claude Sonnet은 전체 58%, Opus는 22.5% 적게 생성했다.
- 100줄 이상 파일에서는 24~80% 감소했다.
- 작은 파일은 절약할 게 없다
- 100줄 미만에서는 Claude 토큰 변화가 -9%~+12%였다.
- 위치 찾기가 쉬워서 두 방식이 비슷했다.
- 로컬 모델은 정확도가 올랐다
- 로컬 모델 5개 중 3개가 5~7%p 올랐다.
- 조용히 틀리는 실행은 크게 줄고 대신 눈에 띄는 에러로 바뀌었다.
- Sonnet은 정확도가 조금 떨어졌다
- 지나치게 짧은 수정 때문에 0.994에서 0.949로 내려갔다.
- 도구가 편집을 대신 적용하면 이 손실은 없었다.
Evidence
- Claude 토큰 감소폭
- Sonnet은 평균 출력 토큰이 1,282에서 545로 줄었다(-57.5%, 일반 프롬프트 대비).
- Opus는 -22.5%였다.
- 100줄 이상에서 더 크게 감소
- T4 기준 Sonnet -80.3%, Opus -38.4%였다.
- 7개 모델 전체 T4 중앙값은 1,736에서 681토큰이 됐다.
- 전체 정확도 소폭 상승
- 7개 모델 합산 정답률이 0.630에서 0.650으로 올랐다(+2.0%p, McNemar p=8.7e-6).
- qwen3-coder:30b +7.3%p, qwen2.5-coder:14b +6.0%p, llama3.1 +5.1%p였다.
- 함수 패치 방식에서 효과 확대
- 하네스가 편집을 적용하면 로컬 5개 모델의 100줄 이상 정답률이 0.097에서 0.279로 약 3배가 됐다(탐색적 실험).
- T4 점수 효과는 +0.048에서 +0.191로 커졌다.
How to Apply
- 코드 수정 요청에 줄 위치 붙이기
- 지금 쓰는 리뷰 코멘트를 줄 범위, 인용 코드, 요청 형태로 다시 써서 같은 파일에 두 방식으로 돌려 출력 토큰을 비교한다.
- 100줄 이상 파일부터 시험한다.
- 편집 적용을 도구가 맡게 하기
- 로컬 모델을 쓴다면 모델에게 diff 문법을 맞추게 하지 말고 수정된 함수만 받아 하네스가 치환하게 한다.
- 파일이 함수 단위로 나뉘어 있을 때 쓴다.
- 모델별 편집 형식 준수율 먼저 측정하기
- 쓰려는 모델이 SEARCH/REPLACE 블록을 실제로 적용 가능하게 내는지 20회쯤 돌려 확인한다.
- 못 내면 앵커링보다 형식 문제를 먼저 해결한다.
- 토큰 절약과 검증을 같이 돌리기
- 앵커 방식으로 바꾼 뒤 테스트 통과율도 함께 기록한다.
- Sonnet처럼 너무 짧은 수정이 검증을 못 통과하는지 확인한다.
Try It
# Claude나 ChatGPT에 붙여넣기 (논문 방법의 간이 버전: FileMark 대신 손으로 줄 앵커 형식 흉내)
아래 코드를 수정해 줘. 각 요청은 줄 범위와 해당 코드 인용이 붙어 있어.
요청된 줄만 고치고, 바꾼 부분만 SEARCH/REPLACE 블록으로 출력해.
[코드]
{{코드}}
[피드백]
- 줄 {{시작}}-{{끝}} `{{인용 코드}}`: {{수정 요청}}
- 줄 {{시작}}-{{끝}} `{{인용 코드}}`: {{수정 요청}}
이어서 해 볼 것: 같은 요청을 줄 번호 없이 한 문단으로 써서 보내고 출력 토큰 수를 비교해 봐.Terminology
관련 논문
Mercury 3: 규모를 키운 diffusion LLM, 초당 1,000토큰 이상
Diffusion LLM을 40배 키웠더니 속도 4~8배, 품질은 속도 특화 모델 수준
Timestral: Mistral의 시계열 파운데이션 모델
209M 파라미터 시계열 모델이 3대 벤치마크 1위, CPU에서도 돌아간다
DeepSeek V4.1 Flash 1017 (Max) 성능·속도·가격 분석
DeepSeek V4.1 Flash 1017 Max는 지능 지수 45에 211 tok/s, 입력 $0.30
LLM 프록시를 직접 안 돌리면 무슨 일이 벌어지는지 어떻게 아나
자체 LLM 프록시를 세웠더니 키·모델·캐시 미스를 직접 볼 수 있다
DeepSeek V4.1 Flash 1017: 싼 가격에 1M 컨텍스트를 주는 에이전트용 모델
DeepSeek V4.1 Flash 1017은 입력 $0.05/M, 1M 컨텍스트의 에이전트용 모델
DeepSeek-V4.1-Flash-1017 공개: 더 짧게 생각하고 더 빠르게 일하는 에이전트용 모델
DeepSeek V4.1 Flash 마이너 업데이트로 코딩·에이전트 벤치 점수↑, 실행 시간·출력 길이↓
Llmspeed: 로컬 LLM 속도를 하드웨어 구매 전에 체감해 보는 시뮬레이터
GPU·모델을 고르면 로컬 LLM 속도를 미리 체감하게 해 주는 시뮬레이터
Related Resources
Original Abstract (Expand)
Generated tokens are a direct driver of the cost, latency, and energy of generative AI (GAI) code editing. We show the format of feedback is a lever on all three. We compare two deliveries of the same requested changes: a holistic prompt (control) versus the structured, line-anchored export of FileMark (treatment). FileMark is a VSCodium extension for inline comments on any file. In a paired experiment line anchoring cut generated tokens by 22% (Claude Opus) and 58% (Claude Sonnet), reaching 24%-80% on files of 100 lines or more, with four of seven models generating significantly fewer tokens after multiple-testing correction. Correctness rose where models had headroom: +2.0 points pooled and +5 to +7 points for three of five local models. An exploratory experiment in which the harness, not the GAI model, applies function-level patches shows the correctness benefit grows further when the edit-application burden is lifted: local-model correctness on 100+ line files roughly triples under anchoring. Line-anchored feedback reduces what stronger models spend and improves what weaker models get right.