

# 추론 모델 평가
<a name="nova-reasoning-model-evaluation"></a>

## 개요
<a name="nova-reasoning-overview"></a>

추론 모델 지원을 사용하면 최종 응답을 생성하기 전에 명시적인 내부 추론을 수행하는 추론 가능 Nova 모델을 사용하여 평가할 수 있습니다. 이 기능은 `reasoning_effort` 파라미터를 통한 API 수준 제어를 사용하여 추론 기능을 동적으로 활성화하거나 비활성화함으로써 복잡한 분석 태스크에 대한 응답 품질을 개선할 수 있습니다.

**지원되는 모델**
+ amazon.nova-2-lite-v1:0:256k

## 레시피 구성
<a name="nova-reasoning-recipe"></a>

레시피의 `inference` 섹션에 `reasoning_effort` 파라미터를 추가하여 추론을 활성화합니다.

```
run:  
  name: reasoning-eval-job-name                          # [MODIFIABLE] Unique identifier for your evaluation job  
  model_type: amazon.nova-2-lite-v1:0:256k               # [FIXED] Must be a reasoning-supported model  
  model_name_or_path: nova-lite-2/prod                   # [FIXED] Path to model checkpoint or identifier  
  replicas: 1                                            # [MODIFIABLE] Number of replicas for SageMaker Training job  
  data_s3_path: ""                                       # [MODIFIABLE] Leave empty for SageMaker Training job; optional for SageMaker HyperPod job  
  output_s3_path: ""                                     # [MODIFIABLE] Output path for SageMaker HyperPod job (not compatible with SageMaker Training jobs)  
  
evaluation:  
  task: mmlu                                             # [MODIFIABLE] Evaluation task  
  strategy: zs_cot                                       # [MODIFIABLE] Evaluation strategy  
  metric: accuracy                                       # [MODIFIABLE] Metric calculation method  
  
inference:  
  reasoning_effort: high                                 # [MODIFIABLE] Enables reasoning mode; options: low/high or null to disable  
  max_new_tokens: 32768                                  # [MODIFIABLE] Maximum tokens to generate, recommended value when reasoning_effort set to high  
  top_k: -1                                              # [MODIFIABLE] Top-k sampling parameter  
  top_p: 1.0                                             # [MODIFIABLE] Nucleus sampling parameter  
  temperature: 0                                         # [MODIFIABLE] Sampling temperature (0 = deterministic)
```

## reasoning\_effort 파라미터 사용
<a name="nova-reasoning-parameter"></a>

`reasoning_effort` 파라미터는 추론 가능 모델의 추론 동작을 제어합니다.

### 사전 조건
<a name="nova-reasoning-prerequisites"></a>
+ **모델 호환성** - `model_type`이 추론 가능 모델(현재 `amazon.nova-2-lite-v1:0:256k`)을 지정하는 경우에만 `reasoning_effort`를 설정함
+ **오류 처리** - 지원되지 않는 모델과 함께 `reasoning_effort`를 사용하면 `ConfigValidationError: "Reasoning mode is enabled but model '{model_type}' does not support reasoning. Please use a reasoning-capable model or disable reasoning mode."`에서 실패함

### 사용 가능한 옵션
<a name="nova-reasoning-options"></a>


| 옵션 | 동작 | 토큰 제한 | 사용 사례: | 
| --- | --- | --- | --- | 
| null(기본값) | 추론 모드 비활성화 | 해당 사항 없음 | 추론 오버헤드가 없는 표준 평가 | 
| low | 제약 조건과의 추론 활성화 | 내부 추론을 위한 4,000개의 토큰 | 간결한 추론이 필요한 시나리오, 속도와 비용에 맞게 최적화 | 
| 높음 | 제약 조건 없이 추론 활성화 | 내부 추론에 대한 토큰 제한 없음 | 광범위한 분석 및 단계별 추론이 필요한 복잡한 문제 | 


| 훈련 방법 | 사용 가능한 옵션 | 구성 방법 | 
| --- | --- | --- | 
| 지도 미세 조정(SFT) | 높음 또는 꺼짐만 | reasoning\_enabled: true(high) 또는 reasoning\_enabled: false(off) 사용 | 
| 강화 미세 조정(RFT) | 낮음, 높음 또는 꺼짐 | reasoning\_effort: low 또는 reasoning\_effort: high를 사용합니다. 비활성화하려면 필드를 생략합니다. | 
| 평가 | 낮음, 높음 또는 꺼짐 | reasoning\_effort: low 또는 reasoning\_effort: high를 사용합니다. 비활성화하려면 null을 사용합니다. | 

### 추론을 활성화하는 경우
<a name="nova-reasoning-when-to-enable"></a>

**추론 모드(`low` 또는 `high`)를 사용하는 경우**
+ 복잡한 문제 해결 태스크(수학, 논리적 퍼즐, 코딩)
+ 중간 추론이 필요한 다단계 분석 질문
+ 자세한 설명 또는 단계별 사고로 정확도가 향상되는 태스크
+ 응답 품질이 속도보다 우선되는 시나리오

**비추론 모드(`null` 또는 파라미터 생략)를 사용하는 경우**
+ 간단한 Q&A 또는 실제 쿼리
+ 창의적 쓰기 태스크
+ 더 빠른 응답 시간이 중요한 경우
+ 추론 오버헤드를 제외해야 하는 성능 벤치마킹
+ 추론으로 태스크 성능이 개선되지 않는 경우 비용 최적화

### 문제 해결
<a name="nova-reasoning-troubleshooting"></a>

**오류: 'Reasoning mode is enabled but model does not support reasoning'**

**원인**: `reasoning_effort` 파라미터가 null이 아닌 값으로 설정되었지만 지정된 `model_type`에서 추론을 지원하지 않습니다.

**​해결 방법:**
+ 모델 유형이 `amazon.nova-2-lite-v1:0:256k`인지 확인
+ 다른 모델을 사용하는 경우 추론 가능 모델로 전환하거나 레시피에서 `reasoning_effort` 파라미터를 제거합니다.