Anthropic의 Claude Code 노력 수준(Effort Level) 몰래 하향 조정 의혹
Anthropic Stealth Nerfing Effort Levels
핵심 요약
Claude Code의 '노력 수준' 설정이 서버 측에서 몰래 하향 조정되어 모델 성능이 저하되었다는 분석이 제기되었습니다.
- 성능 저하 의혹 — 사용자가 설정한 '높음' 수준이 실제로는 이전의 '낮음' 수준과 동일하게 작동함
- 기술적 분석 — API 요청 시 서버가 반환하는 reasoning_effort 태그 값을 비교하여 하향 조정 확인
- Anthropic 해명 — 서버 측 테스트 과정에서 수치 매핑이 변경된 것이며 모델 성능에는 영향이 없다고 주장
- 사용자 반응 — 토큰 사용량 변화와 모델 지능 저하를 체감하며 Anthropic의 불투명한 운영을 비판
수정: 트위터 Thariq 업데이트 내용. https://x.com/trq212/status/2091247114869432543
"우리가 가끔 Claude Code에 API 서빙 설정을 적용하기 전에 테스트를 돌리는데, 지금 돌아가는 설정 하나가 숫자형 effort 값을 다르게 매핑하고 있음.
그래서 Claude가 몇몇 사용자한테 '10'이라고 말하는 거임. 이 스케일은 0-100이 아니고, 숫자 자체는 별 의미 없음. 네가 선택한 effort가 그대로 적용되는 거니까 걱정 마라. 모델 성능에는 영향 없다는 거 정밀 평가로 다 확인했음.
사용 경험은 똑같아야 정상인데, 만약 확실히 성능 떨어졌다고 느껴지면 /feedback 눌러서 ID 보내줘. 크레딧 넣어줌."
이번 주 들어 Fable이 좀 멍청해진 것 같았다면, 네 기분 탓이 아닐 확률이 높다. X에서 @argofowl이 서버 측에서 effort 스케일이 줄어들었다고 주장하는 글을 봤는데, 오후 내내 테스트해보니 그 말이 맞더라.
일단 배경 설명 좀 함. Claude Code가 API를 호출할 때 effort 레벨을 단어로 보냄: output_config: {effort: "high"}. 그럼 API가 그 단어를 숫자로 바꿔서 모델 내부의 <reasoning_effort> 태그에 집어넣음. 이 태그는 요청 본문에는 아예 없고 서버가 알아서 추가하는 거임. 그러니까 모델한테 태그를 그대로 읊어보라고 시키면, 서버가 너한테 할당한 숫자를 그대로 읽어주는 거지.
그래서 직접 물어봤다. 같은 맥, 같은 계정, 같은 명령어. 딱 하나 바꾼 건 실행한 Claude Code 바이너리 버전뿐임.
| Claude Code | low | medium | high | xhigh |
|---|---|---|---|---|
| 2.1.235 (Aug 18) | 10 | 40 | 120 | |
| 2.1.236 (Aug 19) | 5 | 10 | ||
| 2.1.237 | 5 | 10 | ||
| 2.1.240 (current) | 5 | 7 | 10 | 40 |
현재 빌드에서는 "high"라고 설정해도 8월 18일에 "low"로 보냈던 숫자가 나옴. "xhigh"가 예전의 "high"인 셈이지. 설정창에는 high라고 뜨고 상태 표시줄에도 high라고 나오는데, 정작 모델은 일주일 전보다 4분의 1 수준의 예산만 할당받고 있는 거임.
이거 단순 오류 아님. 2.1.240 버전에서 레벨당 3번씩 총 15번 돌려봤는데 15번 다 똑같은 숫자 나옴. 2.1.235랑 2.1.240 요청 본문 비교해봤는데, User-Agent의 버전 문자열, 세션 ID, 시스템 프롬프트 150자 정도 빼고는 완전히 똑같음. 베타 플래그도, output_config도, thinking config도 다 똑같음. 클라이언트가 바뀐 것도 아님: Fable 5 출시(6월, 2.1.170) 이후 모든 Claude Code 빌드의 모델 테이블에는 default_effort가 "high"로 박혀 있음. 바뀐 건 그 단어에 대해 서버가 뱉어내는 값뿐임.
2.1.236부터 2.1.240까지의 변경 로그를 봐도 effort 관련 언급은 딱 세 번뿐인데, 전부 다 겉치레(상태 배지 색깔, 캐시 미스 경고) 수준임. 스케일 관련 내용은 아예 없음.
직접 확인해 봐라:


