chore(i18n): refresh uk translations
This commit is contained in:
parent
e341218824
commit
45a4b5ce9f
@ -1,121 +1,126 @@
|
||||
---
|
||||
read_when:
|
||||
- Перегляд серії PR для паритету GPT-5.4 / Codex
|
||||
- Підтримка шести-контрактної агентної архітектури, що лежить в основі програми паритету
|
||||
summary: Як переглянути програму паритету GPT-5.4 / Codex як чотири одиниці злиття
|
||||
title: Примітки для мейнтейнерів щодо паритету GPT-5.4 / Codex
|
||||
x-i18n:
|
||||
generated_at: "2026-04-11T13:24:07Z"
|
||||
generated_at: "2026-04-21T21:37:37Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 910bcf7668becf182ef48185b43728bf2fa69629d6d50189d47d47b06f807a9e
|
||||
source_hash: b872d6a33b269c01b44537bfa8646329063298fdfcd3671a17d0eadbc9da5427
|
||||
source_path: help/gpt54-codex-agentic-parity-maintainers.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Нотатки для супроводжувачів щодо паритету GPT-5.4 / Codex
|
||||
# Примітки для мейнтейнерів щодо паритету GPT-5.4 / Codex
|
||||
|
||||
У цій нотатці пояснюється, як розглядати програму паритету GPT-5.4 / Codex як чотири одиниці злиття, не втрачаючи при цьому початкову архітектуру з шести контрактів.
|
||||
У цій примітці пояснюється, як переглядати програму паритету GPT-5.4 / Codex як чотири одиниці злиття, не втрачаючи початкову архітектуру з шістьма контрактами.
|
||||
|
||||
## Одиниці злиття
|
||||
|
||||
### PR A: суворе agentic-виконання
|
||||
### PR A: суворо агентне виконання
|
||||
|
||||
Володіє:
|
||||
Охоплює:
|
||||
|
||||
- `executionContract`
|
||||
- GPT-5-first same-turn follow-through
|
||||
- `update_plan` як нетермінальне відстеження прогресу
|
||||
- явні заблоковані стани замість тихих зупинок лише через план
|
||||
- GPT-5-first доведення в межах того самого ходу
|
||||
- `update_plan` як невихідне відстеження прогресу
|
||||
- явні заблоковані стани замість тихих зупинок лише на плані
|
||||
|
||||
Не володіє:
|
||||
Не охоплює:
|
||||
|
||||
- класифікацією збоїв автентифікації/середовища виконання
|
||||
- правдивістю щодо дозволів
|
||||
- переробкою повтору/продовження
|
||||
- бенчмаркінгом паритету
|
||||
- класифікацію збоїв auth/runtime
|
||||
- правдивість дозволів
|
||||
- переробку replay/continuation
|
||||
- бенчмаркінг паритету
|
||||
|
||||
### PR B: правдивість середовища виконання
|
||||
### PR B: правдивість runtime
|
||||
|
||||
Володіє:
|
||||
Охоплює:
|
||||
|
||||
- коректністю Codex OAuth scope
|
||||
- типізованою класифікацією збоїв провайдера/середовища виконання
|
||||
- правдивою доступністю `/elevated full` і причинами блокування
|
||||
- коректність області дії Codex OAuth
|
||||
- типізовану класифікацію збоїв provider/runtime
|
||||
- правдиву доступність `/elevated full` і причини блокування
|
||||
|
||||
Не володіє:
|
||||
Не охоплює:
|
||||
|
||||
- нормалізацією схем інструментів
|
||||
- станом повтору/живучості
|
||||
- керуванням бенчмарком
|
||||
- нормалізацію схеми інструментів
|
||||
- стан replay/liveness
|
||||
- керування бенчмарками
|
||||
|
||||
### PR C: коректність виконання
|
||||
|
||||
Володіє:
|
||||
Охоплює:
|
||||
|
||||
- сумісністю інструментів OpenAI/Codex, що належить провайдеру
|
||||
- суворою обробкою схем без параметрів
|
||||
- відображенням replay-invalid
|
||||
- видимістю станів paused, blocked і abandoned для довготривалих завдань
|
||||
- сумісність інструментів OpenAI/Codex, якою володіє provider
|
||||
- обробку суворої схеми без параметрів
|
||||
- відображення replay-invalid
|
||||
- видимість станів paused, blocked і abandoned для довгих завдань
|
||||
|
||||
Не володіє:
|
||||
Не охоплює:
|
||||
|
||||
- самостійно обраним продовженням
|
||||
- загальною поведінкою діалекту Codex поза хуками провайдера
|
||||
- керуванням бенчмарком
|
||||
- continuation, самостійно обрану системою
|
||||
- загальну поведінку діалекту Codex поза хуками provider
|
||||
- керування бенчмарками
|
||||
|
||||
### PR D: harness паритету
|
||||
### PR D: каркас паритету
|
||||
|
||||
Володіє:
|
||||
Охоплює:
|
||||
|
||||
- першим пакетом сценаріїв GPT-5.4 vs Opus 4.6
|
||||
- документацією щодо паритету
|
||||
- механікою звіту про паритет і release-gate
|
||||
- першу хвилю набору сценаріїв GPT-5.4 vs Opus 4.6
|
||||
- документацію паритету
|
||||
- механіку звіту про паритет і gate для релізу
|
||||
|
||||
Не володіє:
|
||||
Не охоплює:
|
||||
|
||||
- змінами поведінки середовища виконання поза QA-lab
|
||||
- симуляцією auth/proxy/DNS усередині harness
|
||||
- зміни поведінки runtime поза QA-lab
|
||||
- симуляцію auth/proxy/DNS усередині каркаса
|
||||
|
||||
## Відображення назад до початкових шести контрактів
|
||||
## Відображення назад на початкові шість контрактів
|
||||
|
||||
| Початковий контракт | Одиниця злиття |
|
||||
| --------------------------------------- | -------------- |
|
||||
| Коректність транспорту/автентифікації провайдера | PR B |
|
||||
| Коректність transport/auth provider | PR B |
|
||||
| Сумісність контракту/схеми інструментів | PR C |
|
||||
| Виконання в тому ж ході | PR A |
|
||||
| Правдивість щодо дозволів | PR B |
|
||||
| Коректність повтору/продовження/живучості | PR C |
|
||||
| Бенчмарк/release gate | PR D |
|
||||
| Виконання в межах того самого ходу | PR A |
|
||||
| Правдивість дозволів | PR B |
|
||||
| Коректність replay/continuation/liveness | PR C |
|
||||
| Бенчмарк/gate релізу | PR D |
|
||||
|
||||
## Порядок рев’ю
|
||||
## Порядок перегляду
|
||||
|
||||
1. PR A
|
||||
2. PR B
|
||||
3. PR C
|
||||
4. PR D
|
||||
|
||||
PR D — це доказовий шар. Він не повинен бути причиною, через яку затримуються PR з коректністю середовища виконання.
|
||||
PR D — це рівень доказів. Він не повинен бути причиною затримки PR-ів із коректністю runtime.
|
||||
|
||||
## На що звертати увагу
|
||||
|
||||
### PR A
|
||||
|
||||
- GPT-5 runs виконують дію або завершуються з fail closed, а не зупиняються на коментарі
|
||||
- запуски GPT-5 або виконують дію, або завершуються в закритий спосіб, замість зупинки на коментарі
|
||||
- `update_plan` більше не виглядає як прогрес сам по собі
|
||||
- поведінка лишається GPT-5-first і scoped для embedded-Pi
|
||||
- поведінка лишається GPT-5-first і обмеженою сферою embedded-Pi
|
||||
|
||||
### PR B
|
||||
|
||||
- збої auth/proxy/runtime більше не зводяться до загальної обробки “model failed”
|
||||
- збої auth/proxy/runtime більше не згортаються до загальної обробки “model failed”
|
||||
- `/elevated full` описується як доступний лише тоді, коли він справді доступний
|
||||
- причини блокування видимі як моделі, так і user-facing runtime
|
||||
- причини блокування видимі і для моделі, і для user-facing runtime
|
||||
|
||||
### PR C
|
||||
|
||||
- сувора реєстрація інструментів OpenAI/Codex поводиться передбачувано
|
||||
- інструменти без параметрів не провалюють перевірки strict schema
|
||||
- результати replay і compaction зберігають правдивий стан живучості
|
||||
- інструменти без параметрів не провалюють перевірки суворої схеми
|
||||
- результати replay і Compaction зберігають правдивий стан liveness
|
||||
|
||||
### PR D
|
||||
|
||||
- пакет сценаріїв зрозумілий і відтворюваний
|
||||
- пакет включає mutating replay-safety lane, а не лише read-only flows
|
||||
- набір сценаріїв зрозумілий і відтворюваний
|
||||
- набір містить смугу mutating replay-safety, а не лише read-only потоки
|
||||
- звіти читабельні для людей і автоматизації
|
||||
- твердження про паритет підкріплені доказами, а не анекдотичні
|
||||
|
||||
@ -123,15 +128,15 @@ PR D — це доказовий шар. Він не повинен бути п
|
||||
|
||||
- `qa-suite-report.md` / `qa-suite-summary.json` для кожного запуску моделі
|
||||
- `qa-agentic-parity-report.md` з агрегованим порівнянням і порівнянням на рівні сценаріїв
|
||||
- `qa-agentic-parity-summary.json` з машиночитним вердиктом
|
||||
- `qa-agentic-parity-summary.json` із машиночитаним вердиктом
|
||||
|
||||
## Release gate
|
||||
## Gate релізу
|
||||
|
||||
Не стверджуйте про паритет GPT-5.4 або його перевагу над Opus 4.6, доки:
|
||||
Не стверджуйте паритет або перевагу GPT-5.4 над Opus 4.6, доки:
|
||||
|
||||
- PR A, PR B і PR C не злиті
|
||||
- PR D не запускає перший пакет сценаріїв паритету без помилок
|
||||
- регресійні набори runtime-truthfulness лишаються зеленими
|
||||
- PR D не запускає чисто набір паритету першої хвилі
|
||||
- набори регресійних тестів правдивості runtime залишаються зеленими
|
||||
- звіт про паритет не показує випадків fake-success і регресій у поведінці зупинки
|
||||
|
||||
```mermaid
|
||||
@ -148,27 +153,27 @@ flowchart LR
|
||||
H -- "no" --> J["Keep runtime fixes / review loop open"]
|
||||
```
|
||||
|
||||
harness паритету — не єдине джерело доказів. Під час рев’ю чітко зберігайте цей поділ:
|
||||
Каркас паритету — не єдине джерело доказів. Під час перегляду явно зберігайте цей поділ:
|
||||
|
||||
- PR D володіє порівнянням GPT-5.4 vs Opus 4.6 на основі сценаріїв
|
||||
- детерміновані набори PR B і далі володіють доказами щодо auth/proxy/DNS і правдивості full-access
|
||||
- PR D відповідає за порівняння GPT-5.4 vs Opus 4.6 на основі сценаріїв
|
||||
- детерміновані набори PR B як і раніше відповідають за докази щодо auth/proxy/DNS і правдивості повного доступу
|
||||
|
||||
## Відображення цілі до доказів
|
||||
## Відображення цілей на докази
|
||||
|
||||
| Елемент completion gate | Основний власник | Артефакт рев’ю |
|
||||
| Пункт gate завершення | Основний власник | Артефакт перегляду |
|
||||
| ---------------------------------------- | ---------------- | ------------------------------------------------------------------- |
|
||||
| Жодних зупинок лише на плані | PR A | strict-agentic runtime tests і `approval-turn-tool-followthrough` |
|
||||
| Жодного фальшивого прогресу чи фальшивого завершення інструменту | PR A + PR D | кількість fake-success у паритеті плюс деталі звіту на рівні сценаріїв |
|
||||
| Жодних хибних підказок `/elevated full` | PR B | детерміновані набори runtime-truthfulness |
|
||||
| Збої replay/liveness лишаються явними | PR C + PR D | набори lifecycle/replay плюс `compaction-retry-mutating-tool` |
|
||||
| Немає зависань лише на плані | PR A | тести runtime strict-agentic і `approval-turn-tool-followthrough` |
|
||||
| Немає фальшивого прогресу чи фальшивого завершення інструменту | PR A + PR D | кількість fake-success у паритеті плюс деталі звіту на рівні сценаріїв |
|
||||
| Немає хибних підказок `/elevated full` | PR B | детерміновані набори правдивості runtime |
|
||||
| Збої replay/liveness залишаються явними | PR C + PR D | набори lifecycle/replay плюс `compaction-retry-mutating-tool` |
|
||||
| GPT-5.4 відповідає Opus 4.6 або перевершує його | PR D | `qa-agentic-parity-report.md` і `qa-agentic-parity-summary.json` |
|
||||
|
||||
## Скорочення для рев’ю: до vs після
|
||||
## Коротка пам’ятка для рев’юера: до vs після
|
||||
|
||||
| Видима користувачу проблема до змін | Сигнал під час рев’ю після змін |
|
||||
| ------------------------------------------------------- | --------------------------------------------------------------------------------------- |
|
||||
| GPT-5.4 зупинявся після планування | PR A показує поведінку act-or-block замість завершення лише на коментарі |
|
||||
| Використання інструментів здавалося крихким із суворими схемами OpenAI/Codex | PR C зберігає передбачуваність реєстрації інструментів і викликів без параметрів |
|
||||
| Підказки `/elevated full` іноді вводили в оману | PR B прив’язує підказки до реальних можливостей runtime і причин блокування |
|
||||
| Довгі завдання могли зникати в неоднозначності replay/compaction | PR C видає явний стан paused, blocked, abandoned і replay-invalid |
|
||||
| Твердження про паритет були анекдотичними | PR D створює звіт і JSON verdict з однаковим покриттям сценаріїв для обох моделей |
|
||||
| Видима для користувача проблема до | Сигнал під час перегляду після |
|
||||
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------- |
|
||||
| GPT-5.4 зупинявся після планування | PR A показує поведінку act-or-block замість завершення лише на коментарі |
|
||||
| Використання інструментів здавалося крихким із суворими схемами OpenAI/Codex | PR C зберігає передбачуваність реєстрації інструментів і виклику без параметрів |
|
||||
| Підказки `/elevated full` інколи вводили в оману | PR B прив’язує підказки до фактичної можливості runtime і причин блокування |
|
||||
| Довгі завдання могли зникати в неоднозначності replay/Compaction | PR C видає явний стан paused, blocked, abandoned і replay-invalid |
|
||||
| Твердження про паритет були анекдотичними | PR D формує звіт плюс JSON-вердикт з однаковим покриттям сценаріїв на обох моделях |
|
||||
|
||||
@ -1,64 +1,70 @@
|
||||
---
|
||||
read_when:
|
||||
- Налагодження поведінки агента GPT-5.4 або Codex
|
||||
- Порівняння агентної поведінки OpenClaw у різних передових моделях
|
||||
- Огляд виправлень strict-agentic, tool-schema, elevation і replay
|
||||
summary: Як OpenClaw усуває прогалини в агентному виконанні для GPT-5.4 і моделей у стилі Codex
|
||||
title: GPT-5.4 / Агентний паритет Codex
|
||||
x-i18n:
|
||||
generated_at: "2026-04-11T13:24:07Z"
|
||||
generated_at: "2026-04-21T21:37:37Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 7ee6b925b8a0f8843693cea9d50b40544657b5fb8a9e0860e2ff5badb273acb6
|
||||
source_hash: 77bc9b8fab289bd35185fa246113503b3f5c94a22bd44739be07d39ae6779056
|
||||
source_path: help/gpt54-codex-agentic-parity.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Паритет агентної поведінки GPT-5.4 / Codex в OpenClaw
|
||||
# Агентний паритет GPT-5.4 / Codex в OpenClaw
|
||||
|
||||
OpenClaw уже добре працював із frontier-моделями, що використовують інструменти, але моделі у стилі GPT-5.4 і Codex все ще поступалися в кількох практичних аспектах:
|
||||
OpenClaw уже добре працював із передовими моделями, що використовують інструменти, але GPT-5.4 і моделі у стилі Codex усе ще недопрацьовували в кількох практичних аспектах:
|
||||
|
||||
- вони могли зупинятися після планування замість виконання роботи
|
||||
- вони могли неправильно використовувати суворі схеми інструментів OpenAI/Codex
|
||||
- вони могли просити `/elevated full`, навіть коли повний доступ був неможливий
|
||||
- вони могли втрачати стан довготривалих завдань під час replay або compaction
|
||||
- вони могли запитувати `/elevated full`, навіть коли повний доступ був неможливий
|
||||
- вони могли втрачати стан довготривалого завдання під час replay або Compaction
|
||||
- твердження про паритет із Claude Opus 4.6 ґрунтувалися на анекдотичних випадках, а не на відтворюваних сценаріях
|
||||
|
||||
Ця програма паритету усуває ці прогалини у чотирьох окремих частинах, придатних для рев'ю.
|
||||
Ця програма паритету усуває ці прогалини в чотирьох придатних для рев’ю зрізах.
|
||||
|
||||
## Що змінилося
|
||||
|
||||
### PR A: суворе агентне виконання
|
||||
|
||||
Ця частина додає контракт виконання `strict-agentic` з можливістю opt-in для вбудованих запусків Pi GPT-5.
|
||||
Цей зріз додає контракт виконання `strict-agentic` з увімкненням за вибором для вбудованих запусків Pi GPT-5.
|
||||
|
||||
Коли його ввімкнено, OpenClaw більше не приймає ходи лише з планом як «достатньо хороше» завершення. Якщо модель лише каже, що вона збирається зробити, але фактично не використовує інструменти й не просувається вперед, OpenClaw повторює спробу з вказівкою діяти негайно, а потім завершує з явним blocked-станом замість того, щоб тихо завершити завдання.
|
||||
Коли його ввімкнено, OpenClaw перестає вважати ходи лише з планом «достатньо хорошим» завершенням. Якщо модель лише каже, що вона збирається зробити, але фактично не використовує інструменти і не просувається вперед, OpenClaw повторює спробу зі спрямуванням діяти негайно, а потім завершує з явним заблокованим станом замість того, щоб мовчки завершити завдання.
|
||||
|
||||
Це найбільше покращує досвід GPT-5.4 у таких випадках:
|
||||
Це найбільше покращує досвід із GPT-5.4 у таких випадках:
|
||||
|
||||
- короткі підтвердження на кшталт «ок, зроби це»
|
||||
- короткі уточнення на кшталт «гаразд, зроби це»
|
||||
- завдання з кодом, де перший крок очевидний
|
||||
- потоки, де `update_plan` має бути відстеженням прогресу, а не текстом-заповнювачем
|
||||
- потоки, де `update_plan` має відстежувати прогрес, а не бути заповнювальним текстом
|
||||
|
||||
### PR B: правдивість runtime
|
||||
### PR B: правдивість середовища виконання
|
||||
|
||||
Ця частина змушує OpenClaw говорити правду про дві речі:
|
||||
Цей зріз змушує OpenClaw говорити правду про дві речі:
|
||||
|
||||
- чому виклик provider/runtime завершився помилкою
|
||||
- чому виклик провайдера/середовища виконання завершився помилкою
|
||||
- чи справді доступний `/elevated full`
|
||||
|
||||
Це означає, що GPT-5.4 отримує кращі сигнали runtime щодо відсутнього scope, помилок оновлення auth, HTML 403 auth failures, проблем із proxy, DNS або timeout, а також заблокованих режимів повного доступу. Модель менше схильна вигадувати неправильний спосіб усунення проблеми або продовжувати просити режим дозволів, який runtime не може надати.
|
||||
Це означає, що GPT-5.4 отримує кращі сигнали від середовища виконання щодо відсутньої області доступу, збоїв оновлення автентифікації, помилок автентифікації HTML 403, проблем із проксі, помилок DNS або тайм-аутів, а також заблокованих режимів повного доступу. Модель менш схильна вигадувати неправильний спосіб усунення проблеми або й надалі запитувати режим дозволів, який середовище виконання не може надати.
|
||||
|
||||
### PR C: коректність виконання
|
||||
|
||||
Ця частина покращує два види коректності:
|
||||
Цей зріз покращує два види коректності:
|
||||
|
||||
- сумісність схем інструментів OpenAI/Codex, що належать provider
|
||||
- видимість replay і життєвого циклу довгих завдань
|
||||
- сумісність схем інструментів OpenAI/Codex, якими володіє провайдер
|
||||
- відображення replay і життєздатності довгих завдань
|
||||
|
||||
Робота над сумісністю інструментів зменшує тертя зі схемами для суворої реєстрації інструментів OpenAI/Codex, особливо навколо інструментів без параметрів і очікувань суворого object-root. Робота над replay/liveness робить довготривалі завдання більш спостережуваними, тож paused, blocked і abandoned-стани стають видимими замість того, щоб зникати у загальному тексті помилки.
|
||||
Робота над сумісністю інструментів зменшує тертя зі схемами для суворої реєстрації інструментів OpenAI/Codex, особливо навколо інструментів без параметрів і суворих очікувань щодо кореня-об’єкта. Робота над replay/життєздатністю робить довготривалі завдання більш спостережуваними, тож призупинені, заблоковані та покинуті стани видно, а не приховано за загальним текстом про помилку.
|
||||
|
||||
### PR D: harness паритету
|
||||
### PR D: обв’язка паритету
|
||||
|
||||
Ця частина додає перший набір parity pack для QA-lab, щоб GPT-5.4 і Opus 4.6 можна було проганяти через ті самі сценарії й порівнювати за спільними доказами.
|
||||
Цей зріз додає перший пакет паритету QA-lab, щоб GPT-5.4 і Opus 4.6 можна було проганяти через однакові сценарії та порівнювати за спільними доказами.
|
||||
|
||||
Parity pack — це рівень доказів. Сам по собі він не змінює поведінку runtime.
|
||||
Пакет паритету — це рівень доказів. Сам по собі він не змінює поведінку середовища виконання.
|
||||
|
||||
Після того як у вас є два артефакти `qa-suite-summary.json`, згенеруйте порівняння release gate командою:
|
||||
Після того як у вас є два артефакти `qa-suite-summary.json`, згенеруйте порівняння для релізного gate за допомогою:
|
||||
|
||||
```bash
|
||||
pnpm openclaw qa parity-report \
|
||||
@ -70,160 +76,160 @@ pnpm openclaw qa parity-report \
|
||||
|
||||
Ця команда записує:
|
||||
|
||||
- Markdown-звіт, читабельний для людини
|
||||
- JSON-вердикт, читабельний для машини
|
||||
- Markdown-звіт, придатний для читання людиною
|
||||
- JSON-вердикт, придатний для читання машиною
|
||||
- явний результат gate `pass` / `fail`
|
||||
|
||||
## Чому це практично покращує GPT-5.4
|
||||
|
||||
До цієї роботи GPT-5.4 в OpenClaw міг здаватися менш агентним, ніж Opus, у реальних сесіях кодування, тому що runtime допускав поведінки, які особливо шкідливі для моделей у стилі GPT-5:
|
||||
До цієї роботи GPT-5.4 в OpenClaw міг здаватися менш агентним, ніж Opus, у реальних сесіях кодування, тому що середовище виконання допускало поведінку, яка особливо шкідлива для моделей у стилі GPT-5:
|
||||
|
||||
- ходи лише з коментарями
|
||||
- тертя схем навколо інструментів
|
||||
- нечіткий зворотний зв'язок щодо дозволів
|
||||
- тихі збої replay або compaction
|
||||
- нечіткий зворотний зв’язок щодо дозволів
|
||||
- тихі збої replay або Compaction
|
||||
|
||||
Мета не в тому, щоб змусити GPT-5.4 імітувати Opus. Мета в тому, щоб дати GPT-5.4 контракт runtime, який винагороджує реальний прогрес, надає чистішу семантику інструментів і дозволів та перетворює режими збоїв на явні стани, читабельні і для машини, і для людини.
|
||||
Мета не в тому, щоб змусити GPT-5.4 імітувати Opus. Мета в тому, щоб дати GPT-5.4 контракт середовища виконання, який винагороджує реальний прогрес, надає чистішу семантику інструментів і дозволів та перетворює режими збоїв на явні машино- і людиночитані стани.
|
||||
|
||||
Це змінює користувацький досвід із такого:
|
||||
Це змінює користувацький досвід із:
|
||||
|
||||
- «модель мала хороший план, але зупинилася»
|
||||
|
||||
на такий:
|
||||
на:
|
||||
|
||||
- «модель або подіяла, або OpenClaw показав точну причину, чому вона не змогла»
|
||||
- «модель або виконала дію, або OpenClaw показав точну причину, чому вона не змогла цього зробити»
|
||||
|
||||
## До і після для користувачів GPT-5.4
|
||||
|
||||
| До цієї програми | Після PR A-D |
|
||||
| --------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
|
||||
| GPT-5.4 міг зупинитися після розумного плану, не зробивши наступний крок з інструментом | PR A перетворює «лише план» на «дій зараз або покажи blocked-стан» |
|
||||
| Суворі схеми інструментів могли відхиляти інструменти без параметрів або у форматі OpenAI/Codex у заплутаний спосіб | PR C робить реєстрацію та виклик інструментів, що належать provider, більш передбачуваними |
|
||||
| Підказки щодо `/elevated full` могли бути нечіткими або хибними в заблокованих runtime | PR B дає GPT-5.4 і користувачу правдиві підказки runtime та дозволів |
|
||||
| Збої replay або compaction могли виглядати так, ніби завдання тихо зникло | PR C явно показує paused, blocked, abandoned і replay-invalid результати |
|
||||
| «GPT-5.4 відчувається гірше за Opus» було здебільшого анекдотичним | PR D перетворює це на той самий набір сценаріїв, ті самі метрики й жорсткий gate pass/fail |
|
||||
| До цієї програми | Після PR A-D |
|
||||
| ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------- |
|
||||
| GPT-5.4 міг зупинитися після розумного плану, не переходячи до наступного кроку з інструментом | PR A перетворює «лише план» на «дій зараз або покажи заблокований стан» |
|
||||
| Суворі схеми інструментів могли заплутано відхиляти інструменти без параметрів або інструменти у форматі OpenAI/Codex | PR C робить реєстрацію та виклик інструментів, якими володіє провайдер, більш передбачуваними |
|
||||
| Підказки щодо `/elevated full` могли бути нечіткими або неправильними в заблокованих середовищах виконання | PR B дає GPT-5.4 і користувачу правдиві підказки від середовища виконання та щодо дозволів |
|
||||
| Збої replay або Compaction могли виглядати так, ніби завдання просто тихо зникло | PR C явно показує результати paused, blocked, abandoned і replay-invalid |
|
||||
| «GPT-5.4 відчувається гіршим за Opus» було здебільшого анекдотичним твердженням | PR D перетворює це на той самий пакет сценаріїв, ті самі метрики та жорсткий gate pass/fail |
|
||||
|
||||
## Архітектура
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
A["Запит користувача"] --> B["Вбудований runtime Pi"]
|
||||
A["Запит користувача"] --> B["Вбудоване середовище виконання Pi"]
|
||||
B --> C["Контракт суворого агентного виконання"]
|
||||
B --> D["Сумісність інструментів, що належать provider"]
|
||||
B --> E["Правдивість runtime"]
|
||||
B --> F["Replay і стан життєвого циклу"]
|
||||
C --> G["Виклик інструмента або явний blocked-стан"]
|
||||
B --> D["Сумісність інструментів, якими володіє провайдер"]
|
||||
B --> E["Правдивість середовища виконання"]
|
||||
B --> F["Стан replay і життєздатності"]
|
||||
C --> G["Виклик інструмента або явний заблокований стан"]
|
||||
D --> G
|
||||
E --> G
|
||||
F --> G
|
||||
G --> H["Parity pack QA-lab"]
|
||||
H --> I["Звіт за сценаріями та parity gate"]
|
||||
G --> H["Пакет паритету QA-lab"]
|
||||
H --> I["Звіт за сценарієм і gate паритету"]
|
||||
```
|
||||
|
||||
## Потік релізу
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Об'єднані runtime-частини (PR A-C)"] --> B["Запустити parity pack GPT-5.4"]
|
||||
A --> C["Запустити parity pack Opus 4.6"]
|
||||
A["Об’єднані зрізи середовища виконання (PR A-C)"] --> B["Запустити пакет паритету GPT-5.4"]
|
||||
A --> C["Запустити пакет паритету Opus 4.6"]
|
||||
B --> D["qa-suite-summary.json"]
|
||||
C --> E["qa-suite-summary.json"]
|
||||
D --> F["openclaw qa parity-report"]
|
||||
E --> F
|
||||
F --> G["qa-agentic-parity-report.md"]
|
||||
F --> H["qa-agentic-parity-summary.json"]
|
||||
H --> I{"Gate pass?"}
|
||||
I -- "так" --> J["Твердження про паритет, підкріплене доказами"]
|
||||
I -- "ні" --> K["Залишити цикл runtime/review відкритим"]
|
||||
H --> I{"Gate пройдено?"}
|
||||
I -- "так" --> J["Твердження про паритет, підтверджене доказами"]
|
||||
I -- "ні" --> K["Залишити цикл середовища виконання/рев’ю відкритим"]
|
||||
```
|
||||
|
||||
## Набір сценаріїв
|
||||
## Пакет сценаріїв
|
||||
|
||||
Поточний parity pack першої хвилі охоплює п'ять сценаріїв:
|
||||
Наразі пакет паритету першої хвилі охоплює п’ять сценаріїв:
|
||||
|
||||
### `approval-turn-tool-followthrough`
|
||||
|
||||
Перевіряє, що модель не зупиняється на «Я це зроблю» після короткого підтвердження. Вона має виконати першу конкретну дію в тому ж самому ході.
|
||||
Перевіряє, що модель не зупиняється на «Я це зроблю» після короткого схвалення. Вона має виконати першу конкретну дію в тому ж ході.
|
||||
|
||||
### `model-switch-tool-continuity`
|
||||
|
||||
Перевіряє, що робота з інструментами залишається узгодженою через межі перемикання моделі/runtime, а не скидається до коментарів чи не втрачає контекст виконання.
|
||||
Перевіряє, що робота з використанням інструментів залишається зв’язною через межі перемикання моделі/середовища виконання, а не скидається до коментарів або не втрачає контекст виконання.
|
||||
|
||||
### `source-docs-discovery-report`
|
||||
|
||||
Перевіряє, що модель може читати вихідний код і документацію, синтезувати висновки й продовжувати завдання агентно, а не видавати коротке резюме й рано зупинятися.
|
||||
Перевіряє, що модель може читати вихідний код і документацію, синтезувати висновки та продовжувати завдання агентно, а не видавати поверхневий підсумок і зупинятися надто рано.
|
||||
|
||||
### `image-understanding-attachment`
|
||||
|
||||
Перевіряє, що змішані завдання з вкладеннями залишаються виконуваними й не зводяться до розмитого опису.
|
||||
Перевіряє, що задачі змішаного режиму з вкладеннями залишаються придатними до виконання та не зводяться до нечіткої оповіді.
|
||||
|
||||
### `compaction-retry-mutating-tool`
|
||||
|
||||
Перевіряє, що завдання з реальним mutating write зберігає явну ознаку небезпеки replay замість того, щоб тихо виглядати безпечним для replay, якщо виконання зазнає compaction, retry або втрачає стан відповіді під навантаженням.
|
||||
Перевіряє, що завдання з реальною мутаційною операцією запису зберігає явну небезпеку replay, замість того щоб тихо виглядати replay-safe, якщо запуск зазнає Compaction, повторної спроби або втрати стану відповіді під тиском.
|
||||
|
||||
## Матриця сценаріїв
|
||||
|
||||
| Сценарій | Що він перевіряє | Хороша поведінка GPT-5.4 | Сигнал збою |
|
||||
| ---------------------------------- | ---------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
|
||||
| `approval-turn-tool-followthrough` | Короткі підтвердження після плану | Одразу починає першу конкретну дію з інструментом замість повторення наміру | підтвердження лише з планом, без активності інструментів або blocked-хід без реального блокера |
|
||||
| `model-switch-tool-continuity` | Перемикання runtime/моделі під час роботи з інструментами | Зберігає контекст завдання й продовжує діяти узгоджено | скидається до коментарів, втрачає контекст інструментів або зупиняється після перемикання |
|
||||
| `source-docs-discovery-report` | Читання коду + синтез + дія | Знаходить джерела, використовує інструменти й створює корисний звіт без зависання | коротке резюме, відсутня робота з інструментами або зупинка на незавершеному ході |
|
||||
| `image-understanding-attachment` | Агентна робота на основі вкладень | Інтерпретує вкладення, пов'язує його з інструментами й продовжує завдання | розмитий опис, вкладення проігноровано або немає конкретної наступної дії |
|
||||
| `compaction-retry-mutating-tool` | Змінювальна робота під тиском compaction | Виконує реальний запис і зберігає явну ознаку небезпеки replay після побічного ефекту | mutating write відбувається, але безпечність replay мається на увазі, відсутня або суперечлива |
|
||||
| Сценарій | Що він перевіряє | Хороша поведінка GPT-5.4 | Сигнал збою |
|
||||
| ---------------------------------- | ----------------------------------------- | ---------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
|
||||
| `approval-turn-tool-followthrough` | Короткі ходи схвалення після плану | Одразу починає першу конкретну дію з інструментом замість повторення наміру | подальший хід лише з планом, відсутність активності інструментів або заблокований хід без реального блокера |
|
||||
| `model-switch-tool-continuity` | Перемикання середовища виконання/моделі під час використання інструментів | Зберігає контекст завдання і продовжує діяти зв’язно | скидається до коментарів, втрачає контекст інструментів або зупиняється після перемикання |
|
||||
| `source-docs-discovery-report` | Читання джерел + синтез + дія | Знаходить джерела, використовує інструменти та створює корисний звіт без зависання | поверхневий підсумок, відсутня робота з інструментами або зупинка на незавершеному ході |
|
||||
| `image-understanding-attachment` | Агентна робота на основі вкладення | Інтерпретує вкладення, пов’язує його з інструментами й продовжує завдання | нечітка оповідь, вкладення проігноровано або відсутня конкретна наступна дія |
|
||||
| `compaction-retry-mutating-tool` | Мутаційна робота під тиском Compaction | Виконує реальний запис і зберігає явну небезпеку replay після побічного ефекту | відбувається мутаційний запис, але безпечність replay мається на увазі, відсутня або суперечлива |
|
||||
|
||||
## Release gate
|
||||
|
||||
GPT-5.4 можна вважати таким, що досяг паритету або перевершив його, лише коли об'єднаний runtime одночасно проходить parity pack і регресійні перевірки правдивості runtime.
|
||||
GPT-5.4 можна вважати таким, що досяг паритету або перевершив його, лише тоді, коли об’єднане середовище виконання одночасно проходить пакет паритету та регресії правдивості середовища виконання.
|
||||
|
||||
Необхідні результати:
|
||||
|
||||
- відсутність зупинки на плані, коли наступна дія з інструментом очевидна
|
||||
- відсутність фальшивого завершення без реального виконання
|
||||
- відсутність неправильних підказок щодо `/elevated full`
|
||||
- відсутність тихого abandon через replay або compaction
|
||||
- метрики parity pack щонайменше такі самі сильні, як у погодженого baseline Opus 4.6
|
||||
- жодного зависання на рівні лише плану, коли наступна дія з інструментом очевидна
|
||||
- жодного фальшивого завершення без реального виконання
|
||||
- жодних неправильних підказок щодо `/elevated full`
|
||||
- жодного тихого покидання через replay або Compaction
|
||||
- метрики пакета паритету не слабші за погоджений базовий рівень Opus 4.6
|
||||
|
||||
Для harness першої хвилі gate порівнює:
|
||||
Для обв’язки першої хвилі gate порівнює:
|
||||
|
||||
- completion rate
|
||||
- unintended-stop rate
|
||||
- valid-tool-call rate
|
||||
- fake-success count
|
||||
- рівень завершення
|
||||
- рівень ненавмисних зупинок
|
||||
- рівень коректних викликів інструментів
|
||||
- кількість фальшивих успіхів
|
||||
|
||||
Докази паритету навмисно розділено на два рівні:
|
||||
|
||||
- PR D доводить поведінку GPT-5.4 vs Opus 4.6 на тих самих сценаріях за допомогою QA-lab
|
||||
- детерміновані набори PR B доводять правдивість auth, proxy, DNS і `/elevated full` поза межами harness
|
||||
- PR D доводить поведінку GPT-5.4 проти Opus 4.6 в однакових сценаріях через QA-lab
|
||||
- детерміновані набори PR B доводять правдивість auth, proxy, DNS і `/elevated full` поза межами обв’язки
|
||||
|
||||
## Матриця «ціль → доказ»
|
||||
|
||||
| Елемент completion gate | Власник PR | Джерело доказів | Сигнал проходження |
|
||||
| ------------------------------------------------------ | ----------- | ------------------------------------------------------------------ | --------------------------------------------------------------------------------------- |
|
||||
| GPT-5.4 більше не зависає після планування | PR A | `approval-turn-tool-followthrough` плюс runtime-набори PR A | ходи з підтвердженням запускають реальну роботу або явний blocked-стан |
|
||||
| GPT-5.4 більше не імітує прогрес або фальшиве завершення інструментів | PR A + PR D | результати сценаріїв у parity report і fake-success count | немає підозрілих pass-результатів і немає завершення лише з коментарями |
|
||||
| GPT-5.4 більше не дає хибних підказок щодо `/elevated full` | PR B | детерміновані набори перевірки правдивості | причини блокування й підказки повного доступу залишаються точними щодо runtime |
|
||||
| Збої replay/liveness залишаються явними | PR C + PR D | lifecycle/replay-набори PR C плюс `compaction-retry-mutating-tool` | змінювальна робота зберігає явну ознаку небезпеки replay замість того, щоб тихо зникати |
|
||||
| GPT-5.4 відповідає або перевершує Opus 4.6 за погодженими метриками | PR D | `qa-agentic-parity-report.md` і `qa-agentic-parity-summary.json` | те саме покриття сценаріїв і відсутність регресу в completion, stop-behavior або коректному використанні інструментів |
|
||||
| Пункт gate завершення | Відповідальний PR | Джерело доказу | Сигнал проходження |
|
||||
| ------------------------------------------------------- | ----------------- | ------------------------------------------------------------------ | --------------------------------------------------------------------------------------- |
|
||||
| GPT-5.4 більше не зависає після планування | PR A | `approval-turn-tool-followthrough` плюс набори середовища виконання PR A | ходи схвалення запускають реальну роботу або явний заблокований стан |
|
||||
| GPT-5.4 більше не імітує прогрес або фальшиве завершення інструмента | PR A + PR D | результати сценаріїв у звіті паритету та кількість фальшивих успіхів | немає підозрілих результатів проходження і немає завершення лише коментарями |
|
||||
| GPT-5.4 більше не дає хибних підказок щодо `/elevated full` | PR B | детерміновані набори правдивості | причини блокування та підказки щодо повного доступу залишаються точними відносно середовища виконання |
|
||||
| Збої replay/життєздатності залишаються явними | PR C + PR D | набори життєвого циклу/replay PR C плюс `compaction-retry-mutating-tool` | мутаційна робота зберігає явну небезпеку replay замість того, щоб тихо зникати |
|
||||
| GPT-5.4 відповідає або перевершує Opus 4.6 за погодженими метриками | PR D | `qa-agentic-parity-report.md` і `qa-agentic-parity-summary.json` | однакове покриття сценаріїв і відсутність регресії в завершенні, поведінці зупинки або коректному використанні інструментів |
|
||||
|
||||
## Як читати parity verdict
|
||||
## Як читати вердикт паритету
|
||||
|
||||
Використовуйте verdict у `qa-agentic-parity-summary.json` як фінальне машиночитне рішення для parity pack першої хвилі.
|
||||
Використовуйте вердикт у `qa-agentic-parity-summary.json` як остаточне машиночитане рішення для пакета паритету першої хвилі.
|
||||
|
||||
- `pass` означає, що GPT-5.4 покрив ті самі сценарії, що й Opus 4.6, і не погіршив погоджені агреговані метрики.
|
||||
- `fail` означає, що спрацював принаймні один жорсткий gate: слабше completion, гірші unintended stops, слабше коректне використання інструментів, будь-який випадок fake-success або невідповідне покриття сценаріїв.
|
||||
- «shared/base CI issue» саме по собі не є результатом паритету. Якщо шум CI поза межами PR D блокує прогін, verdict має чекати на чисте виконання merged-runtime, а не виводитися з логів епохи гілки.
|
||||
- Правдивість auth, proxy, DNS і `/elevated full` як і раніше підтверджується детермінованими наборами PR B, тож фінальне твердження для релізу потребує обох умов: verdict паритету PR D із результатом pass і зелений статус покриття правдивості PR B.
|
||||
- `pass` означає, що GPT-5.4 охопив ті самі сценарії, що й Opus 4.6, і не дав регресії за погодженими агрегованими метриками.
|
||||
- `fail` означає, що спрацював принаймні один жорсткий gate: слабше завершення, гірші ненавмисні зупинки, слабше коректне використання інструментів, будь-який випадок фальшивого успіху або невідповідне покриття сценаріїв.
|
||||
- «shared/base CI issue» сам по собі не є результатом паритету. Якщо шум CI поза межами PR D блокує прогін, вердикт має чекати на чисте виконання в об’єднаному середовищі виконання, а не виводитися з логів епохи гілки.
|
||||
- Правдивість auth, proxy, DNS і `/elevated full` як і раніше походить із детермінованих наборів PR B, тому для фінального твердження про реліз потрібні обидва пункти: успішний вердикт паритету PR D і зелена правдивісна перевірка PR B.
|
||||
|
||||
## Кому слід вмикати `strict-agentic`
|
||||
|
||||
Використовуйте `strict-agentic`, коли:
|
||||
|
||||
- очікується, що агент діятиме негайно, якщо наступний крок очевидний
|
||||
- GPT-5.4 або моделі сімейства Codex є основним runtime
|
||||
- ви віддаєте перевагу явним blocked-станам замість «корисних» відповідей лише з підсумком
|
||||
- очікується, що агент діятиме негайно, коли наступний крок очевидний
|
||||
- GPT-5.4 або моделі сімейства Codex є основним середовищем виконання
|
||||
- ви надаєте перевагу явним заблокованим станам замість «корисних» відповідей лише з підсумком
|
||||
|
||||
Залишайте контракт за замовчуванням, коли:
|
||||
|
||||
- вам потрібна наявна, менш сувора поведінка
|
||||
- вам потрібна наявна м’якша поведінка
|
||||
- ви не використовуєте моделі сімейства GPT-5
|
||||
- ви тестуєте prompt, а не enforcement на рівні runtime
|
||||
- ви тестуєте prompts, а не примусове дотримання на рівні середовища виконання
|
||||
|
||||
@ -1,61 +1,58 @@
|
||||
---
|
||||
read_when:
|
||||
- Проєктування або рефакторинг розуміння медіа
|
||||
- Налаштування попередньої обробки вхідного аудіо/відео/зображень
|
||||
summary: Розуміння вхідних зображень/аудіо/відео (необов’язково) з резервними варіантами через провайдера та CLI
|
||||
- Налаштування попередньої обробки вхідних аудіо/відео/зображень
|
||||
summary: Вхідне розуміння зображень/аудіо/відео (необов’язково) із запасними варіантами для провайдера та CLI
|
||||
title: Розуміння медіа
|
||||
x-i18n:
|
||||
generated_at: "2026-04-05T18:09:57Z"
|
||||
generated_at: "2026-04-21T21:37:36Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: fe36bd42250d48d12f4ff549e8644afa7be8e42ee51f8aff4f21f81b7ff060f4
|
||||
source_hash: 0d80c9bcd965b521c3c782a76b9dd31eb6e6c635d8a1cc6895b6ccfaf5f9492e
|
||||
source_path: nodes/media-understanding.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Розуміння медіа - вхідні дані (2026-01-17)
|
||||
# Розуміння медіа — вхідне (2026-01-17)
|
||||
|
||||
OpenClaw може **підсумовувати вхідні медіа** (зображення/аудіо/відео) до запуску конвеєра відповіді. Він автоматично визначає, коли доступні локальні інструменти або ключі провайдерів, і може бути вимкнений або налаштований. Якщо розуміння вимкнено, моделі, як і раніше, отримують оригінальні файли/URL.
|
||||
OpenClaw може **узагальнювати вхідні медіа** (зображення/аудіо/відео) до запуску конвеєра відповіді. Він автоматично визначає, коли доступні локальні інструменти або ключі провайдера, і може бути вимкнений або налаштований. Якщо розуміння вимкнене, моделі все одно отримують вихідні файли/URL-адреси як зазвичай.
|
||||
|
||||
Поведінку медіа, специфічну для постачальника, реєструють плагіни постачальників, тоді як
|
||||
core OpenClaw відповідає за спільну конфігурацію `tools.media`, порядок fallback і
|
||||
інтеграцію з конвеєром відповідей.
|
||||
Поведінка медіа, специфічна для постачальника, реєструється через плагіни постачальників, тоді як ядро OpenClaw володіє спільною конфігурацією `tools.media`, порядком запасних варіантів і інтеграцією з конвеєром відповіді.
|
||||
|
||||
## Цілі
|
||||
|
||||
- Необов’язково: попередньо стисло обробляти вхідні медіа в короткий текст для швидшої маршрутизації та кращого розбору команд.
|
||||
- Завжди зберігати доставку оригінальних медіа до моделі.
|
||||
- Підтримувати **API провайдерів** і **CLI fallback**.
|
||||
- Дозволяти кілька моделей із впорядкованим fallback (помилка/розмір/тайм-аут).
|
||||
- Необов’язково: попередньо зводити вхідні медіа до короткого тексту для швидшої маршрутизації та кращого розбору команд.
|
||||
- Завжди зберігати передавання оригінальних медіа до моделі.
|
||||
- Підтримувати **API провайдерів** і **запасні варіанти через CLI**.
|
||||
- Дозволяти кілька моделей з упорядкованим запасним переходом (помилка/розмір/тайм-аут).
|
||||
|
||||
## Поведінка на високому рівні
|
||||
|
||||
1. Зібрати вхідні вкладення (`MediaPaths`, `MediaUrls`, `MediaTypes`).
|
||||
2. Для кожної ввімкненої можливості (image/audio/video) вибрати вкладення згідно з політикою (типово: **перше**).
|
||||
3. Вибрати перший придатний запис моделі (розмір + можливість + auth).
|
||||
4. Якщо модель завершується помилкою або медіа надто велике, **перейти до наступного запису**.
|
||||
2. Для кожної ввімкненої можливості (зображення/аудіо/відео) вибрати вкладення згідно з політикою (типово: **перше**).
|
||||
3. Вибрати перший придатний запис моделі (розмір + можливість + автентифікація).
|
||||
4. Якщо модель завершується помилкою або медіа завелике, **перейти до наступного запису**.
|
||||
5. У разі успіху:
|
||||
- `Body` стає блоком `[Image]`, `[Audio]` або `[Video]`.
|
||||
- Для аудіо задається `{{Transcript}}`; під час розбору команди використовується текст підпису, якщо він є,
|
||||
інакше — транскрипт.
|
||||
- Підписи зберігаються як `User text:` усередині блока.
|
||||
- Для аудіо встановлюється `{{Transcript}}`; розбір команд використовує текст підпису, якщо він є, інакше — транскрипт.
|
||||
- Підписи зберігаються як `User text:` усередині блоку.
|
||||
|
||||
Якщо розуміння завершується помилкою або вимкнено, **потік відповіді продовжується** з оригінальним body + вкладеннями.
|
||||
Якщо розуміння не вдається або вимкнене, **потік відповіді продовжується** з оригінальним тілом і вкладеннями.
|
||||
|
||||
## Огляд конфігурації
|
||||
|
||||
`tools.media` підтримує **спільні моделі** плюс перевизначення для кожної можливості:
|
||||
`tools.media` підтримує **спільні моделі** та перевизначення для кожної можливості окремо:
|
||||
|
||||
- `tools.media.models`: спільний список моделей (використовуйте `capabilities` для обмеження).
|
||||
- `tools.media.image` / `tools.media.audio` / `tools.media.video`:
|
||||
- типові значення (`prompt`, `maxChars`, `maxBytes`, `timeoutSeconds`, `language`)
|
||||
- перевизначення провайдера (`baseUrl`, `headers`, `providerOptions`)
|
||||
- параметри аудіо Deepgram через `tools.media.audio.providerOptions.deepgram`
|
||||
- керування echo для транскриптів аудіо (`echoTranscript`, типово `false`; `echoFormat`)
|
||||
- необов’язковий **список `models` для конкретної можливості** (має пріоритет перед спільними моделями)
|
||||
- параметри Deepgram для аудіо через `tools.media.audio.providerOptions.deepgram`
|
||||
- параметри повторного виведення транскрипту аудіо (`echoTranscript`, типово `false`; `echoFormat`)
|
||||
- необов’язковий **список `models` для окремої можливості** (має пріоритет над спільними моделями)
|
||||
- політика `attachments` (`mode`, `maxAttachments`, `prefer`)
|
||||
- `scope` (необов’язкове gating за channel/chatType/session key)
|
||||
- `tools.media.concurrency`: максимальна кількість паралельних запусків можливостей (типово **2**).
|
||||
- `scope` (необов’язкове обмеження за channel/chatType/session key)
|
||||
- `tools.media.concurrency`: максимальна кількість одночасних запусків можливостей (типово **2**).
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -82,7 +79,7 @@ core OpenClaw відповідає за спільну конфігурацію
|
||||
|
||||
### Записи моделей
|
||||
|
||||
Кожен запис `models[]` може бути **provider** або **CLI**:
|
||||
Кожен запис у `models[]` може бути **provider** або **CLI**:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -121,55 +118,50 @@ core OpenClaw відповідає за спільну конфігурацію
|
||||
|
||||
- `{{MediaDir}}` (каталог, що містить медіафайл)
|
||||
- `{{OutputDir}}` (тимчасовий каталог, створений для цього запуску)
|
||||
- `{{OutputBase}}` (базовий шлях до тимчасового файла без розширення)
|
||||
- `{{OutputBase}}` (базовий шлях тимчасового файла, без розширення)
|
||||
|
||||
## Типові значення та обмеження
|
||||
|
||||
Рекомендовані типові значення:
|
||||
|
||||
- `maxChars`: **500** для image/video (коротко, зручно для команд)
|
||||
- `maxChars`: **500** для зображень/відео (коротко, зручно для команд)
|
||||
- `maxChars`: **не задано** для аудіо (повний транскрипт, якщо ви не встановите обмеження)
|
||||
- `maxBytes`:
|
||||
- image: **10MB**
|
||||
- audio: **20MB**
|
||||
- video: **50MB**
|
||||
- зображення: **10MB**
|
||||
- аудіо: **20MB**
|
||||
- відео: **50MB**
|
||||
|
||||
Правила:
|
||||
|
||||
- Якщо медіа перевищує `maxBytes`, ця модель пропускається, і **пробується наступна модель**.
|
||||
- Аудіофайли, менші за **1024 bytes**, вважаються порожніми/пошкодженими і пропускаються до транскрибування через provider/CLI.
|
||||
- Якщо модель повертає більше ніж `maxChars`, результат обрізається.
|
||||
- Для `prompt` типовим є просте “Describe the {media}.” плюс вказівка щодо `maxChars` (лише для image/video).
|
||||
- Якщо активна основна image model уже нативно підтримує vision, OpenClaw
|
||||
пропускає блок підсумку `[Image]` і натомість передає
|
||||
оригінальне зображення в модель.
|
||||
- Якщо `<capability>.enabled: true`, але моделі не налаштовано, OpenClaw пробує
|
||||
**активну модель відповіді**, якщо її провайдер підтримує цю можливість.
|
||||
- Якщо медіа перевищує `maxBytes`, цю модель пропускають і **пробують наступну модель**.
|
||||
- Аудіофайли менші за **1024 байти** вважаються порожніми/пошкодженими та пропускаються до транскрибування через provider/CLI.
|
||||
- Якщо модель повертає більше ніж `maxChars`, вивід обрізається.
|
||||
- Типове значення `prompt` — просте «Describe the {media}.» плюс вказівка щодо `maxChars` (лише для зображень/відео).
|
||||
- Якщо активна основна модель для зображень уже нативно підтримує vision, OpenClaw пропускає блок зведення `[Image]` і натомість передає оригінальне зображення до моделі.
|
||||
- Явні запити `openclaw infer image describe --model <provider/model>` відрізняються: вони напряму запускають цей provider/model із підтримкою зображень, зокрема посилання Ollama, як-от `ollama/qwen2.5vl:7b`.
|
||||
- Якщо `<capability>.enabled: true`, але моделі не налаштовані, OpenClaw намагається використати **активну модель відповіді**, якщо її провайдер підтримує цю можливість.
|
||||
|
||||
### Автовизначення розуміння медіа (типово)
|
||||
|
||||
Якщо `tools.media.<capability>.enabled` **не** встановлено в `false` і ви не
|
||||
налаштували моделі, OpenClaw виконує автовизначення в такому порядку і **зупиняється на першому
|
||||
працюючому варіанті**:
|
||||
Якщо `tools.media.<capability>.enabled` **не** встановлено в `false` і ви не налаштували моделі, OpenClaw автоматично визначає варіант у такому порядку і **зупиняється на першому робочому варіанті**:
|
||||
|
||||
1. **Активна модель відповіді**, якщо її провайдер підтримує цю можливість.
|
||||
2. **`agents.defaults.imageModel`** primary/fallback refs (лише для image).
|
||||
3. **Локальні CLI** (лише для audio; якщо встановлено)
|
||||
2. Основні/запасні посилання **`agents.defaults.imageModel`** (лише для зображень).
|
||||
3. **Локальні CLI** (лише для аудіо; якщо встановлені)
|
||||
- `sherpa-onnx-offline` (потребує `SHERPA_ONNX_MODEL_DIR` з encoder/decoder/joiner/tokens)
|
||||
- `whisper-cli` (`whisper-cpp`; використовує `WHISPER_CPP_MODEL` або вбудовану tiny model)
|
||||
- `whisper` (CLI Python; автоматично завантажує моделі)
|
||||
- `whisper-cli` (`whisper-cpp`; використовує `WHISPER_CPP_MODEL` або вбудовану tiny-модель)
|
||||
- `whisper` (Python CLI; автоматично завантажує моделі)
|
||||
4. **Gemini CLI** (`gemini`) з використанням `read_many_files`
|
||||
5. **Автентифікація провайдера**
|
||||
- Налаштовані записи `models.providers.*`, що підтримують цю можливість,
|
||||
пробуються до вбудованого порядку fallback.
|
||||
- Провайдери конфігурації лише для image з image-capable model автоматично реєструються для
|
||||
розуміння медіа, навіть якщо вони не є вбудованим vendor plugin.
|
||||
- Вбудований порядок fallback:
|
||||
- Audio: OpenAI → Groq → Deepgram → Google → Mistral
|
||||
- Image: OpenAI → Anthropic → Google → MiniMax → MiniMax Portal → Z.AI
|
||||
- Video: Google → Qwen → Moonshot
|
||||
- Налаштовані записи `models.providers.*`, що підтримують цю можливість, перевіряються раніше за вбудований порядок запасних варіантів.
|
||||
- Провайдери з конфігурації лише для зображень із моделлю, що підтримує зображення, автоматично реєструються для розуміння медіа, навіть якщо вони не є вбудованим плагіном постачальника.
|
||||
- Розуміння зображень Ollama доступне за явного вибору, наприклад через `agents.defaults.imageModel` або `openclaw infer image describe --model ollama/<vision-model>`.
|
||||
- Вбудований порядок запасних варіантів:
|
||||
- Аудіо: OpenAI → Groq → Deepgram → Google → Mistral
|
||||
- Зображення: OpenAI → Anthropic → Google → MiniMax → MiniMax Portal → Z.AI
|
||||
- Відео: Google → Qwen → Moonshot
|
||||
|
||||
Щоб вимкнути автовизначення, задайте:
|
||||
Щоб вимкнути автовизначення, встановіть:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -183,26 +175,23 @@ core OpenClaw відповідає за спільну конфігурацію
|
||||
}
|
||||
```
|
||||
|
||||
Примітка: визначення бінарників виконується best-effort у macOS/Linux/Windows; переконайтеся, що CLI є в `PATH` (ми розгортаємо `~`), або задайте явну CLI model з повним шляхом до команди.
|
||||
Примітка: виявлення бінарних файлів виконується за принципом best-effort у macOS/Linux/Windows; переконайтеся, що CLI є в `PATH` (ми розгортаємо `~`), або задайте явну CLI-модель із повним шляхом до команди.
|
||||
|
||||
### Підтримка proxy environment (моделі провайдерів)
|
||||
### Підтримка проксі-середовища (provider-моделі)
|
||||
|
||||
Коли ввімкнено розуміння медіа через провайдера для **audio** та **video**, OpenClaw
|
||||
враховує стандартні змінні середовища вихідного проксі для HTTP-викликів провайдера:
|
||||
Коли ввімкнене розуміння медіа **audio** і **video** на основі провайдера, OpenClaw враховує стандартні змінні середовища вихідного проксі для HTTP-викликів до провайдера:
|
||||
|
||||
- `HTTPS_PROXY`
|
||||
- `HTTP_PROXY`
|
||||
- `https_proxy`
|
||||
- `http_proxy`
|
||||
|
||||
Якщо змінні середовища проксі не задано, розуміння медіа використовує прямий вихід.
|
||||
Якщо значення проксі некоректне, OpenClaw записує попередження в журнал і повертається до прямого
|
||||
отримання.
|
||||
Якщо змінні середовища проксі не встановлені, розуміння медіа використовує прямий вихід у мережу.
|
||||
Якщо значення проксі некоректно сформоване, OpenClaw записує попередження в журнал і повертається до прямого отримання.
|
||||
|
||||
## Можливості (необов’язково)
|
||||
|
||||
Якщо ви задаєте `capabilities`, запис виконується лише для цих типів медіа. Для спільних
|
||||
списків OpenClaw може вивести типові значення:
|
||||
Якщо ви задаєте `capabilities`, запис запускається лише для цих типів медіа. Для спільних списків OpenClaw може виводити типові значення:
|
||||
|
||||
- `openai`, `anthropic`, `minimax`: **image**
|
||||
- `minimax-portal`: **image**
|
||||
@ -214,60 +203,49 @@ core OpenClaw відповідає за спільну конфігурацію
|
||||
- `zai`: **image**
|
||||
- `groq`: **audio**
|
||||
- `deepgram`: **audio**
|
||||
- Будь-який каталог `models.providers.<id>.models[]` з image-capable model:
|
||||
**image**
|
||||
- Будь-який каталог `models.providers.<id>.models[]` із моделлю, що підтримує зображення: **image**
|
||||
|
||||
Для CLI-записів **задавайте `capabilities` явно**, щоб уникнути несподіваних збігів.
|
||||
Якщо `capabilities` пропущено, запис придатний для списку, в якому він розміщений.
|
||||
Для записів CLI **явно задавайте `capabilities`**, щоб уникнути неочікуваних збігів.
|
||||
Якщо `capabilities` не вказано, запис придатний для списку, у якому він з’являється.
|
||||
|
||||
## Матриця підтримки провайдерів (інтеграції OpenClaw)
|
||||
|
||||
| Можливість | Інтеграція провайдера | Примітки |
|
||||
| ---------- | ------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Image | OpenAI, OpenRouter, Anthropic, Google, MiniMax, Moonshot, Qwen, Z.AI, config providers | Vendor plugins реєструють підтримку image; MiniMax і MiniMax OAuth обидва використовують `MiniMax-VL-01`; image-capable config providers реєструються автоматично. |
|
||||
| Audio | OpenAI, Groq, Deepgram, Google, Mistral | Транскрибування через провайдера (Whisper/Deepgram/Gemini/Voxtral). |
|
||||
| Video | Google, Qwen, Moonshot | Розуміння video через vendor plugins; розуміння video у Qwen використовує стандартні ендпоїнти DashScope. |
|
||||
| Можливість | Інтеграція провайдера | Примітки |
|
||||
| ---------- | ---------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Зображення | OpenAI, OpenRouter, Anthropic, Google, MiniMax, Moonshot, Qwen, Z.AI, config providers | Плагіни постачальників реєструють підтримку зображень; MiniMax і MiniMax OAuth обидва використовують `MiniMax-VL-01`; config providers із підтримкою зображень реєструються автоматично. |
|
||||
| Аудіо | OpenAI, Groq, Deepgram, Google, Mistral | Транскрибування провайдера (Whisper/Deepgram/Gemini/Voxtral). |
|
||||
| Відео | Google, Qwen, Moonshot | Розуміння відео провайдером через плагіни постачальників; розуміння відео Qwen використовує стандартні кінцеві точки DashScope. |
|
||||
|
||||
Примітка щодо MiniMax:
|
||||
|
||||
- Розуміння image у `minimax` і `minimax-portal` походить із plugin-owned
|
||||
медіапровайдера `MiniMax-VL-01`.
|
||||
- Вбудований текстовий каталог MiniMax як і раніше починається лише з тексту; явні
|
||||
записи `models.providers.minimax` матеріалізують image-capable M2.7 chat refs.
|
||||
- Розуміння зображень `minimax` і `minimax-portal` походить із медіапровайдера `MiniMax-VL-01`, що належить плагіну.
|
||||
- Вбудований текстовий каталог MiniMax усе ще починається лише з тексту; явні записи `models.providers.minimax` матеріалізують M2.7 chat refs із підтримкою зображень.
|
||||
|
||||
## Рекомендації щодо вибору моделі
|
||||
|
||||
- Надавайте перевагу найсильнішій доступній моделі останнього покоління для кожної медіаможливості, коли важливі якість і безпека.
|
||||
- Для агентів з увімкненими інструментами, які працюють із недовіреним вводом, уникайте старіших/слабших медіамоделей.
|
||||
- Тримайте принаймні один fallback для кожної можливості для доступності (якісна модель + швидша/дешевша модель).
|
||||
- CLI fallback (`whisper-cli`, `whisper`, `gemini`) корисні, коли API провайдерів недоступні.
|
||||
- Примітка щодо `parakeet-mlx`: із `--output-dir` OpenClaw читає `<output-dir>/<media-basename>.txt`, коли формат виводу — `txt` (або не задано); формати, відмінні від `txt`, резервно використовують stdout.
|
||||
- Віддавайте перевагу найсильнішій моделі останнього покоління, доступній для кожної медіаможливості, коли важливі якість і безпека.
|
||||
- Для агентів з увімкненими інструментами, які обробляють недовірені вхідні дані, уникайте старіших/слабших медіамоделей.
|
||||
- Тримайте принаймні один запасний варіант для кожної можливості задля доступності (якісна модель + швидша/дешевша модель).
|
||||
- Запасні варіанти CLI (`whisper-cli`, `whisper`, `gemini`) корисні, коли API провайдерів недоступні.
|
||||
- Примітка про `parakeet-mlx`: з `--output-dir` OpenClaw читає `<output-dir>/<media-basename>.txt`, коли формат виводу — `txt` (або не вказаний); формати, відмінні від `txt`, повертаються до stdout.
|
||||
|
||||
## Політика вкладень
|
||||
|
||||
Параметр `attachments` для кожної можливості керує тим, які вкладення обробляються:
|
||||
`attachments` для кожної можливості визначає, які вкладення обробляються:
|
||||
|
||||
- `mode`: `first` (типово) або `all`
|
||||
- `maxAttachments`: обмеження кількості оброблюваних вкладень (типово **1**)
|
||||
- `maxAttachments`: обмежує кількість оброблюваних елементів (типово **1**)
|
||||
- `prefer`: `first`, `last`, `path`, `url`
|
||||
|
||||
Коли `mode: "all"`, результати мають мітки `[Image 1/2]`, `[Audio 2/2]` тощо.
|
||||
Коли `mode: "all"`, результати позначаються як `[Image 1/2]`, `[Audio 2/2]` тощо.
|
||||
|
||||
Поведінка витягування файлових вкладень:
|
||||
Поведінка вилучення з файлових вкладень:
|
||||
|
||||
- Витягнутий текст файлу обгортається як **недовірений зовнішній вміст** перед тим, як
|
||||
додається до медіапромпта.
|
||||
- Вставлений блок використовує явні маркери меж на кшталт
|
||||
`<<<EXTERNAL_UNTRUSTED_CONTENT id="...">>>` /
|
||||
`<<<END_EXTERNAL_UNTRUSTED_CONTENT id="...">>>` і містить рядок метаданих
|
||||
`Source: External`.
|
||||
- Цей шлях витягування вкладень навмисно не містить довгого банера
|
||||
`SECURITY NOTICE:`, щоб не роздувати медіапромпт; маркери меж
|
||||
і метадані все одно зберігаються.
|
||||
- Якщо файл не містить тексту, який можна витягти, OpenClaw вставляє `[No extractable text]`.
|
||||
- Якщо PDF у цьому шляху резервно переходить до рендерингу сторінок у зображення, медіапромпт зберігає
|
||||
заповнювач `[PDF content rendered to images; images not forwarded to model]`,
|
||||
оскільки цей крок витягування вкладень передає текстові блоки, а не відрендерені зображення PDF.
|
||||
- Вилучений текст файла обгортається як **недовірений зовнішній вміст**, перш ніж його буде додано до запиту медіа.
|
||||
- Впроваджений блок використовує явні маркери меж, такі як `<<<EXTERNAL_UNTRUSTED_CONTENT id="...">>>` / `<<<END_EXTERNAL_UNTRUSTED_CONTENT id="...">>>`, і містить рядок метаданих `Source: External`.
|
||||
- Цей шлях вилучення вкладень навмисно не включає довгий банер `SECURITY NOTICE:`, щоб не роздувати запит медіа; маркери меж і метадані все одно зберігаються.
|
||||
- Якщо файл не має тексту, придатного до вилучення, OpenClaw вставляє `[No extractable text]`.
|
||||
- Якщо PDF на цьому шляху повертається до зображень відрендерених сторінок, запит медіа зберігає заповнювач `[PDF content rendered to images; images not forwarded to model]`, оскільки цей крок вилучення вкладень передає текстові блоки, а не відрендерені зображення PDF.
|
||||
|
||||
## Приклади конфігурації
|
||||
|
||||
@ -308,7 +286,7 @@ core OpenClaw відповідає за спільну конфігурацію
|
||||
}
|
||||
```
|
||||
|
||||
### 2) Лише Audio + Video (image вимкнено)
|
||||
### 2) Лише аудіо + відео (зображення вимкнено)
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -348,7 +326,7 @@ core OpenClaw відповідає за спільну конфігурацію
|
||||
}
|
||||
```
|
||||
|
||||
### 3) Необов’язкове розуміння image
|
||||
### 3) Необов’язкове розуміння зображень
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -379,7 +357,7 @@ core OpenClaw відповідає за спільну конфігурацію
|
||||
}
|
||||
```
|
||||
|
||||
### 4) Єдиний мультимодальний запис (явні capabilities)
|
||||
### 4) Один мультимодальний запис (явні можливості)
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -419,21 +397,21 @@ core OpenClaw відповідає за спільну конфігурацію
|
||||
|
||||
## Вивід статусу
|
||||
|
||||
Коли виконується розуміння медіа, `/status` містить короткий підсумковий рядок:
|
||||
Коли виконується розуміння медіа, `/status` містить короткий рядок зведення:
|
||||
|
||||
```
|
||||
📎 Media: image ok (openai/gpt-5.4-mini) · audio skipped (maxBytes)
|
||||
```
|
||||
|
||||
Він показує результат для кожної можливості та вибраний provider/model, якщо це застосовно.
|
||||
Тут показано результат для кожної можливості та вибраний provider/model, якщо застосовно.
|
||||
|
||||
## Примітки
|
||||
|
||||
- Розуміння — **best-effort**. Помилки не блокують відповіді.
|
||||
- Вкладення все одно передаються моделям, навіть коли розуміння вимкнено.
|
||||
- Використовуйте `scope`, щоб обмежити, де запускається розуміння (наприклад, лише в DM).
|
||||
- Розуміння виконується **за принципом best-effort**. Помилки не блокують відповіді.
|
||||
- Вкладення все одно передаються моделям, навіть коли розуміння вимкнене.
|
||||
- Використовуйте `scope`, щоб обмежити, де запускається розуміння (наприклад, лише в особистих повідомленнях).
|
||||
|
||||
## Пов’язані документи
|
||||
|
||||
- [Конфігурація](/gateway/configuration)
|
||||
- [Підтримка зображень і медіа](/nodes/images)
|
||||
- [Конфігурація](/uk/gateway/configuration)
|
||||
- [Підтримка зображень і медіа](/uk/nodes/images)
|
||||
|
||||
@ -2,23 +2,24 @@
|
||||
read_when:
|
||||
- Ви хочете запустити OpenClaw з хмарними або локальними моделями через Ollama
|
||||
- Вам потрібні вказівки з налаштування та конфігурації Ollama
|
||||
- Ви хочете використовувати моделі бачення Ollama для розуміння зображень
|
||||
summary: Запустіть OpenClaw з Ollama (хмарні та локальні моделі)
|
||||
title: Ollama
|
||||
x-i18n:
|
||||
generated_at: "2026-04-21T20:52:29Z"
|
||||
generated_at: "2026-04-21T21:37:37Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 197612f2173409d186b915b838e5fdba2f594912672f3c450accb4877e732c9c
|
||||
source_hash: 32623b6523f22930a5987fb22d2074f1e9bb274cc01ae1ad1837825cc04ec179
|
||||
source_path: providers/ollama.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Ollama
|
||||
|
||||
OpenClaw інтегрується з нативним API Ollama (`/api/chat`) для розміщених хмарних моделей і локальних/самостійно розміщених серверів Ollama. Ви можете використовувати Ollama у трьох режимах: `Cloud + Local` через доступний хост Ollama, `Cloud only` проти `https://ollama.com` або `Local only` проти доступного хоста Ollama.
|
||||
OpenClaw інтегрується з нативним API Ollama (`/api/chat`) для розміщених хмарних моделей і локальних/самостійно розміщених серверів Ollama. Ви можете використовувати Ollama у трьох режимах: `Cloud + Local` через доступний хост Ollama, `Cloud only` з `https://ollama.com` або `Local only` через доступний хост Ollama.
|
||||
|
||||
<Warning>
|
||||
**Користувачі віддаленого Ollama**: Не використовуйте OpenAI-сумісну URL-адресу `/v1` (`http://host:11434/v1`) з OpenClaw. Це порушує виклик інструментів, і моделі можуть виводити сирий JSON інструментів як звичайний текст. Натомість використовуйте URL нативного API Ollama: `baseUrl: "http://host:11434"` (без `/v1`).
|
||||
**Користувачі віддаленого Ollama**: Не використовуйте OpenAI-сумісний URL `/v1` (`http://host:11434/v1`) з OpenClaw. Це ламає виклики інструментів, і моделі можуть виводити сирий JSON інструментів як звичайний текст. Натомість використовуйте URL нативного API Ollama: `baseUrl: "http://host:11434"` (без `/v1`).
|
||||
</Warning>
|
||||
|
||||
## Початок роботи
|
||||
@ -26,26 +27,26 @@ OpenClaw інтегрується з нативним API Ollama (`/api/chat`)
|
||||
Виберіть бажаний спосіб налаштування та режим.
|
||||
|
||||
<Tabs>
|
||||
<Tab title="Onboarding (recommended)">
|
||||
**Найкраще для:** найшвидшого шляху до робочого хмарного або локального налаштування Ollama.
|
||||
<Tab title="Майстер початкового налаштування (рекомендовано)">
|
||||
**Найкраще для:** найшвидшого шляху до працездатного хмарного або локального налаштування Ollama.
|
||||
|
||||
<Steps>
|
||||
<Step title="Run onboarding">
|
||||
<Step title="Запустіть майстер початкового налаштування">
|
||||
```bash
|
||||
openclaw onboard
|
||||
```
|
||||
|
||||
Виберіть **Ollama** зі списку провайдерів.
|
||||
Виберіть **Ollama** зі списку постачальників.
|
||||
</Step>
|
||||
<Step title="Choose your mode">
|
||||
<Step title="Виберіть свій режим">
|
||||
- **Cloud + Local** — локальний хост Ollama плюс хмарні моделі, спрямовані через цей хост
|
||||
- **Cloud only** — розміщені моделі Ollama через `https://ollama.com`
|
||||
- **Local only** — лише локальні моделі
|
||||
</Step>
|
||||
<Step title="Select a model">
|
||||
`Cloud only` запитує `OLLAMA_API_KEY` і пропонує типові хмарні налаштування за замовчуванням. `Cloud + Local` і `Local only` запитують базову URL-адресу Ollama, виявляють доступні моделі та автоматично завантажують вибрану локальну модель, якщо вона ще недоступна. `Cloud + Local` також перевіряє, чи виконано вхід на цьому хості Ollama для доступу до хмари.
|
||||
<Step title="Виберіть модель">
|
||||
`Cloud only` запитує `OLLAMA_API_KEY` і пропонує типові розміщені хмарні значення. `Cloud + Local` і `Local only` запитують базовий URL Ollama, виявляють доступні моделі та автоматично завантажують вибрану локальну модель, якщо вона ще недоступна. `Cloud + Local` також перевіряє, чи виконано вхід на цьому хості Ollama для доступу до хмари.
|
||||
</Step>
|
||||
<Step title="Verify the model is available">
|
||||
<Step title="Перевірте, що модель доступна">
|
||||
```bash
|
||||
openclaw models list --provider ollama
|
||||
```
|
||||
@ -60,7 +61,7 @@ OpenClaw інтегрується з нативним API Ollama (`/api/chat`)
|
||||
--accept-risk
|
||||
```
|
||||
|
||||
За бажанням укажіть власну базову URL-адресу або модель:
|
||||
За бажанням вкажіть власний базовий URL або модель:
|
||||
|
||||
```bash
|
||||
openclaw onboard --non-interactive \
|
||||
@ -72,45 +73,45 @@ OpenClaw інтегрується з нативним API Ollama (`/api/chat`)
|
||||
|
||||
</Tab>
|
||||
|
||||
<Tab title="Manual setup">
|
||||
<Tab title="Ручне налаштування">
|
||||
**Найкраще для:** повного контролю над хмарним або локальним налаштуванням.
|
||||
|
||||
<Steps>
|
||||
<Step title="Choose cloud or local">
|
||||
- **Cloud + Local**: встановіть Ollama, увійдіть через `ollama signin` і спрямовуйте хмарні запити через цей хост
|
||||
<Step title="Виберіть хмарний або локальний режим">
|
||||
- **Cloud + Local**: установіть Ollama, увійдіть через `ollama signin` і спрямовуйте хмарні запити через цей хост
|
||||
- **Cloud only**: використовуйте `https://ollama.com` з `OLLAMA_API_KEY`
|
||||
- **Local only**: установіть Ollama з [ollama.com/download](https://ollama.com/download)
|
||||
</Step>
|
||||
<Step title="Pull a local model (local only)">
|
||||
<Step title="Завантажте локальну модель (лише локальний режим)">
|
||||
```bash
|
||||
ollama pull gemma4
|
||||
# or
|
||||
# або
|
||||
ollama pull gpt-oss:20b
|
||||
# or
|
||||
# або
|
||||
ollama pull llama3.3
|
||||
```
|
||||
</Step>
|
||||
<Step title="Enable Ollama for OpenClaw">
|
||||
Для `Cloud only` використовуйте свій справжній `OLLAMA_API_KEY`. Для конфігурацій на основі хоста підійде будь-яке заповнювальне значення:
|
||||
<Step title="Увімкніть Ollama для OpenClaw">
|
||||
Для `Cloud only` використовуйте свій справжній `OLLAMA_API_KEY`. Для конфігурацій на основі хоста підійде будь-яке значення-заповнювач:
|
||||
|
||||
```bash
|
||||
# Cloud
|
||||
# Хмара
|
||||
export OLLAMA_API_KEY="your-ollama-api-key"
|
||||
|
||||
# Local-only
|
||||
# Лише локально
|
||||
export OLLAMA_API_KEY="ollama-local"
|
||||
|
||||
# Or configure in your config file
|
||||
# Або налаштуйте у своєму файлі конфігурації
|
||||
openclaw config set models.providers.ollama.apiKey "OLLAMA_API_KEY"
|
||||
```
|
||||
</Step>
|
||||
<Step title="Inspect and set your model">
|
||||
<Step title="Перегляньте та встановіть свою модель">
|
||||
```bash
|
||||
openclaw models list
|
||||
openclaw models set ollama/gemma4
|
||||
```
|
||||
|
||||
Або встановіть модель за замовчуванням у конфігурації:
|
||||
Або встановіть типову модель у конфігурації:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -131,11 +132,11 @@ OpenClaw інтегрується з нативним API Ollama (`/api/chat`)
|
||||
|
||||
<Tabs>
|
||||
<Tab title="Cloud + Local">
|
||||
`Cloud + Local` використовує доступний хост Ollama як точку керування і для локальних, і для хмарних моделей. Це бажаний гібридний сценарій Ollama.
|
||||
`Cloud + Local` використовує доступний хост Ollama як точку керування і для локальних, і для хмарних моделей. Це рекомендований Ollama гібридний сценарій.
|
||||
|
||||
Під час налаштування використовуйте **Cloud + Local**. OpenClaw запитує базову URL-адресу Ollama, виявляє локальні моделі з цього хоста та перевіряє, чи виконано вхід на хості для доступу до хмари через `ollama signin`. Якщо вхід на хості виконано, OpenClaw також пропонує типові розміщені хмарні моделі, як-от `kimi-k2.5:cloud`, `minimax-m2.7:cloud` і `glm-5.1:cloud`.
|
||||
Під час налаштування використовуйте **Cloud + Local**. OpenClaw запитує базовий URL Ollama, виявляє локальні моделі з цього хоста та перевіряє, чи виконано вхід на хості для хмарного доступу через `ollama signin`. Якщо вхід на хості виконано, OpenClaw також пропонує типові розміщені хмарні варіанти, такі як `kimi-k2.5:cloud`, `minimax-m2.7:cloud` і `glm-5.1:cloud`.
|
||||
|
||||
Якщо вхід на хості ще не виконано, OpenClaw зберігає налаштування лише локальним, доки ви не виконаєте `ollama signin`.
|
||||
Якщо вхід на хості ще не виконано, OpenClaw залишає налаштування лише локальним, доки ви не запустите `ollama signin`.
|
||||
|
||||
</Tab>
|
||||
|
||||
@ -144,35 +145,35 @@ OpenClaw інтегрується з нативним API Ollama (`/api/chat`)
|
||||
|
||||
Під час налаштування використовуйте **Cloud only**. OpenClaw запитує `OLLAMA_API_KEY`, встановлює `baseUrl: "https://ollama.com"` і заповнює список розміщених хмарних моделей. Цей шлях **не** потребує локального сервера Ollama або `ollama signin`.
|
||||
|
||||
Список хмарних моделей, показаний під час `openclaw onboard`, заповнюється в реальному часі з `https://ollama.com/api/tags`, обмежується 500 записами, тому засіб вибору відображає поточний розміщений каталог, а не статичний набір. Якщо `ollama.com` недоступний або не повертає моделей під час налаштування, OpenClaw повертається до попередніх жорстко закодованих пропозицій, щоб onboarding усе одно завершився.
|
||||
Список хмарних моделей, показаний під час `openclaw onboard`, заповнюється в реальному часі з `https://ollama.com/api/tags`, обмежується 500 записами, тому засіб вибору відображає поточний розміщений каталог, а не статичний початковий список. Якщо `ollama.com` недоступний або не повертає моделі під час налаштування, OpenClaw повертається до попередніх жорстко закодованих пропозицій, щоб початкове налаштування все одно завершилося.
|
||||
|
||||
</Tab>
|
||||
|
||||
<Tab title="Local only">
|
||||
У режимі лише локального використання OpenClaw виявляє моделі з налаштованого екземпляра Ollama. Цей шлях призначений для локальних або самостійно розміщених серверів Ollama.
|
||||
У режимі лише локально OpenClaw виявляє моделі з налаштованого екземпляра Ollama. Цей шлях призначений для локальних або самостійно розміщених серверів Ollama.
|
||||
|
||||
Наразі OpenClaw пропонує `gemma4` як локальну модель за замовчуванням.
|
||||
Наразі OpenClaw пропонує `gemma4` як типову локальну модель.
|
||||
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
## Виявлення моделей (неявний провайдер)
|
||||
## Виявлення моделей (неявний постачальник)
|
||||
|
||||
Коли ви встановлюєте `OLLAMA_API_KEY` (або профіль автентифікації) і **не** визначаєте `models.providers.ollama`, OpenClaw виявляє моделі з локального екземпляра Ollama за адресою `http://127.0.0.1:11434`.
|
||||
|
||||
| Поведінка | Докладно |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Запит до каталогу | Виконує запит до `/api/tags` |
|
||||
| Виявлення можливостей | Використовує найкращі спроби пошуку `/api/show`, щоб прочитати `contextWindow` і виявити можливості (зокрема vision) |
|
||||
| Vision-моделі | Моделі з можливістю `vision`, про яку повідомляє `/api/show`, позначаються як здатні працювати із зображеннями (`input: ["text", "image"]`), тому OpenClaw автоматично додає зображення до запиту |
|
||||
| Виявлення міркування | Позначає `reasoning` за евристикою назви моделі (`r1`, `reasoning`, `think`) |
|
||||
| Обмеження токенів | Встановлює `maxTokens` на типове максимальне обмеження токенів Ollama, яке використовує OpenClaw |
|
||||
| Вартість | Встановлює всі значення вартості в `0` |
|
||||
| Поведінка | Докладно |
|
||||
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Запит каталогу | Виконує запит до `/api/tags` |
|
||||
| Виявлення можливостей | Використовує найкращі наявні пошуки `/api/show`, щоб зчитати `contextWindow` і виявити можливості (зокрема vision) |
|
||||
| Vision-моделі | Моделі з можливістю `vision`, про яку повідомляє `/api/show`, позначаються як такі, що підтримують зображення (`input: ["text", "image"]`), тому OpenClaw автоматично додає зображення в запит |
|
||||
| Виявлення reasoning | Позначає `reasoning` за евристикою назви моделі (`r1`, `reasoning`, `think`) |
|
||||
| Обмеження токенів | Встановлює `maxTokens` на типове максимальне обмеження токенів Ollama, яке використовує OpenClaw |
|
||||
| Вартість | Встановлює всі вартості в `0` |
|
||||
|
||||
Це дає змогу уникнути ручного додавання моделей і водночас зберігати каталог узгодженим із локальним екземпляром Ollama.
|
||||
|
||||
```bash
|
||||
# See what models are available
|
||||
# Подивитися, які моделі доступні
|
||||
ollama list
|
||||
openclaw models list
|
||||
```
|
||||
@ -186,27 +187,77 @@ ollama pull mistral
|
||||
Нова модель буде автоматично виявлена й доступна для використання.
|
||||
|
||||
<Note>
|
||||
Якщо ви явно задаєте `models.providers.ollama`, автовиявлення пропускається, і вам потрібно визначити моделі вручну. Див. розділ про явну конфігурацію нижче.
|
||||
Якщо ви явно задаєте `models.providers.ollama`, автоматичне виявлення пропускається, і вам потрібно визначати моделі вручну. Див. розділ явної конфігурації нижче.
|
||||
</Note>
|
||||
|
||||
## Vision і опис зображень
|
||||
|
||||
Вбудований Plugin Ollama реєструє Ollama як постачальника розуміння медіа, що підтримує зображення. Це дає OpenClaw змогу спрямовувати явні запити на опис зображень і налаштовані типові моделі для зображень через локальні або розміщені vision-моделі Ollama.
|
||||
|
||||
Для локального vision завантажте модель, яка підтримує зображення:
|
||||
|
||||
```bash
|
||||
ollama pull qwen2.5vl:7b
|
||||
export OLLAMA_API_KEY="ollama-local"
|
||||
```
|
||||
|
||||
Потім перевірте через CLI infer:
|
||||
|
||||
```bash
|
||||
openclaw infer image describe \
|
||||
--file ./photo.jpg \
|
||||
--model ollama/qwen2.5vl:7b \
|
||||
--json
|
||||
```
|
||||
|
||||
`--model` має бути повним посиланням `<provider/model>`. Якщо його задано, `openclaw infer image describe` запускає цю модель безпосередньо замість того, щоб пропускати опис, оскільки модель підтримує нативний vision.
|
||||
|
||||
Щоб зробити Ollama типовою моделлю розуміння зображень для вхідних медіа, налаштуйте `agents.defaults.imageModel`:
|
||||
|
||||
```json5
|
||||
{
|
||||
agents: {
|
||||
defaults: {
|
||||
imageModel: {
|
||||
primary: "ollama/qwen2.5vl:7b",
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
Якщо ви визначаєте `models.providers.ollama.models` вручну, позначайте vision-моделі як такі, що підтримують введення зображень:
|
||||
|
||||
```json5
|
||||
{
|
||||
id: "qwen2.5vl:7b",
|
||||
name: "qwen2.5vl:7b",
|
||||
input: ["text", "image"],
|
||||
contextWindow: 128000,
|
||||
maxTokens: 8192,
|
||||
}
|
||||
```
|
||||
|
||||
OpenClaw відхиляє запити на опис зображень для моделей, які не позначені як такі, що підтримують зображення. За неявного виявлення OpenClaw зчитує це з Ollama, коли `/api/show` повідомляє про можливість vision.
|
||||
|
||||
## Конфігурація
|
||||
|
||||
<Tabs>
|
||||
<Tab title="Basic (implicit discovery)">
|
||||
Найпростіший спосіб увімкнення режиму лише локального використання — через змінну середовища:
|
||||
<Tab title="Базова (неявне виявлення)">
|
||||
Найпростіший шлях увімкнення режиму лише локально — через змінну середовища:
|
||||
|
||||
```bash
|
||||
export OLLAMA_API_KEY="ollama-local"
|
||||
```
|
||||
|
||||
<Tip>
|
||||
Якщо встановлено `OLLAMA_API_KEY`, ви можете не вказувати `apiKey` у записі провайдера, і OpenClaw підставить його для перевірок доступності.
|
||||
Якщо задано `OLLAMA_API_KEY`, ви можете не вказувати `apiKey` у записі постачальника, і OpenClaw підставить його для перевірок доступності.
|
||||
</Tip>
|
||||
|
||||
</Tab>
|
||||
|
||||
<Tab title="Explicit (manual models)">
|
||||
Використовуйте явну конфігурацію, коли вам потрібне розміщене хмарне налаштування, Ollama працює на іншому хості/порту, ви хочете примусово задати певні контекстні вікна або списки моделей, або вам потрібні повністю ручні визначення моделей.
|
||||
<Tab title="Явна (ручні моделі)">
|
||||
Використовуйте явну конфігурацію, коли вам потрібне розміщене хмарне налаштування, Ollama працює на іншому хості/порту, ви хочете примусово задати конкретні контекстні вікна або списки моделей, або вам потрібні повністю ручні визначення моделей.
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -235,8 +286,8 @@ ollama pull mistral
|
||||
|
||||
</Tab>
|
||||
|
||||
<Tab title="Custom base URL">
|
||||
Якщо Ollama працює на іншому хості або порту (явна конфігурація вимикає автовиявлення, тому визначайте моделі вручну):
|
||||
<Tab title="Власний базовий URL">
|
||||
Якщо Ollama працює на іншому хості або порту (явна конфігурація вимикає автоматичне виявлення, тому визначайте моделі вручну):
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -244,8 +295,8 @@ ollama pull mistral
|
||||
providers: {
|
||||
ollama: {
|
||||
apiKey: "ollama-local",
|
||||
baseUrl: "http://ollama-host:11434", // No /v1 - use native Ollama API URL
|
||||
api: "ollama", // Set explicitly to guarantee native tool-calling behavior
|
||||
baseUrl: "http://ollama-host:11434", // Без /v1 - використовуйте URL нативного API Ollama
|
||||
api: "ollama", // Явно задайте, щоб гарантувати нативну поведінку викликів інструментів
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -253,7 +304,7 @@ ollama pull mistral
|
||||
```
|
||||
|
||||
<Warning>
|
||||
Не додавайте `/v1` до URL-адреси. Шлях `/v1` використовує OpenAI-сумісний режим, у якому виклик інструментів ненадійний. Використовуйте базову URL-адресу Ollama без суфікса шляху.
|
||||
Не додавайте `/v1` до URL. Шлях `/v1` використовує OpenAI-сумісний режим, у якому виклики інструментів працюють ненадійно. Використовуйте базовий URL Ollama без суфікса шляху.
|
||||
</Warning>
|
||||
|
||||
</Tab>
|
||||
@ -278,13 +329,13 @@ ollama pull mistral
|
||||
|
||||
## Ollama Web Search
|
||||
|
||||
OpenClaw підтримує **Ollama Web Search** як вбудований провайдер `web_search`.
|
||||
OpenClaw підтримує **Ollama Web Search** як вбудованого постачальника `web_search`.
|
||||
|
||||
| Властивість | Докладно |
|
||||
| ----------- | --------------------------------------------------------------------------------------------------------------------- |
|
||||
| Хост | Використовує ваш налаштований хост Ollama (`models.providers.ollama.baseUrl`, якщо задано, інакше `http://127.0.0.1:11434`) |
|
||||
| Автентифікація | Без ключа |
|
||||
| Вимога | Ollama має працювати, і в ньому має бути виконано вхід через `ollama signin` |
|
||||
| Властивість | Докладно |
|
||||
| ----------- | -------------------------------------------------------------------------------------------------------------------- |
|
||||
| Хост | Використовує налаштований вами хост Ollama (`models.providers.ollama.baseUrl`, якщо задано, інакше `http://127.0.0.1:11434`) |
|
||||
| Автентифікація | Без ключа |
|
||||
| Вимога | Ollama має бути запущений, і в ньому має бути виконано вхід через `ollama signin` |
|
||||
|
||||
Виберіть **Ollama Web Search** під час `openclaw onboard` або `openclaw configure --section web`, або задайте:
|
||||
|
||||
@ -301,18 +352,18 @@ OpenClaw підтримує **Ollama Web Search** як вбудований пр
|
||||
```
|
||||
|
||||
<Note>
|
||||
Повні відомості про налаштування та поведінку див. в [Ollama Web Search](/uk/tools/ollama-search).
|
||||
Повні відомості про налаштування й поведінку див. у [Ollama Web Search](/uk/tools/ollama-search).
|
||||
</Note>
|
||||
|
||||
## Розширена конфігурація
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="Legacy OpenAI-compatible mode">
|
||||
<Accordion title="Застарілий OpenAI-сумісний режим">
|
||||
<Warning>
|
||||
**Виклик інструментів у OpenAI-сумісному режимі ненадійний.** Використовуйте цей режим лише тоді, коли вам потрібен формат OpenAI для проксі й ви не залежите від нативної поведінки виклику інструментів.
|
||||
**Виклик інструментів в OpenAI-сумісному режимі працює ненадійно.** Використовуйте цей режим лише якщо вам потрібен формат OpenAI для проксі й ви не залежите від нативної поведінки виклику інструментів.
|
||||
</Warning>
|
||||
|
||||
Якщо вам потрібно використовувати натомість OpenAI-сумісну кінцеву точку (наприклад, за проксі, який підтримує лише формат OpenAI), явно задайте `api: "openai-completions"`:
|
||||
Якщо вам потрібно натомість використовувати OpenAI-сумісну кінцеву точку (наприклад, за проксі, який підтримує лише формат OpenAI), явно задайте `api: "openai-completions"`:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -321,7 +372,7 @@ OpenClaw підтримує **Ollama Web Search** як вбудований пр
|
||||
ollama: {
|
||||
baseUrl: "http://ollama-host:11434/v1",
|
||||
api: "openai-completions",
|
||||
injectNumCtxForOpenAICompat: true, // default: true
|
||||
injectNumCtxForOpenAICompat: true, // типово: true
|
||||
apiKey: "ollama-local",
|
||||
models: [...]
|
||||
}
|
||||
@ -330,9 +381,9 @@ OpenClaw підтримує **Ollama Web Search** як вбудований пр
|
||||
}
|
||||
```
|
||||
|
||||
Цей режим може не підтримувати одночасно потокову передачу й виклик інструментів. Може знадобитися вимкнути потокову передачу за допомогою `params: { streaming: false }` у конфігурації моделі.
|
||||
Цей режим може не підтримувати одночасно потокову передачу та виклик інструментів. Можливо, вам доведеться вимкнути потокову передачу за допомогою `params: { streaming: false }` у конфігурації моделі.
|
||||
|
||||
Коли `api: "openai-completions"` використовується з Ollama, OpenClaw за замовчуванням додає `options.num_ctx`, щоб Ollama не переходив непомітно до контекстного вікна 4096. Якщо ваш проксі/вищий рівень відхиляє невідомі поля `options`, вимкніть цю поведінку:
|
||||
Коли з Ollama використовується `api: "openai-completions"`, OpenClaw типово додає `options.num_ctx`, щоб Ollama не переходив непомітно на контекстне вікно 4096. Якщо ваш проксі/вищий рівень не приймає невідомі поля `options`, вимкніть цю поведінку:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -353,9 +404,9 @@ OpenClaw підтримує **Ollama Web Search** як вбудований пр
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Контекстні вікна">
|
||||
Для автоматично виявлених моделей OpenClaw використовує контекстне вікно, про яке повідомляє Ollama, коли воно доступне, інакше повертається до типового контекстного вікна Ollama, яке використовує OpenClaw.
|
||||
Для автоматично виявлених моделей OpenClaw використовує контекстне вікно, про яке повідомляє Ollama, коли воно доступне; інакше використовується типове контекстне вікно Ollama, яке використовує OpenClaw.
|
||||
|
||||
Ви можете перевизначити `contextWindow` і `maxTokens` у явній конфігурації провайдера:
|
||||
Ви можете перевизначити `contextWindow` і `maxTokens` в явній конфігурації постачальника:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -377,32 +428,32 @@ OpenClaw підтримує **Ollama Web Search** як вбудований пр
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Моделі міркування">
|
||||
OpenClaw типово вважає моделі з назвами на кшталт `deepseek-r1`, `reasoning` або `think` здатними до міркування.
|
||||
<Accordion title="Моделі reasoning">
|
||||
OpenClaw типово вважає моделі з назвами на кшталт `deepseek-r1`, `reasoning` або `think` такими, що підтримують reasoning.
|
||||
|
||||
```bash
|
||||
ollama pull deepseek-r1:32b
|
||||
```
|
||||
|
||||
Жодна додаткова конфігурація не потрібна -- OpenClaw позначає їх автоматично.
|
||||
Додаткова конфігурація не потрібна — OpenClaw позначає їх автоматично.
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Вартість моделей">
|
||||
Ollama є безкоштовним і працює локально, тому вартість усіх моделей установлено на $0. Це стосується як автоматично виявлених, так і вручну визначених моделей.
|
||||
Ollama безкоштовний і працює локально, тому вартість усіх моделей встановлено на рівні $0. Це стосується як автоматично виявлених, так і вручну визначених моделей.
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Вбудовування пам’яті">
|
||||
Вбудований Plugin Ollama реєструє провайдера вбудовування пам’яті для
|
||||
[пошуку в пам’яті](/uk/concepts/memory). Він використовує налаштовану базову URL-адресу Ollama
|
||||
Вбудований Plugin Ollama реєструє постачальника вбудовувань пам’яті для
|
||||
[пошуку в пам’яті](/uk/concepts/memory). Він використовує налаштовані базовий URL Ollama
|
||||
та API-ключ.
|
||||
|
||||
| Властивість | Значення |
|
||||
| -------------- | -------------------- |
|
||||
| Типова модель | `nomic-embed-text` |
|
||||
| Автозавантаження | Так — модель вбудовування автоматично завантажується, якщо її немає локально |
|
||||
| Властивість | Значення |
|
||||
| --------------- | ------------------- |
|
||||
| Типова модель | `nomic-embed-text` |
|
||||
| Автозавантаження | Так — модель вбудовувань автоматично завантажується, якщо її немає локально |
|
||||
|
||||
Щоб вибрати Ollama як провайдера вбудовування для пошуку в пам’яті:
|
||||
Щоб вибрати Ollama як постачальника вбудовувань для пошуку в пам’яті:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -417,20 +468,20 @@ OpenClaw підтримує **Ollama Web Search** як вбудований пр
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Конфігурація потокової передачі">
|
||||
Інтеграція Ollama в OpenClaw за замовчуванням використовує **нативний API Ollama** (`/api/chat`), який повністю підтримує одночасно потокову передачу та виклик інструментів. Жодна спеціальна конфігурація не потрібна.
|
||||
Інтеграція Ollama в OpenClaw типово використовує **нативний API Ollama** (`/api/chat`), який повністю підтримує одночасно потокову передачу та виклик інструментів. Жодна спеціальна конфігурація не потрібна.
|
||||
|
||||
<Tip>
|
||||
Якщо вам потрібно використовувати OpenAI-сумісну кінцеву точку, див. розділ "Legacy OpenAI-compatible mode" вище. У цьому режимі потокова передача та виклик інструментів можуть не працювати одночасно.
|
||||
Якщо вам потрібно використовувати OpenAI-сумісну кінцеву точку, див. розділ «Застарілий OpenAI-сумісний режим» вище. У цьому режимі потокова передача та виклик інструментів можуть не працювати одночасно.
|
||||
</Tip>
|
||||
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
## Усунення неполадок
|
||||
## Усунення несправностей
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="Ollama не виявлено">
|
||||
Переконайтеся, що Ollama запущено, що ви встановили `OLLAMA_API_KEY` (або профіль автентифікації), і що ви **не** визначили явний запис `models.providers.ollama`:
|
||||
Переконайтеся, що Ollama запущено, що ви задали `OLLAMA_API_KEY` (або профіль автентифікації), і що ви **не** визначили явний запис `models.providers.ollama`:
|
||||
|
||||
```bash
|
||||
ollama serve
|
||||
@ -445,25 +496,25 @@ OpenClaw підтримує **Ollama Web Search** як вбудований пр
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Немає доступних моделей">
|
||||
Якщо вашої моделі немає у списку, або завантажте модель локально, або визначте її явно в `models.providers.ollama`.
|
||||
Якщо вашу модель не вказано в списку, або завантажте її локально, або визначте її явно в `models.providers.ollama`.
|
||||
|
||||
```bash
|
||||
ollama list # See what's installed
|
||||
ollama list # Подивитися, що встановлено
|
||||
ollama pull gemma4
|
||||
ollama pull gpt-oss:20b
|
||||
ollama pull llama3.3 # Or another model
|
||||
ollama pull llama3.3 # Або іншу модель
|
||||
```
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="У з’єднанні відмовлено">
|
||||
Переконайтеся, що Ollama працює на правильному порту:
|
||||
<Accordion title="У підключенні відмовлено">
|
||||
Перевірте, що Ollama запущено на правильному порту:
|
||||
|
||||
```bash
|
||||
# Check if Ollama is running
|
||||
# Перевірити, чи запущено Ollama
|
||||
ps aux | grep ollama
|
||||
|
||||
# Or restart Ollama
|
||||
# Або перезапустити Ollama
|
||||
ollama serve
|
||||
```
|
||||
|
||||
@ -471,22 +522,22 @@ OpenClaw підтримує **Ollama Web Search** як вбудований пр
|
||||
</AccordionGroup>
|
||||
|
||||
<Note>
|
||||
Більше довідки: [Усунення неполадок](/uk/help/troubleshooting) і [FAQ](/uk/help/faq).
|
||||
Більше допомоги: [Усунення несправностей](/uk/help/troubleshooting) і [FAQ](/uk/help/faq).
|
||||
</Note>
|
||||
|
||||
## Пов’язане
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card title="Провайдери моделей" href="/uk/concepts/model-providers" icon="layers">
|
||||
Огляд усіх провайдерів, посилань на моделі та поведінки перемикання при відмові.
|
||||
<Card title="Постачальники моделей" href="/uk/concepts/model-providers" icon="layers">
|
||||
Огляд усіх постачальників, посилань на моделі та поведінки перемикання на резервні варіанти.
|
||||
</Card>
|
||||
<Card title="Вибір моделі" href="/uk/concepts/models" icon="brain">
|
||||
Як вибирати та налаштовувати моделі.
|
||||
Як вибирати й налаштовувати моделі.
|
||||
</Card>
|
||||
<Card title="Ollama Web Search" href="/uk/tools/ollama-search" icon="magnifying-glass">
|
||||
Повні відомості про налаштування та поведінку для вебпошуку на базі Ollama.
|
||||
Повні відомості про налаштування й поведінку вебпошуку на основі Ollama.
|
||||
</Card>
|
||||
<Card title="Конфігурація" href="/uk/gateway/configuration" icon="gear">
|
||||
Повний довідник із конфігурації.
|
||||
Повна довідка з конфігурації.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user