DeepSeek V4.1은 코드 정답 뒤집힘은 줄였지만 위치별 확률은 흔들린다
ByteDance Seed가 지난 9월 말 공개한 연구에 따르면 DeepSeek-V4-Flash 베이스 모델은 코드 앞에 붙는 무관한 주석 길이에 따라 정답 '8'과 오답 '32' 사이를 주기적으로 오갈 수 있다. 중국 매체 Leiphone은 같은 실험 코드를 DeepSeek 공식 API에 넣어 현재 서비스 중인 V4.1-Flash를 두 차례 시험했고, 고정 샘플 64개에서는 모두 정답이 나왔다고 전했다. 다만 정답 확률은 입력 길이에 따라 달라졌다.
문제의 핵심은 DeepSeek V4가 긴 문맥 추론 비용을 줄이려고 도입한 두 가지 압축 어텐션에 있다. CSA(압축 희소 어텐션)는 8개 토큰을 한 압축 창으로 묶고 4개 토큰마다 압축 레코드를 만든 뒤 현재 질문과 관련 높은 정보를 고른다. HCA(고압축 어텐션)는 128개 토큰마다 레코드 하나만 남기지만 과거 압축 레코드를 전부 읽는다. ByteDance Seed는 같은 정보가 몇 토큰만 이동해도 서로 다른 압축 위치에 들어가 검색 결과가 달라질 수 있다고 봤고, 이를 '위상(phase)' 민감성이라고 불렀다.
연구진은 128K 문맥에서 1만6000개의 키·값 레코드 중 지정 정보를 찾는 실험을 했다. V4-Flash 베이스 모델의 위치 그룹별 정확도는 가장 좋은 곳 69.9%, 가장 나쁜 곳 29.7%로 40.2%포인트 차이를 보였고, 변동 주기는 압축 보폭과 맞물렸다. Qwen3-0.6B 구조로 만든 대조 모델에서는 위치 인코딩 RoPE를 빼거나 압축 게이트를 균등 평균으로 바꿔도 주기적 약점이 사라지지 않았고, 압축 보폭을 4·6·8·12로 바꾸면 정확도 변동 주기도 함께 바뀌었다. 전체 어텐션 모델에서는 같은 현상이 뚜렷하지 않았다.
Leiphone의 재현 테스트는 논문의 FP8 코드 완성 실험을 참고해 진행됐다. 코드 앞에 붙이는 무관한 내용의 길이만 24개에서 39개 토큰까지 1개씩 늘렸고, 네 가지 채우기 유형마다 16개 길이를 써 총 64개 입력을 만들었다. 고정 샘플링에서는 모두 '8'을 골랐다. 이어 64회 확률을 재보니 '8'은 항상 최상위 후보였지만 확률은 고정되지 않았다. 문서 문자열 유형에서는 앞부분 채우기가 24개에서 25개 토큰으로 늘어날 때 정답 8의 예측 확률이 83.33%에서 92.29%로 뛰었다. 이번 테스트에서는 홀수 길이의 평균 확률이 짝수 길이보다 3.6~5.8%포인트 높았다.
그러나 이것이 ByteDance Seed가 본 주기적 약점을 그대로 재현했다는 뜻은 아니다. 모든 인접 입력이 홀수·짝수 규칙을 따르지 않았고, 같은 입력을 8개 묶음으로 반복 측정했을 때도 '8'의 확률이 최대 5.35%포인트 흔들렸다. 확률 테스트 64회 중 6회는 샘플링 결과 '32'가 나왔지만, 모델의 선호 자체가 뒤집힌 것은 아니었다. Leiphone은 더 새로운 V4.1-Flash를 시험했고 채우기 내용과 API 변동도 완전히 배제하지 못해, 확률 변화를 캐시 압축 구조 탓으로 단정할 수 없다고 선을 그었다.
논문이 제시한 수치를 보면 V4-Flash 베이스 모델의 최고·최악 위치 정확도 차이는 40.2%포인트였지만 후속 학습을 거치며 19.1%포인트로 줄었고, 9월 공개된 V4.1-Flash에서는 6.1%포인트까지 내려왔다. V4.1은 압축을 포기하지 않았다. 일부 압축 경로의 보폭을 4개 토큰에서 2개 토큰으로 줄이고, Causal Encoder–Decoder(CED) 구조와 계층 간 캐시 재사용, 저정밀 KV 저장을 결합했다. 원문이 인용한 DeepSeek 발표에 따르면 V4.1의 KV 캐시 메모리 요구량은 이전 세대의 4분의 1, 영속 캐시 저장 요구량은 8분의 1로 줄었다.
장문 평가의 기준도 바뀌고 있다. NVIDIA RULER는 단순한 '바늘 찾기' 통과가 복잡한 검색·요약 능력을 보장하지 않는다고 지적했고, Adobe 등이 제안한 NoLiMa는 질문과 답의 키워드 겹침을 줄이면 성능이 떨어질 수 있음을 보였다. ByteDance Seed 연구는 여기에 압축 구조에 따른 위치 취약점을 더했다. 평균 점수가 비슷해도 특정 위치에서 신뢰성이 크게 낮아질 수 있다는 관점이다.
개발자에게 중요한 건 평균 점수 뒤에 가려지는 위치별 편차다. ByteDance Seed의 0.6B 대조 실험에서 전체 어텐션 모델과 블록 압축 모델의 평균 검색 정확도는 61.1%와 59.4%로 1.7%포인트 차이에 그쳤지만, 가장 나쁜 위치 그룹은 58.4%와 9.9%로 벌어졌다. 코딩 에이전트는 코드, 로그, 도구 피드백을 계속 읽으며 핵심 정보의 위치가 바뀌기 때문에 한 번의 검색 실패가 다음 작업에 영향을 줄 수 있다. 다만 이 연구가 실제 에이전트 작업 실패를 얼마나 설명하는지는 아직 입증되지 않았다. 블록 압축 모델을 쓴다면 평균 benchmark 외에 위치별 최악 정확도와 연속 작업에서의 안정성을 따로 측정할 필요가 있다.