Effort Levels in Practice: I Benchmarked low Through max on Real Tasks
개요
Claude 모델의 노력(effort) 설정(low, medium, high, xhigh, max)이 실제 작업의 토큰 사용량, 지연 시간 및 품질에 미치는 영향을 벤치마킹한 결과, 작업 유형에 따라 최적의 설정이 달라짐을 보여준다.
주요 내용
* 노력(Effort) 설정의 의미: 단순히 모델의 사고량뿐만 아니라, 토큰 사용량과 도구 호출 방식(적은 호출, 간결한 출력 vs. 탐색적 접근)을 포함하는 전반적인 비용을 제어한다. 기본값은 'high'이다.
* 테스트 방법: 분류, 코드 생성, 다단계 감사(Multi-step audit)라는 세 가지 실제 작업을 선정하여 5가지 노력 설정별로 3회씩 실행하고 평균값을 측정했다. 품질은 정답 비교 또는 수동 검토로 평가했다.
* 분류 작업 결과: 모든 노력 수준에서 품질은 동일했으나, 'low' 대비 'max' 설정에서 토큰 사용량이 약 8배 증가했다. 따라서 단순하고 범위가 명확한 작업에는 'low' 설정이 효율적이다.
* 코드 생성 작업 결과: 'low'에서 'high'로 갈수록 품질이 향상되었으나, 그 이상에서는 정체되었다. 'high' 설정이 최적이었으며, 'xhigh'와 'max'는 더 많은 토큰을 사용하면서도 'high'와 유사한 품질을 보였다.
* 다단계 감사 작업 결과: 이 작업에서 가장 의외의 결과가 나왔다. 토큰 사용량은 노력 수준에 따라 선형적으로 증가하지 않았다. 'medium'보다 'xhigh' 설정에서 오히려 총 토큰 사용량이 더 적었으며, 품질 또한 'xhigh'에서 가장 우수했다. 이는 'xhigh' 설정이 더 나은 초기 계획을 통해 적은 턴으로 작업을 완료했기 때문이다.
* 노력 설정의 비선형성: 단발성 작업에서는 노력 수준을 높이면 비용이 증가하는 경향이 있지만, 다단계 에이전트 작업에서는 더 나은 계획 수립으로 인해 전체 비용이 절감될 수 있다. 즉, 피드백 루프가 포함된 경우 노력과 총 비용의 관계는 비선형적일 수 있다.
* 실제 적용 방안: 노력 설정은 전역 기본값 대신 각 호출 지점에서 결정해야 한다.
* 분류, 라우팅, 추출: 'low' (품질 일정, 토큰 증가)
* 단발성 코드 또는 콘텐츠 생성: 'high' (품질 정체 구간, 그 이상은 낭비)
* 에이전트 루프, 다단계 감사: 'xhigh' (더 나은 계획, 적은 턴, 종종 더 저렴)
* 절대적 정확성이 필요한 드문 경우: 'max'
시사점
Claude 모델의 'effort' 설정을 벤치마킹하여 실제 작업에 대한 최적의 설정을 파악하는 것은 토큰 낭비를 줄이고 효율성을 높이는 데 중요하다. 특히 에이전트 기반 작업에서는 더 높은 노력 설정이 오히려 비용 효율적이고 더 나은 결과를 가져올 수 있다는 점을 고려해야 한다.
댓글
GitHub Discussions