/api/chat), а не к OpenAI-совместимой
конечной точке /v1. Поддерживаются три режима:
ollama-cloud см. в разделе
Ollama Cloud. Используйте ссылки ollama-cloud/<model>, если
облачную маршрутизацию требуется отделить от локального провайдера ollama.
Канонический ключ конфигурации — baseUrl. baseURL также принимается для
примеров в стиле OpenAI SDK, но в новой конфигурации следует использовать baseUrl.
Правила аутентификации
Локальные хосты и хосты в LAN
Локальные хосты и хосты в LAN
.local и простыми именами хостов настоящий bearer-токен не требуется. Для них OpenClaw использует маркер ollama-local.Удалённые хосты и хосты Ollama Cloud
Удалённые хосты и хосты Ollama Cloud
https://ollama.com требуются настоящие учётные данные: OLLAMA_API_KEY, профиль аутентификации или apiKey провайдера. Для прямого использования размещённого сервиса предпочтителен провайдер ollama-cloud.Пользовательские идентификаторы провайдеров
Пользовательские идентификаторы провайдеров
api: "ollama" действуют те же правила. Например, провайдер ollama-remote, указывающий на частный хост в LAN, может использовать apiKey: "ollama-local"; субагенты разрешают этот маркер через хук провайдера Ollama, а не считают его отсутствующими учётными данными. agents.defaults.memorySearch.provider также может указывать на идентификатор пользовательского провайдера, чтобы для эмбеддингов использовалась соответствующая конечная точка Ollama.Профили аутентификации
Профили аутентификации
auth-profiles.json хранит учётные данные для идентификатора провайдера; параметры конечной точки (baseUrl, api, модели, заголовки, тайм-ауты) задавайте в models.providers.<id>. Старые плоские файлы, такие как { "ollama-windows": { "apiKey": "ollama-local" } }, не являются форматом среды выполнения; openclaw doctor --fix преобразует их в канонический профиль API-ключа ollama-windows:default и создаёт резервную копию. Значение baseUrl в таком устаревшем файле является лишним и должно быть перенесено в конфигурацию провайдера.Область действия эмбеддингов памяти
Область действия эмбеддингов памяти
- Ключ уровня провайдера отправляется только на хост этого провайдера.
agents.*.memorySearch.remote.apiKeyотправляется только на удалённый хост эмбеддингов.- Значение только из переменной окружения
OLLAMA_API_KEYсчитается соглашением Ollama Cloud и по умолчанию не отправляется на локальные или самостоятельно размещённые хосты.
Начало работы
- Первоначальная настройка (рекомендуется)
- Ручная настройка
Запустите первоначальную настройку
Выберите модель
Cloud only запрашивает OLLAMA_API_KEY и предлагает стандартные размещённые облачные модели. Cloud + Local и Local only запрашивают базовый URL Ollama, обнаруживают доступные модели и автоматически загружают выбранную локальную модель, если она отсутствует. Установленный тег :latest, например gemma4:latest, отображается один раз вместо дублирования gemma4. Cloud + Local также проверяет, выполнен ли на хосте вход для доступа к облаку.Проверьте
--custom-base-url и --custom-model-id необязательны; если их не указывать, используются локальный хост по умолчанию и предложенная модель gemma4.Облачные модели через локальный хост
Cloud + Local направляет как локальные модели, так и модели :cloud через один доступный
хост Ollama — это гибридный режим Ollama, который следует выбрать при настройке,
если нужны оба типа моделей.
OpenClaw запрашивает базовый URL, обнаруживает локальные модели и проверяет
состояние ollama signin. Если вход выполнен, предлагаются стандартные размещённые модели
(kimi-k2.5:cloud, minimax-m2.7:cloud, glm-5.1:cloud, glm-5.2:cloud). Если
вход не выполнен, настройка остаётся только локальной до выполнения ollama signin.
Для доступа только к облаку без локального демона используйте openclaw onboard --auth-choice ollama-cloud и см. Ollama Cloud — для этого варианта не требуются ollama signin или запущенный сервер:
openclaw onboard, заполняется в реальном времени из
https://ollama.com/api/tags и ограничен 500 записями, поэтому средство выбора отражает
текущий каталог размещённых моделей. Если ollama.com недоступен или не возвращает
модели во время настройки, OpenClaw использует резервный жёстко заданный список рекомендаций,
чтобы первоначальная настройка всё равно завершилась.
Обнаружение моделей (неявный провайдер)
Если заданOLLAMA_API_KEY (или профиль аутентификации), но не определены
ни models.providers.ollama, ни другой пользовательский провайдер с api: "ollama",
OpenClaw обнаруживает модели через http://127.0.0.1:11434:
models.providers.ollama с явным массивом models или
пользовательского провайдера с api: "ollama" и не-loopback-значением baseUrl отключает
автоматическое обнаружение; после этого модели необходимо определять вручную (см.
Конфигурация). Запись models.providers.ollama, указывающая на
размещённый https://ollama.com, также отключает обнаружение, поскольку моделями Ollama Cloud
управляет провайдер. Пользовательские loopback-провайдеры, такие как
http://127.0.0.2:11434, по-прежнему считаются локальными, поэтому автоматическое обнаружение сохраняется.
Полную ссылку, такую как ollama/<pulled-model>:latest, можно использовать без
созданной вручную записи models.json; OpenClaw разрешает её в реальном времени. Для хостов,
на которых выполнен вход, при выборе отсутствующей в списке ссылки ollama/<model>:cloud
OpenClaw проверяет указанную модель через /api/show и добавляет её в каталог среды выполнения,
только если Ollama подтверждает метаданные — ссылки с опечатками по-прежнему отклоняются как неизвестные модели.
Дымовые тесты
Для узкой проверки текста без загрузки полной поверхности инструментов агента:--file с изображением для облегчённой проверки модели с поддержкой зрения (принимаются PNG/JPEG/WebP;
файлы, не являющиеся изображениями, отклоняются до вызова Ollama — для аудио используйте
openclaw infer audio transcribe):
/model ollama/<model> является точным выбором пользователя: если
настроенный baseUrl недоступен, следующий ответ завершается ошибкой провайдера,
а не незаметным переключением на другую настроенную модель.
Изолированные задания Cron добавляют одну локальную проверку безопасности перед началом хода агента:
если выбранная модель разрешается в локальный/частносетевой/.local провайдер
Ollama, а /api/tags недоступен, OpenClaw регистрирует этот запуск как
skipped, указывая модель в тексте ошибки. Эта проверка конечной точки кэшируется на
5 минут для каждого хоста, поэтому повторные задания Cron при остановленном демоне не будут все
запускать обречённые на сбой запросы.
Проверка в реальной среде:
OPENCLAW_LIVE_OLLAMA_EMBEDDINGS=1, поскольку
облачный ключ может не разрешать /api/embed):
Локальный вывод на Node
Агенты могут делегировать короткую задачу модели Ollama на сопряжённом настольном компьютере или серверном Node. Запрос и ответ передаются через существующее аутентифицированное соединение Gateway/Node; запрос выполняется через собственную loopback-конечную точку Ollama на Node (http://127.0.0.1:11434).
Запустите Ollama на Node
Подключите хост Node
ollama.models и ollama.chat, снова проверьте openclaw nodes pending.Используйте его из агента
node_inference. Сначала агенты вызывают
action: "discover", а затем action: "run", указав Node и модель из
полученного результата (run может не указывать Node, если подключён ровно один
подходящий Node). Например: «Найди модели Ollama на моих Node, а затем используй
самую быструю загруженную модель, чтобы кратко изложить этот текст»./api/tags, проверяются возможности /api/show, а
/api/ps, когда он доступен, используется для приоритетного ранжирования уже загруженных моделей. Возвращаются только
локальные модели, которые Ollama определяет как поддерживающие чат (возможность completion) —
строки Ollama Cloud и модели только для эмбеддингов исключаются. Каждый запуск отключает
мышление модели и по умолчанию ограничивает вывод 512 токенами (жёсткий предел — 8192), если
вызов инструмента не запрашивает другое значение maxTokens; некоторые модели (например, GPT-OSS)
не поддерживают отключение мышления и всё равно могут выдавать токены рассуждений.
Чтобы оставить Ollama запущенным на Node, не предоставляя к нему доступ агентам:
openclaw node restart или остановите и снова выполните openclaw node run
для сеанса переднего плана). Node перестанет объявлять ollama.models и
ollama.chat; сама Ollama и провайдер Ollama в Gateway затронуты не будут.
Верните значение true и перезапустите, чтобы снова включить эту функцию; после повторного подключения
для изменившегося набора команд может снова потребоваться подтверждение openclaw nodes pending.
Проверьте команды Node напрямую, без хода агента:
--invoke-timeout ограничивает время, отведённое Node на выполнение команды;
--timeout ограничивает общую продолжительность вызова Gateway и должно быть больше.
Локальный вывод на Node всегда использует собственную loopback-конечную точку Node — он
не использует повторно настроенный удалённый/облачный models.providers.ollama.baseUrl. Команды
Node по умолчанию доступны на хостах Node с macOS, Linux и Windows
и по-прежнему подчиняются обычной политике сопряжения и команд Node.
Компьютерное зрение и описание изображений
Встроенный плагин Ollama регистрирует Ollama как поддерживающий изображения провайдер понимания мультимедиа, поэтому OpenClaw может направлять явные запросы на описание изображений и настроенные модели изображений по умолчанию в локальные или размещённые модели компьютерного зрения Ollama.--model должен быть полной ссылкой <provider/model>; если он задан, infer image describe сначала пробует эту модель, а не пропускает описание для моделей,
которые уже изначально поддерживают компьютерное зрение. Если вызов завершается ошибкой, OpenClaw может продолжить
через agents.defaults.imageModel.fallbacks; ошибки подготовки файла/URL
возникают до попытки резервного варианта. Используйте infer image describe для
потока понимания изображений OpenClaw и настроенного imageModel; используйте infer model run --file для прямой мультимодальной проверки с пользовательским запросом.
Чтобы сделать Ollama провайдером понимания изображений по умолчанию для входящих медиафайлов:
ollama/<model>. Ссылка imageModel без префикса, например
qwen2.5vl:7b, нормализуется в ollama/qwen2.5vl:7b только тогда, когда именно эта модель
указана в models.providers.ollama.models с
input: ["text", "image"] и ни один другой настроенный провайдер изображений не предоставляет
тот же идентификатор без префикса; в противном случае явно укажите префикс провайдера.
Медленным локальным моделям компьютерного зрения может потребоваться более длительный тайм-аут понимания изображений, чем
облачным моделям; кроме того, они могут аварийно завершаться на оборудовании с ограниченными ресурсами, если Ollama пытается
выделить полный заявленный контекст компьютерного зрения модели. Задайте тайм-аут
возможности и ограничьте num_ctx:
image. models.providers.ollama.timeoutSeconds по-прежнему управляет
ограничителем базового HTTP-запроса Ollama для обычных вызовов модели.
Проверка в реальной среде:
models.providers.ollama.models определяется вручную, явно пометьте модели компьютерного зрения:
/api/show.
Конфигурация
- Базовая (неявное обнаружение)
- Явная (модели вручную)
- Пользовательский базовый URL
Распространённые рецепты
Замените идентификаторы моделей точными именами изollama list или
openclaw models list --provider ollama.
Локальная модель с автоматическим обнаружением
Локальная модель с автоматическим обнаружением
models.providers.ollama, если модели не требуется задавать вручную.Хост Ollama в локальной сети с моделями, заданными вручную
Хост Ollama в локальной сети с моделями, заданными вручную
contextWindow — бюджет контекста OpenClaw; params.num_ctx отправляется в
Ollama. Согласуйте их, если оборудование не может выполнить модель с полным
заявленным контекстом.Только Ollama Cloud
Только Ollama Cloud
ollama-cloud вместо этой структуры см.
Ollama Cloud.Облако и локальная среда через демон с выполненным входом
Облако и локальная среда через демон с выполненным входом
Несколько хостов Ollama
Несколько хостов Ollama
ollama/), поэтому ollama-large/qwen3.5:27b
поступает в Ollama как qwen3.5:27b.Облегчённый профиль локальной модели
Облегчённый профиль локальной модели
compat.supportsTools: false, только если модель или сервер стабильно
завершается с ошибкой при обработке схем инструментов: это повышает стабильность ценой возможностей агента.
localModelLean удаляет ресурсоёмкие инструменты браузера, cron, сообщений, генерации мультимедиа,
голоса и PDF из непосредственного набора инструментов агента, если они явно не требуются,
и помещает более крупные каталоги за Tool Search. Это не изменяет контекст
среды выполнения или режим мышления Ollama. Используйте его вместе с params.num_ctx и
params.thinking: false для небольших моделей мышления в стиле Qwen, которые зацикливаются или
расходуют свой бюджет на скрытые рассуждения.Выбор модели
ollama-spark/qwen3:32b, OpenClaw удаляет этот префикс перед
вызовом Ollama и отправляет qwen3:32b.
Для медленных локальных моделей сначала настраивайте параметры на уровне провайдера, а не увеличивайте тайм-аут
всей среды выполнения агента:
timeoutSeconds охватывает HTTP-запрос к модели: установление соединения, заголовки,
потоковую передачу тела и полное прерывание защищённого запроса. params.keep_alive
передаётся как поле верхнего уровня keep_alive в нативных запросах /api/chat; задавайте его отдельно для каждой
модели, если узким местом является время загрузки при первом обращении.
Быстрая проверка
127.0.0.1 хостом baseUrl. Если curl
работает, а OpenClaw — нет, проверьте, не запущен ли Gateway на другой
машине, в другом контейнере или под другой служебной учётной записью.
Веб-поиск Ollama
OpenClaw включает веб-поиск Ollama в качестве провайдераweb_search.
openclaw onboard или openclaw configure --section web либо задайте:
/api/experimental/web_search,
а затем использует в качестве резервного варианта размещённый путь /api/web_search на том же хосте;
локальный демон с выполненным входом обычно отвечает через локальный прокси. Прямые
вызовы https://ollama.com всегда используют размещённую конечную точку /api/web_search.
Расширенная конфигурация
Устаревший режим совместимости с OpenAI
Устаревший режим совместимости с OpenAI
api: "openai-completions" для прокси за
/v1/chat/completions:params: { streaming: false } в модели.В этом режиме OpenClaw по умолчанию внедряет options.num_ctx, чтобы Ollama
не переходил без уведомления к контексту на 4096 токенов. Если прокси отклоняет
неизвестные поля options, отключите это:Контекстные окна
Контекстные окна
/api/show,
включая увеличенные значения PARAMETER num_ctx из пользовательских
Modelfile; в противном случае используется контекстное окно Ollama по умолчанию в OpenClaw.Параметры уровня провайдера contextWindow, contextTokens и maxTokens задают
значения по умолчанию для каждой модели этого провайдера и могут быть переопределены для
отдельных моделей. contextWindow — собственный бюджет запросов/Compaction OpenClaw. В нативных
запросах /api/chat поле options.num_ctx остаётся незаданным, если
params.num_ctx не задано явно, поэтому Ollama применяет собственное значение по умолчанию,
определяемое моделью, OLLAMA_CONTEXT_LENGTH или объёмом VRAM; недопустимые, нулевые, отрицательные
или неконечные значения params.num_ctx игнорируются. Если в старой конфигурации для
принудительного задания контекста нативного запроса использовались только contextWindow/maxTokens, выполните
openclaw doctor --fix, чтобы скопировать их в params.num_ctx. Адаптер,
совместимый с OpenAI, по-прежнему по умолчанию внедряет options.num_ctx из
настроенного params.num_ctx или contextWindow; отключите это с помощью
injectNumCtxForOpenAICompat: false, если вышестоящая система отклоняет options.Нативные записи моделей также принимают стандартные параметры среды выполнения Ollama в
params, передаваемые как нативные /api/chat options: num_keep, seed,
num_predict, top_k, top_p, min_p, typical_p, repeat_last_n,
temperature, repeat_penalty, presence_penalty, frequency_penalty,
stop, num_batch, num_gpu, main_gpu, use_mmap и num_thread.
Несколько ключей (format, keep_alive, truncate, shift) передаются как
поля запроса верхнего уровня, а не внутри options. OpenClaw передаёт
только эти ключи запросов Ollama, поэтому параметры, используемые только средой выполнения, например
streaming, никогда не отправляются в Ollama. Используйте params.think (или
params.thinking), чтобы задать think верхнего уровня; false отключает
мышление на уровне API для моделей мышления в стиле Qwen.agents.defaults.models["ollama/<model>"].params.num_ctx для отдельных моделей также
работает; если заданы оба, приоритет имеет явная запись модели провайдера.Управление мышлением
Управление мышлением
think верхнего уровня, а не
options.think. Автоматически обнаруженные модели, для которых /api/show сообщает о
возможности thinking, предоставляют /think low, /think medium, /think high
и /think max; модели без мышления предоставляют только /think off.params.think/params.thinking для отдельной модели могут отключить или принудительно включить
рассуждение через API для конкретной модели. OpenClaw сохраняет эту явную конфигурацию,
когда в активном запуске задано только неявное значение по умолчанию off; команда среды выполнения,
не отключающая рассуждение, например /think medium, всё равно переопределяет её. Запрос с включённым
рассуждением никогда не отправляется модели, явно помеченной
reasoning: false; запрос think: false отправляется всегда.Модели с рассуждением
Модели с рассуждением
deepseek-r1, reasoning, reason или think по умолчанию считаются
поддерживающими рассуждение — дополнительная конфигурация не требуется:Стоимость моделей
Стоимость моделей
0 как для
автоматически обнаруженных, так и для заданных вручную моделей.Эмбеддинги памяти
Эмбеддинги памяти
/api/embed и по возможности объединяет несколько фрагментов памяти
в один запрос input.При proxy.enabled=true запросы эмбеддингов к точному локальному
loopback-источнику, полученному из настроенного baseUrl, используют защищённый
прямой путь OpenClaw вместо управляемого прокси переадресации. Само настроенное
имя хоста должно быть localhost или литералом loopback-IP — DNS-имена,
которые лишь разрешаются в loopback-адрес, по-прежнему используют путь через управляемый прокси. Хосты Ollama
в LAN, tailnet, частной или общедоступной сети всегда используют
путь через управляемый прокси, а перенаправления на другой хост или порт не наследуют
доверие. proxy.loopbackMode: "proxy" всё равно направляет loopback-трафик через
прокси; proxy.loopbackMode: "block" запрещает его до подключения —
см. Управляемый прокси.nomic-embed-text, qwen3-embedding и
mxbai-embed-large. Пакеты документов остаются без изменений, поэтому существующим индексам
не требуется миграция формата.Конфигурация потоковой передачи
Конфигурация потоковой передачи
/api/chat), который поддерживает
одновременную потоковую передачу и вызов инструментов — специальная конфигурация не требуется.Для нативных запросов управление рассуждением передаётся напрямую: /think off
и openclaw agent --thinking off отправляют верхнеуровневый параметр think: false, если явно
не настроен params.think/params.thinking; /think low|medium|high отправляют соответствующую строку уровня рассуждения; /think max сопоставляется
с максимальным уровнем рассуждения Ollama — think: "high".Устранение неполадок
Циклические сбои WSL2 (повторные перезагрузки)
Циклические сбои WSL2 (повторные перезагрузки)
ollama.service с Restart=always. Если эта служба
запускается автоматически и загружает модель с поддержкой GPU во время загрузки WSL2, Ollama может закрепить
память хоста во время загрузки; механизм возврата памяти Hyper-V не всегда может освободить
эти страницы, поэтому Windows может завершить виртуальную машину WSL2, systemd перезапустит
Ollama, и цикл повторится.Признаки: повторные перезагрузки или завершения WSL2, высокая загрузка ЦП процессами app.slice или
ollama.service сразу после запуска WSL2 и сигнал SIGTERM от systemd, а
не от механизма Linux OOM killer.OpenClaw записывает предупреждение при запуске, когда обнаруживает WSL2, включённый ollama.service
с Restart=always и видимые маркеры CUDA.Способ устранения:%USERPROFILE%\.wslconfig, затем выполните
wsl --shutdown:Ollama не обнаружен
Ollama не обнаружен
OLLAMA_API_KEY (или профиль аутентификации) задан,
а models.providers.ollama не определён явно:Нет доступных моделей
Нет доступных моделей
models.providers.ollama:В подключении отказано
В подключении отказано
Удалённый хост работает с curl, но не с OpenClaw
Удалённый хост работает с curl, но не с OpenClaw
baseUrlуказывает наlocalhost, но Gateway работает в Docker или на другом хосте.- В URL используется
/v1, из-за чего выбирается OpenAI-совместимое поведение вместо нативного Ollama. - На удалённом хосте необходимо изменить настройки межсетевого экрана или привязки к LAN.
- Модель находится в фоновом процессе на вашем ноутбуке, но отсутствует в удалённом.
Модель выводит JSON инструментов как текст
Модель выводит JSON инструментов как текст
compat.supportsTools: false в записи этой модели и повторите проверку.Kimi или GLM возвращает искажённые символы
Kimi или GLM возвращает искажённые символы
Cloud + Local или Cloud only, затем попробуйте новый
сеанс и резервную модель:Холодный запуск локальной модели завершается по тайм-ауту
Холодный запуск локальной модели завершается по тайм-ауту
timeoutSeconds также
увеличивает защищённый тайм-аут подключения для этого провайдера.Модель с большим контекстом работает слишком медленно или исчерпывает память
Модель с большим контекстом работает слишком медленно или исчерпывает память
params.num_ctx. Ограничьте как бюджет OpenClaw, так и контекст запроса Ollama,
чтобы обеспечить предсказуемую задержку до первого токена:contextWindow, если OpenClaw отправляет слишком большой промпт. Уменьшите
params.num_ctx, если контекст среды выполнения Ollama слишком велик для этой машины.
Уменьшите maxTokens, если генерация занимает слишком много времени.Связанные материалы
Ollama Cloud
ollama-cloud.