Skip to content

Модели, поддерживающие режим мышления, возвращают поле thinking, которое отделяет след их рассуждений от итогового ответа.

Используйте эту возможность для аудита шагов модели, анимации процесса мышления модели в пользовательском интерфейсе или полного скрытия следа рассуждений, если вам нужен только итоговый ответ.

Поддерживаемые модели

Включение режима мышления в API-запросах

Установите поле think в запросах чата или генерации. Большинство моделей принимают логические значения (true/false) или уровни (low, medium, high, max), где max запрашивает максимальный уровень режима мышления.

Вместо этого GPT-OSS ожидает одно из значений low, medium или high для настройки длины следа рассуждений.

Поле message.thinking (для конечной точки чата) или thinking (для конечной точки генерации) содержит след рассуждений, в то время как message.content / response хранит итоговый ответ.

cURL

```shell
curl http://localhost:11434/api/chat -d '{
  "model": "qwen3",
  "messages": [{
    "role": "user",
    "content": "How many letter r are in strawberry?"
  }],
  "think": true,
  "stream": false
}'
```

Python

```python
from ollama import chat

response = chat(
  model='qwen3',
  messages=[{'role': 'user', 'content': 'How many letter r are in strawberry?'}],
  think=True,
  stream=False,
)

print('Thinking:\n', response.message.thinking)
print('Answer:\n', response.message.content)
```

JavaScript

```javascript
import ollama from 'ollama'

const response = await ollama.chat({
  model: 'deepseek-r1',
  messages: [{ role: 'user', content: 'How many letter r are in strawberry?' }],
  think: true,
  stream: false,
})

console.log('Thinking:\n', response.message.thinking)
console.log('Answer:\n', response.message.content)
```

Примечание

Для GPT-OSS требуется, чтобы поле think было установлено в одно из значений "low", "medium" или "high". Передача true/false для этой модели игнорируется.

Потоковая передача следа рассуждений

Потоковые передачи режима мышления чередуют токены рассуждений перед токенами ответа. Определите первый фрагмент thinking для отображения секции «мышление», затем переключитесь на итоговый ответ, как только появится message.content.

Python

```python
from ollama import chat

stream = chat(
  model='qwen3',
  messages=[{'role': 'user', 'content': 'What is 17 × 23?'}],
  think=True,
  stream=True,
)

in_thinking = False

for chunk in stream:
  if chunk.message.thinking and not in_thinking:
    in_thinking = True
    print('Thinking:\n', end='')

  if chunk.message.thinking:
    print(chunk.message.thinking, end='')
  elif chunk.message.content:
    if in_thinking:
      print('\n\nAnswer:\n', end='')
      in_thinking = False
    print(chunk.message.content, end='')

```

JavaScript

```javascript
import ollama from 'ollama'

async function main() {
  const stream = await ollama.chat({
    model: 'qwen3',
    messages: [{ role: 'user', content: 'What is 17 × 23?' }],
    think: true,
    stream: true,
  })

  let inThinking = false

  for await (const chunk of stream) {
    if (chunk.message.thinking && !inThinking) {
      inThinking = true
      process.stdout.write('Thinking:\n')
    }

    if (chunk.message.thinking) {
      process.stdout.write(chunk.message.thinking)
    } else if (chunk.message.content) {
      if (inThinking) {
        process.stdout.write('\n\nAnswer:\n')
        inThinking = false
      }
      process.stdout.write(chunk.message.content)
    }
  }
}

main()
```

Краткий справочник по CLI

  • Включите режим мышления для одного запуска: ollama run deepseek-r1 --think "Where should I visit in Lisbon?"
  • Отключите режим мышления: ollama run deepseek-r1 --think=false "Summarize this article"
  • Скройте след рассуждений, продолжая использовать модель с режимом мышления: ollama run deepseek-r1 --hidethinking "Is 9.9 bigger or 9.11?"
  • В интерактивных сессиях переключайте режим с помощью команд /set think или /set nothink.
  • GPT-OSS принимает только уровни: ollama run gpt-oss --think=low "Draft a headline" (замените low на medium или high при необходимости).

Примечание

Режим мышления включен по умолчанию в CLI и API для поддерживаемых моделей.