이 페이지는 영어 문서의 번역입니다. 명령, 식별자, 예제는 그대로입니다. 런타임 7.24.4 · SDK 2.6.7. 영어 원문
모델 effort(사고 / 변형)
상태: 활성
범위: 현재 상태
최종 검토: 2026-07-18
담당: ax-code 런타임
AX Code는 effort(사고 수준이라고도 합니다)로 활성 모델이 얼마나 깊이 추론할지를 제어합니다. effort는 작업 모드가 아니며, 배치 모드도 아닙니다.
| 축 | 질문 | 예 |
|---|---|---|
| 모델 | 어떤 모델입니까? | Sonnet, Opus, GPT, 로컬 Qwen |
| effort | 얼마나 깊이 생각해야 합니까? | Auto, Fast, Balanced, Deep, Max |
| 작업 모드 | 작업은 어떻게 구성됩니까? | Agent, Council, Arena |
| 배치 | 추론은 어디에서 실행됩니까? | local, cloud, hybrid |
작업 모드와 배치 모드는 실행 모드를 보십시오.
전송 형식
런타임은 여전히 공급자 카탈로그의 OpenCode 호환 변형 키를 저장하고 보냅니다(예: low, medium, high, xhigh, max). UI 레이블은 표시 계층일 뿐입니다.
| UI 레이블 | 일반적인 전송 키 |
|---|---|
| Auto | (없음 — 모델 / 정책 기본값) |
| Off | none |
| Minimal | minimal |
| Fast | low |
| Balanced | medium |
| Deep | high |
| Max | xhigh, max |
사용할 수 있는 키는 모델마다 다릅니다. 변형이 없는 모델은 effort 제어를 숨깁니다.
공급자 지원
지원되는 모델의 effort 수준은 다음 공급자에서 자동으로 만들어집니다.
| 공급자 | 메커니즘 | 수준 |
|---|---|---|
| Anthropic (Claude) | 현재 모델의 effort, 레거시 모델의 thinking 예산 |
Fast, Balanced, Deep, Max(모델에 따라 다름) |
| OpenAI (GPT-5.x) | reasoningEffort |
Fast, Balanced, Deep |
| Google (Gemini 3.x) | thinkingConfig.thinkingLevel |
Fast, Deep(3.1은 Balanced를 추가) |
| OpenAI 호환 엔드포인트 | reasoningEffort |
Fast, Balanced, Deep |
| Venice | reasoningEffort |
Fast, Balanced, Deep |
| Claude Code CLI | --effort |
Fast, Balanced, Deep, Max |
| Codex CLI | model_reasoning_effort 구성 덮어쓰기 |
Minimal, Fast, Balanced, Deep, Max |
| Grok Build CLI | --reasoning-effort |
Fast, Balanced, Deep |
effort API가 검증되지 않았거나 호환되지 않는 공급자(Groq의 호스트형 API, OpenRouter, DeepSeek/Alibaba/MiniMax/GLM/Mistral 계열, 지원되지 않는 CLI 공급자, 서드파티 게이트웨이)는 내장 수준을 제공하지 않습니다. /effort이 조용히 실패하는 대신 이 사실을 설명합니다. 공급자가 지원하는 옵션 형태를 문서화하면 provider.<id>.models.<model>.variants 아래, ax-code.json 안에 사용자 지정 수준을 정의합니다.
effort를 설정하는 방법
TUI
- 순환:
ctrl+t(키 바인딩variant_cycle) — Auto에서 사용 가능한 각 수준을 지나 다시 Auto로 이동합니다 - 선택기:
/effort(별칭/variant,/thinking). 수준이 없는 모델에서는 설명 대화 상자를 엽니다 - 상태: 모델이 수준을 지원하면 프롬프트 바닥글에 현재 effort 칩이 보입니다. 보낸 메시지는 메타데이터 행에 자신의 effort 레이블을 보여 줍니다
- CLI:
ax-code run --variant high
데스크톱
- 모델 선택기 옆의 사고 제어
- 키보드 순환(모델 변형 순환과 같은 키 바인딩 경로)
- 레이블은 TUI와 같은 친숙한 대응을 사용합니다
기본값과 자동 동작
- Auto는 그 모델에 대한 명시적인 사용자 덮어쓰기가 없음을 뜻합니다.
- Auto가 활성일 때 ReasoningPolicy는 balanced 기준선(
medium/ 공급자default변형)을 적용합니다. 그래서 모델은 플래그를 빼먹지 않고 실제로 사고를 켜거나 effort 플래그를 전달합니다. - 이것은
reasoning: true가 있는 모델과, effort를 변형으로만 노출하는 공급자 모두에 적용됩니다. 예를 들어 Claude Code, Codex, Grok Build CLI는 출력이 AI SDK에 보이지 않아reasoning: false를 보고합니다. - 정책은 계획 모드, 자율 모드, 고위험 프롬프트에서, 그리고 해당 신호가 제공될 때 반복된 실패, 높은 불확실성, 넓은 영향 범위에서 깊이를 Deep으로 올릴 수 있습니다.
- 사용자가 명시적인 effort를 고르면 이후 턴에서는 그 덮어쓰기가 이깁니다. 정책이 그것에 맞서지 않습니다. 이미 추론,
effort,thinking를 설정한 구성이나 에이전트 옵션도 그대로 둡니다. - effort는 로컬 모델 기본 설정(TUI 상태 디렉터리의
model.json)에 모델마다 기억됩니다.
구성
에이전트에 기본값을 고정합니다.
{
"agent": {
"plan": {
"variant": "high"
}
}
}
공급자 변형은 provider.<id>.models.<model>.variants 아래, ax-code.json 안에서 정의하거나 끕니다(OpenCode와 같은 형태).
모범 사례
- 일상 작업에는 Auto 또는 Balanced/Deep를 선호합니다. Max는 어려운 디버깅이나 아키텍처에 아껴 둡니다.
- Agent, Council, Arena와 경쟁하는 네 번째 전역 “lite / xfast / max” 모드를 만들지 마십시오.
- UI 문구에서는 모델, effort, 작업 모드를 서로 다른 제어로 유지합니다.
- 모델을 바꾸면, 저장된 effort가 그 모델에 유효하지 않을 때 Auto로 돌아갑니다.
관련 문서
- 실행 모드 — Agent / Council / Arena와 하이브리드 배치
- 지원 공급자 — 모델을 노출하는 공급자
- OpenCode 모델 변형: https://opencode.ai/docs/models/