models.providers.<id>.localService дає OpenClaw змогу запускати локальний
сервер моделей, яким володіє провайдер, на вимогу. Це конфігурація рівня
провайдера: коли вибрана модель належить цьому провайдеру, OpenClaw перевіряє
сервіс, запускає процес, якщо endpoint недоступний, чекає готовності, а потім
надсилає запит до моделі.
Використовуйте це для локальних серверів, які дорого тримати запущеними весь
день, або для ручних налаштувань, де вибору моделі має бути достатньо, щоб
підняти бекенд.
Як це працює
- Запит до моделі зіставляється з налаштованим провайдером.
- Якщо цей провайдер має
localService, OpenClaw перевіряєhealthUrl. - Якщо перевірка успішна, OpenClaw використовує наявний сервер.
- Якщо перевірка неуспішна, OpenClaw запускає
commandзargs. - OpenClaw опитує готовність, доки не спливе
readyTimeoutMs. - Запит до моделі надсилається через звичайний транспорт провайдера.
- Якщо OpenClaw запустив процес і
idleStopMsє додатним, процес зупиняється після того, як останній активний запит простоював так довго.
Форма конфігурації
Поля
command: абсолютний шлях до виконуваного файла. Пошук через оболонку не використовується.args: аргументи процесу. Розгортання оболонки, pipes, globbing або правила quoting не застосовуються.cwd: необов’язковий робочий каталог для процесу.env: необов’язкові змінні середовища, об’єднані поверх середовища процесу OpenClaw.healthUrl: URL готовності. Якщо пропущено, OpenClaw додає/modelsдоbaseUrl, тожhttp://127.0.0.1:8000/v1стаєhttp://127.0.0.1:8000/v1/models.readyTimeoutMs: дедлайн готовності під час запуску. Типове значення:120000.idleStopMs: затримка завершення під час простою для процесів, запущених OpenClaw.0або пропущене значення залишає процес активним до виходу OpenClaw.
Приклад Inferrs
Inferrs — це власний бекенд/v1, сумісний з OpenAI, тому той самий API
локального сервісу працює із записом провайдера inferrs.
command на результат which inferrs на машині, де працює OpenClaw.
Приклад ds4
Повне налаштування, рекомендації щодо розміру контексту та команди перевірки див. у ds4.Операційні примітки
- Один процес OpenClaw керує дочірнім процесом, який він запустив. Інший процес OpenClaw, який бачить той самий уже активний URL перевірки стану, повторно використає його без прийняття під керування.
- Запуск серіалізується для кожного набору команди й аргументів провайдера, тому паралельні запити не створюють дублікати серверів для тієї самої конфігурації.
- Активні потокові відповіді утримують lease; завершення під час простою чекає, доки обробку тіла відповіді буде завершено.
- Використовуйте
timeoutSecondsдля повільних локальних провайдерів, щоб холодні запуски й довгі генерації не впиралися в типовий таймаут запиту до моделі. - Використовуйте явний
healthUrl, якщо ваш сервер надає готовність не в/v1/models.
Пов’язане
Local models
Налаштування локальних моделей, вибір провайдера та рекомендації з безпеки.
Inferrs
Запускайте OpenClaw через локальний сервер inferrs, сумісний з OpenAI.