0Pricing
AI Prompt Engineering · Урок

Чем отличаются модели рассуждений

Внутренняя цепочка рассуждений и стандартные модели: что меняется для автора запроса.

«Чем отличаются модели рассуждений» — бесплатный урок AI Prompt Engineering на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения AI Prompt Engineering, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс AI Prompt Engineering содержит 4 уроков всего.

Что такое модели рассуждений

Модели рассуждений — это LLM, специально обученные и настроенные на длительное внутреннее обдумывание перед формированием ответа. К ним относятся модели серии o1/o3/o4 от OpenAI и Claude от Anthropic с включённым расширенным мышлением.

В отличие от обычных моделей, которые напрямую генерируют текст из вашего запроса токен за токеном, модели рассуждений сначала создают длинную внутреннюю цепочку рассуждений, а затем кратко излагают её в итоговом ответе.

Обычные и рассуждающие модели: что вы видите

С точки зрения пользователя программного интерфейса разница выглядит так:

  • Обычная модель: Вход → Выход (быстро, напрямую)
  • Модель рассуждений: Вход → [внутреннее мышление, скрытое или передаваемое потоком] → Выход (медленнее, но точнее в сложных задачах)

Процесс мышления — это личный черновик модели. В нём могут содержаться ошибочные ходы, самокоррекции и промежуточные вычисления, которые никогда не появляются в итоговом ответе.

Серия o от OpenAI: поведение программного интерфейса

Модели o1/o3/o4 от OpenAI обрабатывают мышление внутри — по умолчанию вы не видите токены рассуждений. В метаданных использования можно увидеть количество токенов мышления, но не их содержимое.

import openai

client = openai.OpenAI(api_key='sk-...')

# o3 — reasoning happens internally
response = client.chat.completions.create(
    model='o3',
    messages=[
        {'role': 'user', 'content': 'Solve: A train leaves Chicago at 9am going 60mph. Another leaves NYC at 10am going 80mph. If the distance is 790 miles, when do they meet?'}
    ],
    # reasoning_effort='high'  # Optional: 'low', 'medium', 'high'
)

print(response.choices[0].message.content)
# Check how many tokens were used for thinking:
print('Input tokens:', response.usage.prompt_tokens)
print('Output tokens:', response.usage.completion_tokens)

Расширенное мышление Claude: поведение программного интерфейса

Claude от Anthropic предоставляет токены расширенного мышления через программный интерфейс. Вы можете применять stream и наблюдать за процессом рассуждений модели в реальном времени. Содержимое мышления появляется перед итоговым ответом.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')

# Enable extended thinking
response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=16000,
    thinking={
        'type': 'enabled',
        'budget_tokens': 10000  # Max tokens for thinking
    },
    messages=[{
        'role': 'user',
        'content': 'What is the 100th prime number?'
    }]
)

# Response contains both thinking blocks and text blocks
for block in response.content:
    if block.type == 'thinking':
        print('THINKING:', block.thinking[:200], '...')
    elif block.type == 'text':
        print('ANSWER:', block.text)

Передача токенов мышления потоком

Вы можете в реальном времени применять stream для передачи расширенного мышления и наблюдать, как разворачиваются рассуждения модели. Это полезно для взаимодействия с пользователем: можно показывать анимацию «размышления» или позволить опытным пользователям наблюдать за процессом рассуждений.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')

def stream_with_thinking(question):
    with client.messages.stream(
        model='claude-opus-4-5',
        max_tokens=16000,
        thinking={'type': 'enabled', 'budget_tokens': 8000},
        messages=[{'role': 'user', 'content': question}]
    ) as stream:
        current_block_type = None
        for event in stream:
            # Track which block type we're in
            if hasattr(event, 'type'):
                if 'thinking' in str(event.type):
                    current_block_type = 'thinking'
                elif 'text' in str(event.type):
                    current_block_type = 'text'
            # Print text delta
            if hasattr(event, 'delta') and hasattr(event.delta, 'text'):
                prefix = '[THINK] ' if current_block_type == 'thinking' else '[ANS] '
                print(prefix + event.delta.text, end='', flush=True)

stream_with_thinking('Explain why P != NP is unproven.')

Что происходит внутри: черновик

Внутреннее мышление модели — это черновик, в котором она может:

  • Изучать несколько подходов, прежде чем остановиться на одном
  • Выполнять вычисления и проверять их
  • Выявлять собственные ошибки и возвращаться назад
  • Учитывать крайние случаи
  • Планировать многоэтапные решения

Именно поэтому модели рассуждений значительно превосходят обычные модели в сложной математике, программировании и стратегическом планировании: по сути, перед написанием ответа они проводят обзор литературы.

budget_tokens: Управление глубиной рассуждений

budget_tokens (Claude) или reasoning_effort (OpenAI) определяет, насколько глубоко рассуждает модель. Более глубокое рассуждение повышает точность при решении сложных задач, но увеличивает стоимость и задержку.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')

def ask_with_budget(question, budget):
    r = client.messages.create(
        model='claude-opus-4-5',
        max_tokens=budget + 2048,  # must exceed budget_tokens
        thinking={'type': 'enabled', 'budget_tokens': budget},
        messages=[{'role': 'user', 'content': question}]
    )
    thinking_tokens = sum(
        len(b.thinking.split()) * 1.3  # rough estimate
        for b in r.content if b.type == 'thinking'
    )
    answer = next(b.text for b in r.content if b.type == 'text')
    return answer, int(thinking_tokens)

# Same hard question with different budgets
q = 'Prove that the square root of 2 is irrational.'
ans_small, tok_small = ask_with_budget(q, 1024)
ans_large, tok_large = ask_with_budget(q, 8000)
print(f'Small budget ({tok_small} thinking tokens): {ans_small[:100]}')
print(f'Large budget ({tok_large} thinking tokens): {ans_large[:100]}')

Температура и модели рассуждений

Модели рассуждений иначе реагируют на настройки температуры:

  • Для моделей серии o от OpenAI температура по умолчанию равна 1, и изменить её удаётся не всегда
  • Для расширенного рассуждения Claude во время рассуждения температура обычно устанавливается равной 1

Не пытайтесь управлять поведением моделей рассуждений с помощью температуры — вместо этого используйте budget_tokens или reasoning_effort.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')

# For Claude with extended thinking, temperature=1 is the default
# and best practice
response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=10000,
    temperature=1,  # Required to be 1 when extended thinking is enabled
    thinking={
        'type': 'enabled',
        'budget_tokens': 5000
    },
    messages=[{
        'role': 'user',
        'content': 'Write a Python function to find all prime numbers up to N.'
    }]
)
print(response.content[-1].text[:300])

Сравнение производительности: где модели рассуждений выигрывают

Модели рассуждений особенно заметно превосходят обычные модели в следующих задачах:

  • Олимпиадная математика: AIME, AMC (o3 приближается к уровню эксперта-человека)
  • Сложное программирование: соревновательное программирование (Codeforces)
  • Научное рассуждение: GPQA (наука на уровне аспирантуры)
  • Многошаговая логика: задачи, требующие последовательных выводов

В простых задачах (грамматика, составление краткого содержания, фактические вопросы и ответы) обычные модели показывают такой же результат при стоимости в 10–100 раз ниже.

Реальность задержки

Модели рассуждений работают медленно. Решение сложной задачи при высокой интенсивности рассуждений может занимать 30–60 секунд. Планируйте пользовательский интерфейс с учётом этого:

  • Показывайте индикаторы прогресса «идёт рассуждение…»
  • Используйте потоковую выдачу, чтобы показывать доступные промежуточные результаты
  • Не используйте модели рассуждений для чатов в реальном времени, где важна малая задержка
  • Заранее вычисляйте результаты моделей рассуждений для известных сложных вопросов
import time
import anthropic

client = anthropic.Anthropic(api_key='sk-ant-...')

def timed_reasoning_call(question, budget):
    start = time.time()
    response = client.messages.create(
        model='claude-opus-4-5',
        max_tokens=budget + 2000,
        thinking={'type': 'enabled', 'budget_tokens': budget},
        messages=[{'role': 'user', 'content': question}]
    )
    elapsed = time.time() - start
    answer = next(b.text for b in response.content if b.type == 'text')
    print(f'Latency: {elapsed:.1f}s | Answer: {answer[:100]}')
    return answer

# Hard problem — expect 20-45 seconds
timed_reasoning_call(
    'Design a database schema for a multi-tenant SaaS billing system.',
    budget=8000
)

Модели рассуждений и системные запросы

Модели рассуждений реагируют на системные запросы иначе, чем обычные модели. Поскольку перед ответом они внутренне обдумывают задачу, они надёжнее выполняют сложные многошаговые инструкции из системных запросов.

Однако очень длинные и чрезмерно ограничивающие системные запросы могут вступать в конфликт с внутренним рассуждением. Рекомендуемый подход: для моделей рассуждений делайте системные запросы краткими — задавайте роль и формат вывода, а стратегию оставляйте на усмотрение внутреннего рассуждения модели.

Проверка знаний: мышление модели рассуждений

В чём заключается ключевое различие между тем, что предоставляет автор запроса, и тем, что происходит внутри модели рассуждений?

Повторение: чем отличаются модели рассуждений

Модели рассуждений, такие как o1/o3 и Claude с расширенным рассуждением, перед ответом формируют внутреннюю цепочку рассуждений. Автор запроса предоставляет задачу; модель внутренне обдумывает её, изучает разные подходы и исправляет собственные ошибки, после чего выдаёт окончательный ответ. Глубину рассуждений можно контролировать с помощью budget_tokens (Claude) или reasoning_effort (OpenAI). Модели рассуждений особенно хорошо справляются со сложной математикой, программированием и многошаговой логикой, но стоят в 10–100 раз дороже и работают в 10–100 раз медленнее обычных моделей. Используйте потоковую выдачу и индикаторы прогресса, чтобы управлять задержкой в пользовательском интерфейсе.

Часто задаваемые вопросы

Урок «Чем отличаются модели рассуждений» бесплатный?

Да — полный текст урока «Чем отличаются модели рассуждений» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс AI Prompt Engineering, подпишись на CoddyKit PRO. Курс AI Prompt Engineering содержит 4 уроков всего.

Чему я научусь в уроке «Чем отличаются модели рассуждений»?

Внутренняя цепочка рассуждений и стандартные модели: что меняется для автора запроса. Ты практикуешь AI Prompt Engineering с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать AI Prompt Engineering?

Предыдущий опыт не требуется. AI Prompt Engineering на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Чем отличаются модели рассуждений»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке AI Prompt Engineering?

Да. Каждый урок AI Prompt Engineering включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Чем отличаются модели рассуждений
  2. Эффективные запросы для расширенного мышления
  3. Когда использовать модели рассуждений, а когда стандартные
  4. Компромиссы между стоимостью и задержкой
← Назад к AI Prompt Engineering