Семейство моделей Claude
Выбирайте подходящую модель с учётом стоимости, скорости и возможностей
«Семейство моделей Claude» — бесплатный урок Claude Architect на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Claude Architect, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Claude Architect содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Meet the Model Family
Every Claude API request begins with one decision: which model? That single field sets your cost, your latency, and your intelligence ceiling for the whole call.
The current family spans three tiers:
- Opus — the most capable, for the hardest, long-horizon work.
- Sonnet — the best balance of speed and intelligence.
- Haiku — the fastest and cheapest, for simple high-volume tasks.
As a Claude Certified Architect, picking the right tier per workload is a core skill. Let's build the decision framework.
The model field is just a string
You select a model by passing its model ID as a string. The request also keeps no state — the model is stateless, so you send the full message history on every turn.
The exact ID strings matter. A typo (for example claude-sonnet-4.6 instead of claude-sonnet-4-6) returns a 404 not_found_error, not a silent fallback.
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello, Claude"}],
)
print(response.content[0].text)Opus — top of the family
Claude Opus 4.8 (claude-opus-4-8) is the most capable model. Reach for it when correctness on a hard problem outweighs cost and speed:
- Large multi-step refactors and overnight coding runs.
- Deep research and long-horizon agentic loops.
- Complex reasoning where a cheaper model would degrade quality.
It offers a 1M-token context window at standard pricing and up to 128K output tokens. Pricing: $5 / 1M input, $25 / 1M output.
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=64000,
thinking={"type": "adaptive"},
output_config={"effort": "high"},
messages=[{"role": "user", "content": "Refactor this service end to end."}],
)Sonnet — the balanced workhorse
Claude Sonnet 4.6 (claude-sonnet-4-6) is the best combination of speed and intelligence. It's the default choice for most production traffic:
- Chat, classification, content generation, extraction.
- Tool-heavy workflows that need fast turnaround.
- Anything where Opus would be overkill but Haiku might miss nuance.
It has a 1M-token context window and up to 64K output tokens. Pricing: $3 / 1M input, $15 / 1M output — cheaper than Opus on both ends.
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=8192,
messages=[{"role": "user", "content": "Classify this support ticket."}],
)Haiku — fast and cheap at scale
Claude Haiku 4.5 (claude-haiku-4-5) is the fastest and most cost-effective model. Use it for simple, high-volume tasks where latency and price dominate:
- Lightweight classification and routing.
- Short summaries and formatting fixes.
- Sub-agents doing narrow, well-scoped work.
Its context window is 200K tokens (smaller than the 1M of Opus and Sonnet), with up to 64K output tokens. Pricing: $1 / 1M input, $5 / 1M output — the cheapest tier.
response = client.messages.create(
model="claude-haiku-4-5",
max_tokens=256,
messages=[{"role": "user", "content": "Is this email spam? Answer yes or no."}],
)The three-way tradeoff
Picking a model is always a tradeoff across three axes:
- Capability — Opus > Sonnet > Haiku for hard reasoning.
- Speed — Haiku is fastest, Opus is most deliberate.
- Cost — Haiku ($1/$5) < Sonnet ($3/$15) < Opus ($5/$25) per 1M tokens.
The architect's instinct: start at the cheapest tier that meets the quality bar, then move up only where evals show you need it. Don't reflexively default everything to Opus — you'll burn budget on tasks Sonnet or Haiku handle just as well.
Match the tier to the task
A practical routing heuristic for a multi-stage system:
- Coordinator / planner doing complex decomposition → Opus.
- Main worker handling tool calls and synthesis → Sonnet.
- Narrow sub-agents (classify, grep-and-summarize) → Haiku.
This mirrors how production agents stay affordable: spend Opus-level intelligence only where the decision is hard, and push routine, parallel work down to cheaper models.
Don't switch models mid-conversation
Models are cache-scoped. Prompt caching is a prefix match, and the cache is keyed per model — so switching the model string mid-conversation invalidates the entire cache and you reprocess everything at full price.
The architect-grade pattern: keep one model on the main loop, and if a sub-task needs a cheaper model, spawn a sub-agent for it rather than swapping the model on the live thread.
# Main loop stays on Opus; cheap discovery work goes to a Haiku sub-agent
main = client.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
messages=history, # cached prefix preserved
)
scout = client.messages.create(
model="claude-haiku-4-5", # separate call, separate cache
max_tokens=1024,
messages=[{"role": "user", "content": "Summarize these 5 files."}],
)Control cost with effort, not model swaps
You don't always have to change the model to change cost. On Opus 4.8 and Sonnet 4.6, the effort parameter tunes how much the model thinks and spends, inside output_config:
low— terse, fewer tool calls, latency-friendly.high— the default; thorough.max— Opus-tier only, when correctness beats cost.
Pair it with adaptive thinking (thinking={"type": "adaptive"}) and let the model decide how much to reason per request. Note: budget_tokens is removed on these models — use adaptive thinking instead.
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=8192,
thinking={"type": "adaptive"},
output_config={"effort": "low"}, # cut cost without dropping a tier
messages=[{"role": "user", "content": "Draft a release note."}],
)Mind the context window and output cap
Capability isn't only intelligence — it's also how much the model can hold and produce:
- Opus 4.8 / Sonnet 4.6: 1M-token context window.
- Haiku 4.5: 200K-token context window.
If a workload must reason over a very large codebase or document set in a single call, Haiku's smaller window may rule it out regardless of cost. Also stream any request with large max_tokens (above ~16K) — non-streaming calls risk SDK HTTP timeouts.
with client.messages.stream(
model="claude-opus-4-8",
max_tokens=128000, # large output -> must stream
messages=[{"role": "user", "content": "Generate the full migration plan."}],
) as stream:
message = stream.get_final_message()Batch API: a cost lever, not a model tier
Cost optimization isn't only about model choice. The Message Batches API runs requests at 50% off, within a window of up to 24 hours.
The catch — it's not for blocking or time-sensitive work: there is no latency SLA, and multi-turn tool calling isn't supported. Use it for overnight reports and audits; never for a pre-merge check or anything a user is waiting on. For those, pick a fast model (often Haiku or Sonnet) on the standard API instead.
batch = client.messages.batches.create(
requests=[
{"custom_id": "row-1", "params": {
"model": "claude-haiku-4-5",
"max_tokens": 256,
"messages": [{"role": "user", "content": "Classify row 1"}],
}},
],
)Quick Check: choosing a model
A scenario-style question on matching the model to the constraint.
Recap: choosing across the family
Key takeaways for the exam and for production:
- Opus 4.8 ($5/$25, 1M context) — hardest reasoning, long-horizon agents; use sparingly.
- Sonnet 4.6 ($3/$15, 1M context) — the balanced default for most traffic.
- Haiku 4.5 ($1/$5, 200K context) — fast, cheap, high-volume simple tasks.
- Start at the cheapest tier that meets the quality bar; move up only where evals demand it.
- Tune cost with effort and adaptive thinking before swapping tiers.
- Don't switch models mid-conversation — it invalidates the cache; spawn a cheaper sub-agent instead.
- Use the Batches API (50% off) for non-blocking jobs only — never for time-sensitive checks.
Часто задаваемые вопросы
Урок «Семейство моделей Claude» бесплатный?
Да — полный текст урока «Семейство моделей Claude» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Claude Architect, подпишись на CoddyKit PRO. Курс Claude Architect содержит 4 уроков всего.
Чему я научусь в уроке «Семейство моделей Claude»?
Выбирайте подходящую модель с учётом стоимости, скорости и возможностей Ты практикуешь Claude Architect с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Claude Architect?
Предыдущий опыт не требуется. Claude Architect на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Семейство моделей Claude»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Claude Architect?
Да. Каждый урок Claude Architect включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Семейство моделей Claude
- Анатомия запроса к API
- Причины остановки
- Токены, окна контекста и стоимость