노력
노력 매개변수를 사용하면 요청에 응답할 때 Claude가 토큰을 얼마나 적극적으로 사용할지 제어할 수 있습니다. 이를 통해 단일 모델로 응답의 완전성과 토큰 효율성 간의 균형을 조절할 수 있습니다.
노력 매개변수는 현재 베타 버전이며 Claude Opus 4.5에서만 지원됩니다.
이 기능을 사용할 때는 베타 헤더 effort-2025-11-24를 포함해야 합니다.
노력 작동 방식
기본적으로 Claude는 최대 노력을 사용하여 철저한 응답을 제공하기 위해 필요한 만큼 많은 토큰을 사용합니다. 노력 수준을 낮추면 Claude가 토큰을 더 보수적으로 사용하도록 지시하여 토큰을 더 비싼 리소스로 취급하게 할 수 있습니다.
effort를 "high"로 설정하면 effort 매개변수를 생략한 것과 정확히 동일한 동작을 생성합니다.
노력 매개변수는 다음을 포함한 응답의 모든 토큰에 영향을 미칩니다:
- 텍스트 응답 및 설명
- 도구 호출 및 함수 인수
- 확장 사고(활성화된 경우)
노력 수준
| 수준 | 설명 | 일반적인 사용 사례 |
|---|---|---|
high | 최대 완전성—Claude는 필요한 만큼 많은 토큰을 사용합니다. 매개변수를 설정하지 않은 것과 동등합니다. | 복잡한 분석, 상세한 설명, 교육 콘텐츠 |
medium | 적당한 토큰 절감을 포함한 균형 잡힌 접근 방식입니다. | 대부분의 프로덕션 사용 사례, 비용 의식적인 애플리케이션 |
low | 가장 토큰 효율적인 응답입니다. | 대량 자동화, 간단한 쿼리, 응답이 프로그래밍 방식으로 처리될 때 |
기본 사용법
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-opus-4-5-20251101",
betas=["effort-2025-11-24"],
max_tokens=4096,
messages=[{
"role": "user",
"content": "Analyze the trade-offs between microservices and monolithic architectures"
}],
output_config={
"effort": "medium"
}
)
print(response.content[0].text)노력 수준별 동작
노력 매개변수는 주로 응답 정확성이 아닌 출력 상세도와 설명 깊이를 제어합니다. Claude는 노력 수준에 관계없이 유사한 내부 추론을 수행하지만 해당 추론이 출력에 나타나는 정도를 조정합니다.
낮은 노력 응답
- 최소한의 설명으로 직접 답변 제시
- 간결하고 효율적인 응답(1-2문장의 맥락)
- 공식은 표시되지만 유도되지 않음
- 독자가 답변을 확인할 수 있다고 가정
- 도구 사용에 대한 간단한 확인("완료.", "수정됨.")
중간 노력 응답
- 답변 전 간단한 맥락
- 주요 중간 단계를 포함한 간결한 정당화
- 하나의 작업 예제 포함 가능
- 여전히 효율성에 중점
높은 노력 응답
- 섹션 헤더로 구조화됨
- 문제 설정 및 변수 정의
- 단계별 해결 프로세스
- 검증 및 타당성 확인
- 풍부한 마크다운 형식
사용 사례
낮은 노력을 사용할 때
- 속도 최적화: 낮은 토큰 수는 더 빠른 응답 시간을 의미하며, 지연 시간에 민감한 애플리케이션에 유리합니다
- 자동화된 파이프라인: 응답이 인간이 읽는 것이 아닌 코드로 처리될 때
- 대량 애플리케이션: 일상적인 간단한 쿼리에 대한 비용 절감
- 숙련된 사용자: 사용자가 상세한 설명이 필요하지 않을 때
- 빠른 확인: 간단한 예/아니오 또는 상태 응답
중간 노력을 사용할 때
- 프로덕션 API: 명확성과 비용 효율성의 균형
- 사용자 대면 애플리케이션: 과도한 상세함 없이 충분한 맥락
- 비용 의식적인 배포: 최소한의 품질 영향으로 상당한 절감
높은 노력을 사용할 때(또는 노력 매개변수 없음)
- 복잡한 분석: 완전성이 중요할 때
- 교육 콘텐츠: 사용자가 추론을 이해해야 할 때
- 문서: 응답이 참고 자료로 사용될 때
- 디버깅: 상세한 설명이 문제 식별에 도움이 될 때
도구 사용과 함께 노력
도구를 사용할 때 노력 매개변수는 도구 호출 주변의 설명과 도구 호출 자체 모두에 영향을 미칩니다. 낮은 노력 수준은 다음 경향이 있습니다:
- 여러 작업을 더 적은 도구 호출로 결합
- 전문 없이 직접 작업으로 진행
- 완료 후 간단한 확인 메시지 사용
높은 노력 수준은 다음을 포함할 수 있습니다:
- 작업 전 계획 설명
- 변경 사항에 대한 상세한 요약
- 더 포괄적인 코드 주석 포함
확장 사고와 함께 노력
노력 매개변수는 확장 사고가 활성화되었을 때 사고 토큰 예산과 함께 작동합니다. 이 두 제어는 다른 목적을 제공합니다:
- 노력 매개변수: Claude가 모든 토큰(사고 토큰, 텍스트 응답, 도구 호출 포함)을 어떻게 사용하는지 제어합니다
- 사고 토큰 예산: 특히 사고 토큰에 대한 최대 한계를 설정합니다
노력 매개변수는 확장 사고 활성화 여부와 관계없이 사용할 수 있습니다. 둘 다 구성되었을 때:
- 먼저 작업에 적절한 노력 수준을 결정합니다
- 그런 다음 작업 복잡성에 따라 사고 토큰 예산을 설정합니다
복잡한 추론 작업에서 최고의 성능을 위해 높은 노력(기본값)을 높은 사고 토큰 예산과 함께 사용합니다. 이를 통해 Claude가 철저하게 생각하고 포괄적인 응답을 제공할 수 있습니다.
모범 사례
-
중간부터 시작: 대부분의 애플리케이션에서 중간 노력은 품질과 효율성의 좋은 균형을 제공합니다.
-
자동화에 낮은 노력 사용: 응답이 인간이 아닌 코드로 소비될 때 낮은 노력은 정확성에 영향을 주지 않으면서 비용을 크게 줄일 수 있습니다.
-
사용 사례 테스트: 노력 수준의 영향은 작업 유형에 따라 다릅니다. 배포하기 전에 특정 사용 사례에서 성능을 평가합니다.
-
품질 모니터링: 정확성은 일반적으로 노력 수준 전체에서 유지되지만 설명 품질은 다릅니다. 선택한 수준이 사용자의 요구를 충족하는지 확인합니다.
-
동적 노력 고려: 작업 복잡성이나 사용자 선호도에 따라 노력을 조정합니다. 간단한 쿼리는 낮은 노력을 보증할 수 있지만 복잡한 분석은 높은 노력의 이점을 얻습니다.