chore(i18n): refresh uk translations
This commit is contained in:
parent
5634b0fab8
commit
192c7aeb99
File diff suppressed because it is too large
Load Diff
@ -1,36 +1,36 @@
|
||||
---
|
||||
read_when:
|
||||
- Вам потрібен єдиний API-ключ для багатьох LLM
|
||||
- Вам потрібен єдиний ключ API для багатьох LLM
|
||||
- Ви хочете запускати моделі через OpenRouter в OpenClaw
|
||||
- Ви хочете використовувати OpenRouter для генерації зображень
|
||||
- Ви хочете використовувати OpenRouter для генерації відео
|
||||
summary: Використовуйте уніфікований API OpenRouter для доступу до багатьох моделей в OpenClaw
|
||||
title: OpenRouter
|
||||
x-i18n:
|
||||
generated_at: "2026-05-04T00:14:04Z"
|
||||
generated_at: "2026-05-04T21:16:48Z"
|
||||
model: gpt-5.5
|
||||
provider: openai
|
||||
source_hash: f6b7299408aa0de7530e2248c7fa5dae8c09095e2d20a0e9d12a64cab83966fc
|
||||
source_hash: b2876669c6fcc958ac13c19930cd23977b8ec27ae57069d9231932cc13c75244
|
||||
source_path: providers/openrouter.md
|
||||
workflow: 16
|
||||
---
|
||||
|
||||
OpenRouter надає **уніфікований API**, який спрямовує запити до багатьох моделей через одну
|
||||
кінцеву точку й ключ API. Він сумісний з OpenAI, тому більшість SDK OpenAI працюють після зміни базової URL-адреси.
|
||||
OpenRouter надає **уніфікований API**, який маршрутизує запити до багатьох моделей за одним
|
||||
endpoint і API-ключем. Він сумісний з OpenAI, тому більшість OpenAI SDK працюють після перемикання базового URL.
|
||||
|
||||
## Початок роботи
|
||||
|
||||
<Steps>
|
||||
<Step title="Отримайте свій ключ API">
|
||||
Створіть ключ API на [openrouter.ai/keys](https://openrouter.ai/keys).
|
||||
<Step title="Get your API key">
|
||||
Створіть API-ключ на [openrouter.ai/keys](https://openrouter.ai/keys).
|
||||
</Step>
|
||||
<Step title="Запустіть onboarding">
|
||||
<Step title="Run onboarding">
|
||||
```bash
|
||||
openclaw onboard --auth-choice openrouter-api-key
|
||||
```
|
||||
</Step>
|
||||
<Step title="(Необов’язково) Перейдіть на конкретну модель">
|
||||
Onboarding за замовчуванням використовує `openrouter/auto`. Виберіть конкретну модель пізніше:
|
||||
<Step title="(Optional) Switch to a specific model">
|
||||
Початкове налаштування типово використовує `openrouter/auto`. Пізніше виберіть конкретну модель:
|
||||
|
||||
```bash
|
||||
openclaw models set openrouter/<provider>/<model>
|
||||
@ -59,16 +59,16 @@ OpenRouter надає **уніфікований API**, який спрямов
|
||||
доступних провайдерів і моделей див. у [/concepts/model-providers](/uk/concepts/model-providers).
|
||||
</Note>
|
||||
|
||||
Вбудовані приклади fallback:
|
||||
Приклади вбудованого резервного варіанта:
|
||||
|
||||
| Посилання на модель | Примітки |
|
||||
| --------------------------------- | ------------------------------------- |
|
||||
| Посилання на модель | Примітки |
|
||||
| --------------------------------- | ---------------------------------- |
|
||||
| `openrouter/auto` | Автоматична маршрутизація OpenRouter |
|
||||
| `openrouter/moonshotai/kimi-k2.6` | Kimi K2.6 через MoonshotAI |
|
||||
| `openrouter/moonshotai/kimi-k2.6` | Kimi K2.6 через MoonshotAI |
|
||||
|
||||
## Генерація зображень
|
||||
|
||||
OpenRouter також може забезпечувати інструмент `image_generate`. Використовуйте модель зображень OpenRouter у `agents.defaults.imageGenerationModel`:
|
||||
OpenRouter також може забезпечувати роботу інструмента `image_generate`. Використовуйте модель зображень OpenRouter у `agents.defaults.imageGenerationModel`:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -84,11 +84,11 @@ OpenRouter також може забезпечувати інструмент `
|
||||
}
|
||||
```
|
||||
|
||||
OpenClaw надсилає запити зображень до image API чат-завершень OpenRouter із `modalities: ["image", "text"]`. Моделі зображень Gemini отримують підтримувані підказки `aspectRatio` і `resolution` через `image_config` OpenRouter. Використовуйте `agents.defaults.imageGenerationModel.timeoutMs` для повільніших моделей зображень OpenRouter; параметр `timeoutMs` інструмента `image_generate` для окремого виклику все одно має пріоритет.
|
||||
OpenClaw надсилає запити зображень до OpenRouter chat completions image API з `modalities: ["image", "text"]`. Моделі зображень Gemini отримують підтримувані підказки `aspectRatio` і `resolution` через `image_config` OpenRouter. Використовуйте `agents.defaults.imageGenerationModel.timeoutMs` для повільніших моделей зображень OpenRouter; параметр `timeoutMs` інструмента `image_generate` для окремого виклику все одно має пріоритет.
|
||||
|
||||
## Генерація відео
|
||||
|
||||
OpenRouter також може забезпечувати інструмент `video_generate` через свій асинхронний API `/videos`. Використовуйте відеомодель OpenRouter у `agents.defaults.videoGenerationModel`:
|
||||
OpenRouter також може забезпечувати роботу інструмента `video_generate` через свій асинхронний API `/videos`. Використовуйте модель відео OpenRouter у `agents.defaults.videoGenerationModel`:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -103,20 +103,20 @@ OpenRouter також може забезпечувати інструмент `
|
||||
}
|
||||
```
|
||||
|
||||
OpenClaw надсилає до OpenRouter завдання text-to-video та image-to-video, опитує
|
||||
OpenClaw надсилає завдання text-to-video та image-to-video до OpenRouter, опитує
|
||||
повернений `polling_url` і завантажує завершене відео з
|
||||
`unsigned_urls` OpenRouter або задокументованої кінцевої точки вмісту завдання.
|
||||
Еталонні зображення за замовчуванням надсилаються як зображення першого/останнього кадру; зображення,
|
||||
позначені `reference_image`, надсилаються як вхідні посилання OpenRouter. Вбудований
|
||||
типовий варіант `google/veo-3.1-fast` оголошує поточно підтримувані тривалості 4/6/8
|
||||
`unsigned_urls` OpenRouter або задокументованого endpoint вмісту завдання.
|
||||
Еталонні зображення типово надсилаються як зображення першого/останнього кадру; зображення,
|
||||
позначені `reference_image`, надсилаються як вхідні посилання OpenRouter. Вбудоване
|
||||
типове значення `google/veo-3.1-fast` оголошує поточно підтримувані тривалості 4/6/8
|
||||
секунд, роздільності `720P`/`1080P` і співвідношення сторін `16:9`/`9:16`.
|
||||
Video-to-video не зареєстровано для OpenRouter, оскільки upstream
|
||||
Video-to-video не зареєстровано для OpenRouter, тому що upstream
|
||||
API генерації відео наразі приймає текст і посилання на зображення.
|
||||
|
||||
## Перетворення тексту на мовлення
|
||||
|
||||
OpenRouter також можна використовувати як провайдер TTS через його сумісну з OpenAI
|
||||
кінцеву точку `/audio/speech`.
|
||||
OpenRouter також можна використовувати як провайдера TTS через його сумісний з OpenAI
|
||||
endpoint `/audio/speech`.
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -141,10 +141,10 @@ OpenRouter також можна використовувати як прова
|
||||
|
||||
## Автентифікація та заголовки
|
||||
|
||||
OpenRouter внутрішньо використовує Bearer-токен із вашим ключем API.
|
||||
OpenRouter використовує Bearer token із вашим API-ключем під капотом.
|
||||
|
||||
У реальних запитах OpenRouter (`https://openrouter.ai/api/v1`) OpenClaw також додає
|
||||
задокументовані OpenRouter заголовки атрибуції застосунку:
|
||||
задокументовані заголовки атрибуції застосунку OpenRouter:
|
||||
|
||||
| Заголовок | Значення |
|
||||
| ------------------------- | ------------------------------------------------------------------------------------------------------ |
|
||||
@ -153,16 +153,16 @@ OpenRouter внутрішньо використовує Bearer-токен із
|
||||
| `X-OpenRouter-Categories` | `cli-agent,cloud-agent,programming-app,creative-writing,writing-assistant,general-chat,personal-agent` |
|
||||
|
||||
<Warning>
|
||||
Якщо ви перенаправите провайдер OpenRouter на інший проксі або базову URL-адресу, OpenClaw
|
||||
**не** вставлятиме ці специфічні для OpenRouter заголовки або маркери кешу Anthropic.
|
||||
Якщо ви перенаправите провайдера OpenRouter на інший proxy або базовий URL, OpenClaw
|
||||
**не** вставляє ці специфічні для OpenRouter заголовки або маркери кешу Anthropic.
|
||||
</Warning>
|
||||
|
||||
## Розширена конфігурація
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="Кешування відповідей">
|
||||
Кешування відповідей OpenRouter вмикається явно. Увімкніть його для окремої моделі OpenRouter за допомогою
|
||||
параметрів моделі:
|
||||
<Accordion title="Response caching">
|
||||
Кешування відповідей OpenRouter вмикається явно. Увімкніть його для кожної моделі OpenRouter через
|
||||
параметри моделі:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -181,70 +181,72 @@ OpenRouter внутрішньо використовує Bearer-токен із
|
||||
}
|
||||
```
|
||||
|
||||
OpenClaw надсилає `X-OpenRouter-Cache: true` і, коли налаштовано,
|
||||
OpenClaw надсилає `X-OpenRouter-Cache: true` і, якщо налаштовано,
|
||||
`X-OpenRouter-Cache-TTL`. `responseCacheClear: true` примусово оновлює
|
||||
поточний запит і зберігає замінну відповідь. Також приймаються псевдоніми snake_case
|
||||
поточний запит і зберігає замінну відповідь. Також приймаються snake_case aliases
|
||||
(`response_cache`, `response_cache_ttl_seconds` і
|
||||
`response_cache_clear`).
|
||||
|
||||
Це окремо від кешування промптів провайдера та від маркерів
|
||||
Anthropic `cache_control` OpenRouter. Застосовується лише на перевірених
|
||||
маршрутах `openrouter.ai`, а не на користувацьких базових URL проксі.
|
||||
Це окремо від кешування prompt провайдера та від маркерів Anthropic
|
||||
`cache_control` OpenRouter. Воно застосовується лише на перевірених
|
||||
маршрутах `openrouter.ai`, а не на базових URL користувацьких proxy.
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Маркери кешу Anthropic">
|
||||
<Accordion title="Anthropic cache markers">
|
||||
На перевірених маршрутах OpenRouter посилання на моделі Anthropic зберігають
|
||||
специфічні для OpenRouter маркери Anthropic `cache_control`, які OpenClaw використовує для
|
||||
кращого повторного використання кешу промптів у блоках системних/розробницьких промптів.
|
||||
кращого повторного використання prompt-cache у блоках system/developer prompt.
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Попереднє заповнення міркування Anthropic">
|
||||
На перевірених маршрутах OpenRouter посилання на моделі Anthropic з увімкненим міркуванням
|
||||
відкидають кінцеві ходи попереднього заповнення асистента до того, як запит досягне OpenRouter,
|
||||
відповідно до вимоги Anthropic, щоб розмови з міркуванням завершувалися ходом користувача.
|
||||
<Accordion title="Anthropic reasoning prefill">
|
||||
На перевірених маршрутах OpenRouter посилання на моделі Anthropic з увімкненим reasoning
|
||||
відкидають кінцеві попередньо заповнені ходи assistant до того, як запит досягне OpenRouter,
|
||||
відповідно до вимоги Anthropic, що reasoning-розмови мають завершуватися ходом user.
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Ін’єкція thinking / reasoning">
|
||||
На підтримуваних не-`auto` маршрутах OpenClaw зіставляє вибраний рівень thinking із
|
||||
payloads reasoning проксі OpenRouter. Непідтримувані підказки моделей і
|
||||
`openrouter/auto` пропускають цю ін’єкцію reasoning. Hunter Alpha також пропускає
|
||||
reasoning проксі для застарілих налаштованих посилань на моделі, оскільки OpenRouter міг
|
||||
повертати текст остаточної відповіді в полях reasoning для цього вилученого маршруту.
|
||||
<Accordion title="Thinking / reasoning injection">
|
||||
На підтримуваних маршрутах, відмінних від `auto`, OpenClaw зіставляє вибраний рівень thinking із
|
||||
payload reasoning proxy OpenRouter. Непідтримувані підказки моделей і
|
||||
`openrouter/auto` пропускають це вставлення reasoning. Hunter Alpha також пропускає
|
||||
proxy reasoning для застарілих налаштованих посилань на модель, тому що OpenRouter міг
|
||||
повертати текст фінальної відповіді в полях reasoning для цього виведеного з використання маршруту.
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Повтор reasoning DeepSeek V4">
|
||||
<Accordion title="DeepSeek V4 reasoning replay">
|
||||
На перевірених маршрутах OpenRouter `openrouter/deepseek/deepseek-v4-flash` і
|
||||
`openrouter/deepseek/deepseek-v4-pro` заповнюють відсутній `reasoning_content` у
|
||||
повторно відтворених ходах асистента, щоб розмови thinking/tool зберігали потрібну для DeepSeek V4
|
||||
форму продовження.
|
||||
повторно відтворених ходах assistant, щоб розмови thinking/tool зберігали
|
||||
потрібну для DeepSeek V4 форму подальшого продовження. OpenClaw надсилає підтримувані OpenRouter
|
||||
значення `reasoning_effort` для цих маршрутів; `xhigh` є найвищим оголошеним
|
||||
рівнем, а застарілі перевизначення `max` зіставляються з `xhigh`.
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Формування запитів лише для OpenAI">
|
||||
OpenRouter усе ще проходить шлях OpenAI-сумісного проксі-стилю, тому
|
||||
<Accordion title="OpenAI-only request shaping">
|
||||
OpenRouter усе ще працює через proxy-style OpenAI-compatible шлях, тому
|
||||
нативне формування запитів лише для OpenAI, як-от `serviceTier`, Responses `store`,
|
||||
payloads сумісності reasoning OpenAI і підказки кешу промптів, не пересилається.
|
||||
payload для сумісності reasoning OpenAI і підказки prompt-cache, не передається далі.
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Маршрути на базі Gemini">
|
||||
<Accordion title="Gemini-backed routes">
|
||||
Посилання OpenRouter на базі Gemini залишаються на proxy-Gemini шляху: OpenClaw зберігає
|
||||
очищення thought-signature Gemini там, але не вмикає нативну валідацію повтору Gemini
|
||||
або bootstrap-переписування.
|
||||
очищення thought-signature Gemini там, але не вмикає нативну валідацію replay Gemini
|
||||
або bootstrap rewrites.
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Метадані маршрутизації провайдера">
|
||||
<Accordion title="Provider routing metadata">
|
||||
Якщо ви передаєте маршрутизацію провайдера OpenRouter у параметрах моделі, OpenClaw пересилає
|
||||
її як метадані маршрутизації OpenRouter до запуску спільних обгорток потоку.
|
||||
її як routing metadata OpenRouter перед запуском спільних stream wrappers.
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
## Пов’язане
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card title="Вибір моделі" href="/uk/concepts/model-providers" icon="layers">
|
||||
<Card title="Model selection" href="/uk/concepts/model-providers" icon="layers">
|
||||
Вибір провайдерів, посилань на моделі та поведінки failover.
|
||||
</Card>
|
||||
<Card title="Довідник конфігурації" href="/uk/gateway/configuration-reference" icon="gear">
|
||||
Повний довідник конфігурації для агентів, моделей і провайдерів.
|
||||
<Card title="Configuration reference" href="/uk/gateway/configuration-reference" icon="gear">
|
||||
Повний довідник конфігурації для agents, models і providers.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
---
|
||||
read_when:
|
||||
- Налаштування парсингу або стандартних значень для мислення, швидкого режиму чи докладної директиви
|
||||
summary: Синтаксис директив для /think, /fast, /verbose, /trace і видимості міркувань
|
||||
- Коригування розбору або типових значень директив мислення, швидкого режиму чи докладного виводу
|
||||
summary: Синтаксис директив для /think, /fast, /verbose, /trace та видимості міркувань
|
||||
title: Рівні мислення
|
||||
x-i18n:
|
||||
generated_at: "2026-05-04T18:18:28Z"
|
||||
generated_at: "2026-05-04T21:16:41Z"
|
||||
model: gpt-5.5
|
||||
provider: openai
|
||||
source_hash: fcd1cd76ca5d0b08656e0629df656ad8aa037201d8de68093b3e46eb0708f811
|
||||
source_hash: d2282c9eccda4693680bbfbfc42de508021f4472b00d40a1a8c1bc19a4516012
|
||||
source_path: tools/thinking.md
|
||||
workflow: 16
|
||||
---
|
||||
@ -20,88 +20,89 @@ x-i18n:
|
||||
- low → “think hard”
|
||||
- medium → “think harder”
|
||||
- high → “ultrathink” (максимальний бюджет)
|
||||
- xhigh → “ultrathink+” (моделі GPT-5.2+ і Codex, а також Anthropic Claude Opus 4.7 effort)
|
||||
- adaptive → адаптивне мислення, кероване провайдером (підтримується для Claude 4.6 в Anthropic/Bedrock, Anthropic Claude Opus 4.7 і Google Gemini dynamic thinking)
|
||||
- max → максимальне міркування провайдера (Anthropic Claude Opus 4.7; Ollama зіставляє це зі своїм найвищим нативним рівнем `think`)
|
||||
- xhigh → “ultrathink+” (моделі GPT-5.2+ і Codex, а також effort Anthropic Claude Opus 4.7)
|
||||
- adaptive → адаптивне мислення, кероване провайдером (підтримується для Claude 4.6 в Anthropic/Bedrock, Anthropic Claude Opus 4.7 і динамічного мислення Google Gemini)
|
||||
- max → максимальне міркування провайдера (Anthropic Claude Opus 4.7; Ollama зіставляє це зі своїм найвищим нативним effort `think`)
|
||||
- `x-high`, `x_high`, `extra-high`, `extra high` і `extra_high` зіставляються з `xhigh`.
|
||||
- `highest` зіставляється з `high`.
|
||||
- Нотатки щодо провайдерів:
|
||||
- Меню та вибір мислення керуються профілем провайдера. Provider plugins оголошують точний набір рівнів для вибраної моделі, зокрема мітки на кшталт бінарного `on`.
|
||||
- `adaptive`, `xhigh` і `max` рекламуються лише для профілів провайдера/моделі, які їх підтримують. Типізовані директиви для непідтримуваних рівнів відхиляються з коректними параметрами для цієї моделі.
|
||||
- Наявні збережені непідтримувані рівні перепризначаються за рангом профілю провайдера. `adaptive` повертається до `medium` на неадаптивних моделях, а `xhigh` і `max` повертаються до найбільшого підтримуваного не-`off` рівня для вибраної моделі.
|
||||
- Моделі Anthropic Claude 4.6 за замовчуванням використовують `adaptive`, коли явний рівень мислення не задано.
|
||||
- Anthropic Claude Opus 4.7 не використовує адаптивне мислення за замовчуванням. Його типовий API effort лишається під контролем провайдера, якщо ви явно не задасте рівень мислення.
|
||||
- Anthropic Claude Opus 4.7 зіставляє `/think xhigh` з адаптивним мисленням плюс `output_config.effort: "xhigh"`, тому що `/think` є директивою мислення, а `xhigh` є налаштуванням effort для Opus 4.7.
|
||||
- Anthropic Claude Opus 4.7 також надає `/think max`; це зіставляється з тим самим шляхом максимального effort, керованим провайдером.
|
||||
- Моделі DeepSeek V4 надають `/think xhigh|max`; обидва зіставляються з DeepSeek `reasoning_effort: "max"`, тоді як нижчі не-`off` рівні зіставляються з `high`.
|
||||
- Моделі Ollama з підтримкою мислення надають `/think low|medium|high|max`; `max` зіставляється з нативним `think: "high"`, тому що нативний API Ollama приймає рядки effort `low`, `medium` і `high`.
|
||||
- Моделі OpenAI GPT зіставляють `/think` через підтримку effort у Responses API, специфічну для моделі. `/think off` надсилає `reasoning.effort: "none"` лише тоді, коли цільова модель це підтримує; інакше OpenClaw пропускає вимкнене корисне навантаження міркування замість надсилання непідтримуваного значення.
|
||||
- Користувацькі сумісні з OpenAI записи каталогу можуть увімкнути підтримку `/think xhigh`, задавши `models.providers.<provider>.models[].compat.supportedReasoningEfforts` так, щоб він містив `"xhigh"`. Це використовує ті самі метадані сумісності, які зіставляють вихідні корисні навантаження OpenAI reasoning effort, тож меню, валідація сеансу, agent CLI і `llm-task` узгоджуються з поведінкою транспорту.
|
||||
- Застарілі налаштовані посилання OpenRouter Hunter Alpha пропускають інʼєкцію проксі-міркування, тому що цей вилучений маршрут міг повертати текст фінальної відповіді через поля міркування.
|
||||
- Google Gemini зіставляє `/think adaptive` з керованим провайдером dynamic thinking Gemini. Запити Gemini 3 пропускають фіксований `thinkingLevel`, тоді як запити Gemini 2.5 надсилають `thinkingBudget: -1`; фіксовані рівні й далі зіставляються з найближчим Gemini `thinkingLevel` або бюджетом для цієї сімʼї моделей.
|
||||
- MiniMax (`minimax/*`) на Anthropic-сумісному потоковому шляху за замовчуванням використовує `thinking: { type: "disabled" }`, якщо ви явно не задасте мислення в параметрах моделі або параметрах запиту. Це запобігає витоку дельт `reasoning_content` із ненативного потокового формату Anthropic від MiniMax.
|
||||
- Z.AI (`zai/*`) підтримує лише бінарне мислення (`on`/`off`). Будь-який не-`off` рівень вважається `on` (зіставляється з `low`).
|
||||
- Moonshot (`moonshot/*`) зіставляє `/think off` з `thinking: { type: "disabled" }`, а будь-який не-`off` рівень з `thinking: { type: "enabled" }`. Коли мислення увімкнене, Moonshot приймає лише `tool_choice` `auto|none`; OpenClaw нормалізує несумісні значення до `auto`.
|
||||
- Меню й вибір мислення керуються профілем провайдера. Плагіни провайдерів оголошують точний набір рівнів для вибраної моделі, включно з мітками на кшталт бінарного `on`.
|
||||
- `adaptive`, `xhigh` і `max` рекламуються лише для профілів провайдера/моделі, які їх підтримують. Типізовані директиви для непідтримуваних рівнів відхиляються з переліком припустимих параметрів для цієї моделі.
|
||||
- Наявні збережені непідтримувані рівні перепризначаються за рангом профілю провайдера. `adaptive` на неадаптивних моделях повертається до `medium`, тоді як `xhigh` і `max` повертаються до найбільшого підтримуваного рівня, відмінного від `off`, для вибраної моделі.
|
||||
- Моделі Anthropic Claude 4.6 типово використовують `adaptive`, якщо явний рівень мислення не задано.
|
||||
- Anthropic Claude Opus 4.7 не використовує адаптивне мислення за замовчуванням. Типове значення effort в його API залишається під керуванням провайдера, якщо ви явно не задасте рівень мислення.
|
||||
- Anthropic Claude Opus 4.7 зіставляє `/think xhigh` з адаптивним мисленням плюс `output_config.effort: "xhigh"`, оскільки `/think` є директивою мислення, а `xhigh` є параметром effort для Opus 4.7.
|
||||
- Anthropic Claude Opus 4.7 також надає `/think max`; він зіставляється з тим самим шляхом максимального effort, керованого провайдером.
|
||||
- Прямі моделі DeepSeek V4 надають `/think xhigh|max`; обидва варіанти зіставляються з DeepSeek `reasoning_effort: "max"`, тоді як нижчі рівні, відмінні від `off`, зіставляються з `high`.
|
||||
- Моделі DeepSeek V4, маршрутизовані через OpenRouter, надають `/think xhigh` і надсилають підтримувані OpenRouter значення `reasoning_effort`. Збережені перевизначення `max` повертаються до `xhigh`.
|
||||
- Моделі Ollama з підтримкою мислення надають `/think low|medium|high|max`; `max` зіставляється з нативним `think: "high"`, оскільки нативний API Ollama приймає рядки effort `low`, `medium` і `high`.
|
||||
- Моделі OpenAI GPT зіставляють `/think` через підтримку effort у Responses API, специфічну для моделі. `/think off` надсилає `reasoning.effort: "none"` лише тоді, коли цільова модель це підтримує; інакше OpenClaw пропускає вимкнене навантаження міркування замість надсилання непідтримуваного значення.
|
||||
- Власні записи каталогу, сумісні з OpenAI, можуть увімкнути `/think xhigh`, задавши `models.providers.<provider>.models[].compat.supportedReasoningEfforts` так, щоб воно містило `"xhigh"`. Це використовує ті самі метадані сумісності, які зіставляють вихідні навантаження effort міркування OpenAI, тому меню, перевірка сесії, agent CLI і `llm-task` узгоджуються з поведінкою транспорту.
|
||||
- Застарілі налаштовані посилання OpenRouter Hunter Alpha пропускають інʼєкцію проксі-міркування, оскільки цей вилучений маршрут міг повертати текст фінальної відповіді через поля міркування.
|
||||
- Google Gemini зіставляє `/think adaptive` з динамічним мисленням Gemini, керованим провайдером. Запити Gemini 3 пропускають фіксований `thinkingLevel`, тоді як запити Gemini 2.5 надсилають `thinkingBudget: -1`; фіксовані рівні все ще зіставляються з найближчим Gemini `thinkingLevel` або бюджетом для цієї сімʼї моделей.
|
||||
- MiniMax (`minimax/*`) на Anthropic-сумісному потоковому шляху типово використовує `thinking: { type: "disabled" }`, якщо ви явно не задасте мислення в параметрах моделі або параметрах запиту. Це запобігає витоку дельт `reasoning_content` з ненативного Anthropic-формату потоку MiniMax.
|
||||
- Z.AI (`zai/*`) підтримує лише бінарне мислення (`on`/`off`). Будь-який рівень, відмінний від `off`, розглядається як `on` (зіставляється з `low`).
|
||||
- Moonshot (`moonshot/*`) зіставляє `/think off` з `thinking: { type: "disabled" }`, а будь-який рівень, відмінний від `off`, з `thinking: { type: "enabled" }`. Коли мислення увімкнене, Moonshot приймає лише `tool_choice` `auto|none`; OpenClaw нормалізує несумісні значення до `auto`.
|
||||
|
||||
## Порядок визначення
|
||||
|
||||
1. Вбудована директива в повідомленні (застосовується лише до цього повідомлення).
|
||||
2. Перевизначення сеансу (задається надсиланням повідомлення лише з директивою).
|
||||
2. Перевизначення сесії (задається надсиланням повідомлення, що містить лише директиву).
|
||||
3. Типове значення для агента (`agents.list[].thinkingDefault` у конфігурації).
|
||||
4. Глобальне типове значення (`agents.defaults.thinkingDefault` у конфігурації).
|
||||
5. Резервний варіант: оголошене провайдером типове значення, якщо доступне; інакше моделі з підтримкою міркування визначаються як `medium` або найближчий підтримуваний не-`off` рівень для цієї моделі, а моделі без міркування лишаються `off`.
|
||||
5. Резервний варіант: типове значення, оголошене провайдером, коли доступне; інакше моделі з підтримкою міркування визначаються як `medium` або найближчий підтримуваний рівень, відмінний від `off`, для цієї моделі, а моделі без міркування залишаються `off`.
|
||||
|
||||
## Налаштування типового значення сеансу
|
||||
## Налаштування типового значення сесії
|
||||
|
||||
- Надішліть повідомлення, яке містить **лише** директиву (пробіли дозволені), наприклад `/think:medium` або `/t high`.
|
||||
- Це закріплюється для поточного сеансу (типово для кожного відправника); очищується через `/think:off` або скидання після простою сеансу.
|
||||
- Надсилається відповідь-підтвердження (`Thinking level set to high.` / `Thinking disabled.`). Якщо рівень некоректний (наприклад, `/thinking big`), команда відхиляється з підказкою, а стан сеансу лишається незмінним.
|
||||
- Воно закріплюється для поточної сесії (типово для кожного відправника); очищується через `/think:off` або скидання після простою сесії.
|
||||
- Надсилається відповідь-підтвердження (`Thinking level set to high.` / `Thinking disabled.`). Якщо рівень недійсний (наприклад, `/thinking big`), команда відхиляється з підказкою, а стан сесії не змінюється.
|
||||
- Надішліть `/think` (або `/think:`) без аргументу, щоб побачити поточний рівень мислення.
|
||||
|
||||
## Застосування за агентом
|
||||
|
||||
- **Вбудований Pi**: визначений рівень передається в рантайм агента Pi в межах процесу.
|
||||
- **Бекенд Claude CLI**: не-`off` рівні передаються в Claude Code як `--effort` під час використання `claude-cli`; див. [CLI-бекенди](/uk/gateway/cli-backends).
|
||||
- **Вбудований Pi**: визначений рівень передається в runtime агента Pi в процесі.
|
||||
- **Бекенд Claude CLI**: рівні, відмінні від off, передаються в Claude Code як `--effort` під час використання `claude-cli`; див. [бекенди CLI](/uk/gateway/cli-backends).
|
||||
|
||||
## Швидкий режим (/fast)
|
||||
|
||||
- Рівні: `on|off`.
|
||||
- Повідомлення лише з директивою перемикає перевизначення швидкого режиму сеансу й відповідає `Fast mode enabled.` / `Fast mode disabled.`.
|
||||
- Повідомлення лише з директивою перемикає перевизначення швидкого режиму сесії й відповідає `Fast mode enabled.` / `Fast mode disabled.`.
|
||||
- Надішліть `/fast` (або `/fast status`) без режиму, щоб побачити поточний ефективний стан швидкого режиму.
|
||||
- OpenClaw визначає швидкий режим у такому порядку:
|
||||
1. Вбудована директива або повідомлення лише з директивою `/fast on|off`
|
||||
2. Перевизначення сеансу
|
||||
1. Вбудований/лише-директивний `/fast on|off`
|
||||
2. Перевизначення сесії
|
||||
3. Типове значення для агента (`agents.list[].fastModeDefault`)
|
||||
4. Конфігурація для моделі: `agents.defaults.models["<provider>/<model>"].params.fastMode`
|
||||
5. Резервний варіант: `off`
|
||||
- Для `openai/*` швидкий режим зіставляється з пріоритетною обробкою OpenAI через надсилання `service_tier=priority` у підтримуваних запитах Responses.
|
||||
- Для `openai-codex/*` швидкий режим надсилає той самий прапорець `service_tier=priority` у Codex Responses. OpenClaw зберігає один спільний перемикач `/fast` для обох шляхів автентифікації.
|
||||
- Для прямих публічних запитів `anthropic/*`, зокрема OAuth-автентифікованого трафіку, надісланого до `api.anthropic.com`, швидкий режим зіставляється з рівнями сервісу Anthropic: `/fast on` задає `service_tier=auto`, `/fast off` задає `service_tier=standard_only`.
|
||||
- Для прямих публічних запитів `anthropic/*`, включно з OAuth-автентифікованим трафіком, надісланим до `api.anthropic.com`, швидкий режим зіставляється з рівнями сервісу Anthropic: `/fast on` задає `service_tier=auto`, `/fast off` задає `service_tier=standard_only`.
|
||||
- Для `minimax/*` на Anthropic-сумісному шляху `/fast on` (або `params.fastMode: true`) переписує `MiniMax-M2.7` на `MiniMax-M2.7-highspeed`.
|
||||
- Явні параметри моделі Anthropic `serviceTier` / `service_tier` перевизначають типове значення швидкого режиму, коли задано обидва. OpenClaw і далі пропускає інʼєкцію рівня сервісу Anthropic для базових URL проксі, які не є Anthropic.
|
||||
- Явні параметри моделі Anthropic `serviceTier` / `service_tier` перевизначають типове значення швидкого режиму, коли задано обидва. OpenClaw усе одно пропускає інʼєкцію рівня сервісу Anthropic для не-Anthropic проксі-URL бази.
|
||||
- `/status` показує `Fast` лише тоді, коли швидкий режим увімкнено.
|
||||
|
||||
## Директиви докладності (/verbose або /v)
|
||||
|
||||
- Рівні: `on` (мінімальний) | `full` | `off` (типово).
|
||||
- Повідомлення лише з директивою перемикає докладність сеансу й відповідає `Verbose logging enabled.` / `Verbose logging disabled.`; некоректні рівні повертають підказку без зміни стану.
|
||||
- `/verbose off` зберігає явне перевизначення сеансу; очистьте його через UI сеансів, вибравши `inherit`.
|
||||
- Вбудована директива впливає лише на це повідомлення; інакше застосовуються типові значення сеансу/глобальні типові значення.
|
||||
- Повідомлення лише з директивою перемикає докладність сесії й відповідає `Verbose logging enabled.` / `Verbose logging disabled.`; недійсні рівні повертають підказку без зміни стану.
|
||||
- `/verbose off` зберігає явне перевизначення сесії; очистьте його через UI сесій, вибравши `inherit`.
|
||||
- Вбудована директива впливає лише на це повідомлення; інакше застосовуються типові значення сесії/глобальні типові значення.
|
||||
- Надішліть `/verbose` (або `/verbose:`) без аргументу, щоб побачити поточний рівень докладності.
|
||||
- Коли докладність увімкнена, агенти, що виводять структуровані результати інструментів (Pi, інші JSON-агенти), надсилають кожен виклик інструмента назад як окреме повідомлення лише з метаданими, з префіксом `<emoji> <tool-name>: <arg>`, коли доступно. Ці підсумки інструментів надсилаються одразу після запуску кожного інструмента (окремі бульбашки), а не як потокові дельти.
|
||||
- Підсумки помилок інструментів лишаються видимими у звичайному режимі, але суфікси з необробленими деталями помилок приховані, якщо докладність не `on` або `full`.
|
||||
- Коли докладність дорівнює `full`, результати інструментів також пересилаються після завершення (окрема бульбашка, обрізана до безпечної довжини). Якщо перемкнути `/verbose on|full|off`, поки виконання триває, наступні бульбашки інструментів врахують нове налаштування.
|
||||
- `agents.defaults.toolProgressDetail` керує формою підсумків інструментів `/verbose` і рядків інструментів у чернетках прогресу. Використовуйте `"explain"` (типово) для компактних зрозумілих міток на кшталт `🛠️ Exec: checking JS syntax`; використовуйте `"raw"`, коли також потрібно додавати необроблену команду/деталі для налагодження. `agents.list[].toolProgressDetail` для окремого агента перевизначає типове значення.
|
||||
- Коли докладність увімкнена, агенти, які виводять структуровані результати інструментів (Pi, інші JSON-агенти), надсилають кожен виклик інструмента назад як окреме повідомлення лише з метаданими, з префіксом `<emoji> <tool-name>: <arg>`, коли доступно. Ці підсумки інструментів надсилаються щойно кожен інструмент запускається (окремі бульбашки), а не як потокові дельти.
|
||||
- Підсумки збоїв інструментів залишаються видимими у звичайному режимі, але сирі суфікси деталей помилок приховані, якщо докладність не `on` або `full`.
|
||||
- Коли докладність дорівнює `full`, виводи інструментів також пересилаються після завершення (окрема бульбашка, обрізана до безпечної довжини). Якщо перемкнути `/verbose on|full|off`, поки виконання триває, наступні бульбашки інструментів враховують нове налаштування.
|
||||
- `agents.defaults.toolProgressDetail` керує формою підсумків інструментів `/verbose` і рядків інструментів у чернетках прогресу. Використовуйте `"explain"` (типово) для компактних зрозумілих міток на кшталт `🛠️ Exec: checking JS syntax`; використовуйте `"raw"`, коли також потрібно додати сиру команду/деталі для налагодження. `agents.list[].toolProgressDetail` для агента перевизначає типове значення.
|
||||
- `explain`: `🛠️ Exec: check JS syntax for /tmp/app.js`
|
||||
- `raw`: `🛠️ Exec: check JS syntax for /tmp/app.js, node --check /tmp/app.js`
|
||||
|
||||
## Директиви трасування Plugin (/trace)
|
||||
|
||||
- Рівні: `on` | `off` (типово).
|
||||
- Повідомлення лише з директивою перемикає вивід трасування Plugin у сеансі й відповідає `Plugin trace enabled.` / `Plugin trace disabled.`.
|
||||
- Вбудована директива впливає лише на це повідомлення; інакше застосовуються типові значення сеансу/глобальні типові значення.
|
||||
- Повідомлення лише з директивою перемикає вивід трасування plugin-ів сесії й відповідає `Plugin trace enabled.` / `Plugin trace disabled.`.
|
||||
- Вбудована директива впливає лише на це повідомлення; інакше застосовуються типові значення сесії/глобальні типові значення.
|
||||
- Надішліть `/trace` (або `/trace:`) без аргументу, щоб побачити поточний рівень трасування.
|
||||
- `/trace` вужчий за `/verbose`: він показує лише рядки трасування/налагодження, що належать Plugin, наприклад підсумки налагодження Active Memory.
|
||||
- `/trace` вужчий за `/verbose`: він відкриває лише рядки трасування/налагодження, що належать plugin-ам, як-от налагоджувальні підсумки Active Memory.
|
||||
- Рядки трасування можуть зʼявлятися в `/status` і як подальше діагностичне повідомлення після звичайної відповіді асистента.
|
||||
|
||||
## Видимість міркування (/reasoning)
|
||||
@ -109,36 +110,36 @@ x-i18n:
|
||||
- Рівні: `on|off|stream`.
|
||||
- Повідомлення лише з директивою перемикає, чи показуються блоки мислення у відповідях.
|
||||
- Коли увімкнено, міркування надсилається як **окреме повідомлення** з префіксом `Reasoning:`.
|
||||
- `stream` (лише Telegram): транслює міркування в чернеткову бульбашку Telegram, поки генерується відповідь, а потім надсилає фінальну відповідь без міркування.
|
||||
- `stream` (лише Telegram): транслює міркування в бульбашку чернетки Telegram, поки відповідь генерується, а потім надсилає фінальну відповідь без міркування.
|
||||
- Псевдонім: `/reason`.
|
||||
- Надішліть `/reasoning` (або `/reasoning:`) без аргументу, щоб побачити поточний рівень міркування.
|
||||
- Порядок визначення: вбудована директива, потім перевизначення сеансу, потім типове значення для агента (`agents.list[].reasoningDefault`), потім резервний варіант (`off`).
|
||||
- Порядок визначення: вбудована директива, потім перевизначення сесії, потім типове значення для агента (`agents.list[].reasoningDefault`), потім резервний варіант (`off`).
|
||||
|
||||
Некоректні теги міркування локальних моделей обробляються консервативно. Закриті блоки `<think>...</think>` лишаються прихованими у звичайних відповідях, а незакрите міркування після вже видимого тексту також приховується. Якщо відповідь повністю обгорнута в один незакритий початковий тег і інакше була б доставлена як порожній текст, OpenClaw видаляє некоректний початковий тег і доставляє решту тексту.
|
||||
Некоректні теги міркування локальної моделі обробляються консервативно. Закриті блоки `<think>...</think>` залишаються прихованими у звичайних відповідях, а незакрите міркування після вже видимого тексту також приховується. Якщо відповідь повністю обгорнута в один незакритий початковий тег і інакше була б доставлена як порожній текст, OpenClaw видаляє некоректний початковий тег і доставляє решту тексту.
|
||||
|
||||
## Повʼязане
|
||||
|
||||
- Документація режиму підвищених прав міститься в [Режим підвищених прав](/uk/tools/elevated).
|
||||
- Документація підвищеного режиму розміщена в [підвищеному режимі](/uk/tools/elevated).
|
||||
|
||||
## Heartbeat
|
||||
## Heartbeat-и
|
||||
|
||||
- Тіло зонду Heartbeat є налаштованим запитом heartbeat (типово: `Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.`). Вбудовані директиви в повідомленні heartbeat застосовуються як зазвичай (але уникайте зміни типових значень сеансу з heartbeat).
|
||||
- Доставка Heartbeat за замовчуванням обмежується лише фінальним корисним навантаженням. Щоб також надсилати окреме повідомлення `Reasoning:` (коли доступно), задайте `agents.defaults.heartbeat.includeReasoning: true` або для окремого агента `agents.list[].heartbeat.includeReasoning: true`.
|
||||
- Тіло зонду Heartbeat є налаштованим запитом Heartbeat (типово: `Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.`). Вбудовані директиви в повідомленні Heartbeat застосовуються як зазвичай (але уникайте зміни типових значень сесії з Heartbeat-ів).
|
||||
- Доставка Heartbeat типово надсилає лише фінальне навантаження. Щоб також надіслати окреме повідомлення `Reasoning:` (коли доступне), задайте `agents.defaults.heartbeat.includeReasoning: true` або для агента `agents.list[].heartbeat.includeReasoning: true`.
|
||||
|
||||
## UI вебчату
|
||||
|
||||
- Селектор мислення вебчату віддзеркалює збережений рівень сеансу зі сховища/конфігурації вхідного сеансу під час завантаження сторінки.
|
||||
- Вибір іншого рівня негайно записує перевизначення сеансу через `sessions.patch`; він не чекає наступного надсилання й не є одноразовим перевизначенням `thinkingOnce`.
|
||||
- Перший параметр завжди `Default (<resolved level>)`, де визначене типове значення береться з профілю мислення провайдера активної моделі сеансу плюс та сама резервна логіка, яку використовують `/status` і `session_status`.
|
||||
- Селектор використовує `thinkingLevels`, повернені рядком/типовими значеннями сеансу Gateway, а `thinkingOptions` збережено як застарілий список міток. UI браузера не зберігає власний список регулярних виразів провайдерів; plugins володіють наборами рівнів, специфічними для моделей.
|
||||
- `/think:<level>` і далі працює та оновлює той самий збережений рівень сеансу, тож директиви чату й селектор лишаються синхронізованими.
|
||||
- Селектор мислення вебчату віддзеркалює збережений рівень сесії з вхідного сховища/конфігурації сесії під час завантаження сторінки.
|
||||
- Вибір іншого рівня негайно записує перевизначення сесії через `sessions.patch`; він не чекає наступного надсилання і не є одноразовим перевизначенням `thinkingOnce`.
|
||||
- Перший параметр завжди `Default (<resolved level>)`, де визначене типове значення походить із профілю мислення провайдера активної моделі сесії плюс та сама резервна логіка, яку використовують `/status` і `session_status`.
|
||||
- Вибір використовує `thinkingLevels`, повернені рядком/типовими значеннями сесії Gateway, а `thinkingOptions` зберігається як застарілий список міток. UI браузера не зберігає власний список regex провайдерів; plugin-и володіють наборами рівнів, специфічними для моделей.
|
||||
- `/think:<level>` усе ще працює й оновлює той самий збережений рівень сесії, тому директиви чату й селектор залишаються синхронізованими.
|
||||
|
||||
## Профілі провайдерів
|
||||
|
||||
- Plugin провайдерів можуть надавати `resolveThinkingProfile(ctx)`, щоб визначати підтримувані моделлю рівні та значення за замовчуванням.
|
||||
- Plugin провайдерів, які проксіюють моделі Claude, мають повторно використовувати `resolveClaudeThinkingProfile(modelId)` з `openclaw/plugin-sdk/provider-model-shared`, щоб прямі каталоги Anthropic і проксі-каталоги залишалися узгодженими.
|
||||
- Плагіни провайдерів можуть надавати `resolveThinkingProfile(ctx)`, щоб визначити підтримувані моделлю рівні та значення за замовчуванням.
|
||||
- Плагіни провайдерів, які проксіюють моделі Claude, мають повторно використовувати `resolveClaudeThinkingProfile(modelId)` з `openclaw/plugin-sdk/provider-model-shared`, щоб прямі каталоги Anthropic і проксі-каталоги залишалися узгодженими.
|
||||
- Кожен рівень профілю має збережений канонічний `id` (`off`, `minimal`, `low`, `medium`, `high`, `xhigh`, `adaptive` або `max`) і може містити відображуваний `label`. Бінарні провайдери використовують `{ id: "low", label: "on" }`.
|
||||
- Tool Plugin, яким потрібно перевіряти явне перевизначення мислення, мають використовувати `api.runtime.agent.resolveThinkingPolicy({ provider, model })` разом із `api.runtime.agent.normalizeThinkingLevel(...)`; вони не повинні зберігати власні списки рівнів провайдера/моделі.
|
||||
- Tool Plugin із доступом до налаштованих метаданих користувацької моделі можуть передавати `catalog` у `resolveThinkingPolicy`, щоб opt-in `compat.supportedReasoningEfforts` відображалися у валідації на боці Plugin.
|
||||
- Плагіни інструментів, яким потрібно перевіряти явне перевизначення мислення, мають використовувати `api.runtime.agent.resolveThinkingPolicy({ provider, model })` разом із `api.runtime.agent.normalizeThinkingLevel(...)`; вони не повинні зберігати власні списки рівнів провайдерів/моделей.
|
||||
- Плагіни інструментів із доступом до налаштованих метаданих користувацьких моделей можуть передавати `catalog` у `resolveThinkingPolicy`, щоб opt-in-и `compat.supportedReasoningEfforts` відображалися у перевірці на боці плагіна.
|
||||
- Опубліковані застарілі хуки (`supportsXHighThinking`, `isBinaryThinking` і `resolveDefaultThinkingLevel`) залишаються адаптерами сумісності, але нові користувацькі набори рівнів мають використовувати `resolveThinkingProfile`.
|
||||
- Рядки/значення за замовчуванням Gateway надають `thinkingLevels`, `thinkingOptions` і `thinkingDefault`, щоб клієнти ACP/чату відображали ті самі ідентифікатори й мітки профілю, які використовує валідація під час виконання.
|
||||
- Рядки/значення за замовчуванням Gateway надають `thinkingLevels`, `thinkingOptions` і `thinkingDefault`, щоб клієнти ACP/чату відображали ті самі ідентифікатори й мітки профілів, які використовує перевірка під час виконання.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user