/api/chat) для размещенных облачных моделей и локальных/самостоятельно размещенных серверов Ollama. Вы можете использовать Ollama в трех режимах: Cloud + Local через доступный хост Ollama, Cloud only с https://ollama.com или Local only с доступным хостом Ollama.
OpenClaw также регистрирует ollama-cloud как полноценный id размещенного провайдера для
прямого использования Ollama Cloud. Используйте ссылки вроде ollama-cloud/kimi-k2.5:cloud, когда
нужна маршрутизация только в облако без совместного использования id локального провайдера ollama.
Для отдельной страницы настройки только для облака см. Ollama Cloud.
Конфигурация провайдера Ollama использует baseUrl как канонический ключ. OpenClaw также принимает baseURL для совместимости с примерами в стиле OpenAI SDK, но в новой конфигурации следует предпочитать baseUrl.
Правила аутентификации
Локальные хосты и хосты LAN
Локальные хосты и хосты LAN
ollama-local только для базовых URL Ollama с loopback, частной сетью, .local и простыми именами хостов.Удаленные хосты и хосты Ollama Cloud
Удаленные хосты и хосты Ollama Cloud
https://ollama.com) требуют реальные учетные данные через OLLAMA_API_KEY, профиль аутентификации или apiKey провайдера. Для прямого размещенного использования предпочитайте провайдер ollama-cloud.Пользовательские id провайдеров
Пользовательские id провайдеров
api: "ollama", следуют тем же правилам. Например, провайдер ollama-remote, указывающий на приватный хост Ollama в LAN, может использовать apiKey: "ollama-local", и подагенты будут разрешать этот маркер через хук провайдера Ollama, а не считать его отсутствующими учетными данными. Поиск по памяти также может задать agents.defaults.memorySearch.provider равным этому пользовательскому id провайдера, чтобы embeddings использовали соответствующий endpoint Ollama.Профили аутентификации
Профили аутентификации
auth-profiles.json хранит учетные данные для id провайдера. Помещайте настройки endpoint (baseUrl, api, id моделей, заголовки, тайм-ауты) в models.providers.<id>. Старые плоские файлы профилей аутентификации, такие как { "ollama-windows": { "apiKey": "ollama-local" } }, не являются форматом времени выполнения; выполните openclaw doctor --fix, чтобы переписать их в канонический профиль API-ключа ollama-windows:default с резервной копией. baseUrl в этом файле является шумом совместимости и должен быть перенесен в конфигурацию провайдера.Область embedding памяти
Область embedding памяти
- Ключ уровня провайдера отправляется только на хост Ollama этого провайдера.
agents.*.memorySearch.remote.apiKeyотправляется только на свой удаленный хост embedding.- Чистое значение env
OLLAMA_API_KEYрассматривается как соглашение Ollama Cloud и по умолчанию не отправляется локальным или самостоятельно размещенным хостам.
Начало работы
Выберите предпочитаемый способ настройки и режим.- Onboarding (рекомендуется)
- Ручная настройка
Выберите режим
- Cloud + Local — локальный хост Ollama плюс облачные модели, маршрутизируемые через этот хост
- Cloud only — размещенные модели Ollama через
https://ollama.com - Local only — только локальные модели
Выберите модель
Cloud only запрашивает OLLAMA_API_KEY и предлагает размещенные облачные значения по умолчанию. Cloud + Local и Local only запрашивают базовый URL Ollama, обнаруживают доступные модели и автоматически загружают выбранную локальную модель, если она еще недоступна. Когда Ollama сообщает об установленном теге :latest, таком как gemma4:latest, настройка показывает эту установленную модель один раз вместо отображения и gemma4, и gemma4:latest или повторной загрузки голого псевдонима. Cloud + Local также проверяет, выполнен ли вход на этом хосте Ollama для доступа к облаку.Неинтерактивный режим
Облачные модели
- Cloud + Local
- Cloud only
- Local only
Cloud + Local использует доступный хост Ollama как точку управления и для локальных, и для облачных моделей. Это предпочитаемый гибридный поток Ollama.Используйте Cloud + Local во время настройки. OpenClaw запрашивает базовый URL Ollama, обнаруживает локальные модели с этого хоста и проверяет, выполнен ли вход на хосте для облачного доступа с помощью ollama signin. Когда вход выполнен, OpenClaw также предлагает размещенные облачные значения по умолчанию, такие как kimi-k2.5:cloud, minimax-m2.7:cloud и glm-5.1:cloud.Если вход на хосте еще не выполнен, OpenClaw сохраняет настройку только локальной, пока вы не выполните ollama signin.Обнаружение моделей (неявный провайдер)
Когда вы задаетеOLLAMA_API_KEY (или профиль аутентификации) и не определяете models.providers.ollama или другой пользовательский удаленный провайдер с api: "ollama", OpenClaw обнаруживает модели из локального экземпляра Ollama по адресу http://127.0.0.1:11434.
| Поведение | Детали |
|---|---|
| Запрос каталога | Запрашивает /api/tags |
| Обнаружение возможностей | Использует best-effort обращения к /api/show, чтобы прочитать contextWindow, расширенные параметры Modelfile num_ctx и возможности, включая vision/tools |
| Модели vision | Модели с возможностью vision, сообщенной /api/show, помечаются как поддерживающие изображения (input: ["text", "image"]), поэтому OpenClaw автоматически добавляет изображения в prompt |
| Обнаружение reasoning | Использует возможности /api/show, когда они доступны, включая thinking; возвращается к эвристике по имени модели (r1, reasoning, think), когда Ollama опускает возможности |
| Лимиты токенов | Задает maxTokens равным стандартному ограничению max-token Ollama, используемому OpenClaw |
| Стоимость | Задает все стоимости равными 0 |
ollama/<pulled-model>:latest, в локальном infer model run; OpenClaw разрешает эту установленную модель из live-каталога Ollama без необходимости вручную написанной записи в models.json.
Для хостов Ollama с выполненным входом некоторые модели :cloud могут быть доступны через /api/chat
и /api/show до того, как появятся в /api/tags. Когда вы явно выбираете
полную ссылку ollama/<model>:cloud, OpenClaw проверяет именно эту отсутствующую модель с помощью
/api/show и добавляет ее в runtime-каталог только если Ollama подтверждает
метаданные модели. Опечатки по-прежнему завершаются ошибкой неизвестной модели, а не автоматически создаются.
infer model run с полной ссылкой на модель Ollama:
infer model run. Это отправляет prompt и изображение напрямую в
выбранную модель Ollama vision без загрузки chat-инструментов, памяти или предыдущего
контекста сессии:
model run --file принимает файлы, определенные как image/*, включая распространенные входные PNG,
JPEG и WebP. Неизображения отклоняются до вызова Ollama.
Для распознавания речи используйте вместо этого openclaw infer audio transcribe.
Когда вы переключаете разговор с помощью /model ollama/<model>, OpenClaw трактует
это как точный выбор пользователя. Если настроенный Ollama baseUrl
недоступен, следующий ответ завершается ошибкой провайдера вместо того, чтобы незаметно
ответить через другую настроенную резервную модель.
Изолированные задания cron выполняют одну дополнительную локальную проверку безопасности перед запуском хода агента.
Если выбранная модель разрешается в локальный, частной сети или .local
провайдер Ollama и /api/tags недоступен, OpenClaw записывает этот запуск cron
как skipped с выбранным ollama/<model> в тексте ошибки. Предварительная проверка endpoint
кэшируется на 5 минут, поэтому несколько заданий cron, указывающих на один и тот же
остановленный daemon Ollama, не запускают все неудачные запросы к модели.
Проверьте вживую локальный текстовый путь, нативный путь потока и embeddings на
локальном Ollama с помощью:
https://ollama.com
и выберите размещенную модель из текущего каталога:
https://ollama.com, потому что ключи API Ollama Cloud могут не давать доступ к
/api/embed. Установите OPENCLAW_LIVE_OLLAMA_EMBEDDINGS=1, если вы явно хотите,
чтобы live-тест завершался ошибкой, если настроенный cloud-ключ не может использовать endpoint embed.
Чтобы добавить новую модель, просто загрузите ее через Ollama:
models.providers.ollama или настраиваете пользовательский удаленный провайдер, например models.providers.ollama-cloud с api: "ollama", автообнаружение пропускается, и модели нужно определить вручную. Пользовательские loopback-провайдеры, такие как http://127.0.0.2:11434, по-прежнему считаются локальными. См. раздел явной конфигурации ниже.Зрение и описание изображений
Встроенный Plugin Ollama регистрирует Ollama как провайдера понимания медиа с поддержкой изображений. Это позволяет OpenClaw маршрутизировать явные запросы на описание изображений и настроенные значения по умолчанию для image-моделей через локальные или размещенные vision-модели Ollama. Для локального зрения загрузите модель, поддерживающую изображения:--model должен быть полной ссылкой <provider/model>. Когда он задан, openclaw infer image describe запускает эту модель напрямую вместо пропуска описания из-за того, что модель поддерживает нативное зрение.
Используйте infer image describe, когда вам нужен поток провайдера понимания изображений OpenClaw, настроенный agents.defaults.imageModel и форма вывода описания изображения. Используйте infer model run --file, когда вам нужна сырая проверка мультимодальной модели с пользовательским prompt и одним или несколькими изображениями.
Чтобы сделать Ollama моделью понимания изображений по умолчанию для входящих медиа, настройте agents.defaults.imageModel:
ollama/<model>. Если та же модель указана в models.providers.ollama.models с input: ["text", "image"] и никакой другой настроенный провайдер изображений не предоставляет этот bare ID модели, OpenClaw также нормализует bare-ссылку imageModel, например qwen2.5vl:7b, в ollama/qwen2.5vl:7b. Если более одного настроенного провайдера изображений имеет один и тот же bare ID, явно используйте префикс провайдера.
Медленным локальным vision-моделям может требоваться более долгий timeout понимания изображений, чем cloud-моделям. Они также могут аварийно завершаться или останавливаться, когда Ollama пытается выделить полный заявленный vision-контекст на ограниченном оборудовании. Задайте timeout для capability и ограничьте num_ctx в записи модели, когда вам нужен только обычный ход описания изображения:
image, который агент может вызвать во время хода. models.providers.ollama.timeoutSeconds на уровне провайдера по-прежнему управляет базовой защитой HTTP-запроса Ollama для обычных вызовов модели.
Проверьте вживую явный инструмент image на локальном Ollama с помощью:
models.providers.ollama.models вручную, пометьте vision-модели поддержкой входных изображений:
/api/show сообщает о capability vision.
Конфигурация
- Базовая (неявное обнаружение)
- Явная (ручные модели)
- Пользовательский базовый URL
Распространенные рецепты
Используйте их как отправные точки и замените ID моделей точными именами изollama list или openclaw models list --provider ollama.
Локальная модель с автообнаружением
Локальная модель с автообнаружением
models.providers.ollama, если не хотите определять модели вручную.LAN-хост Ollama с ручными моделями
LAN-хост Ollama с ручными моделями
/v1.contextWindow — это бюджет контекста на стороне OpenClaw. params.num_ctx отправляется в Ollama для запроса. Держите их согласованными, когда ваше оборудование не может запустить полный заявленный контекст модели.Только Ollama Cloud
Только Ollama Cloud
Cloud плюс локальные модели через daemon с выполненным входом
Cloud плюс локальные модели через daemon с выполненным входом
ollama signin и должен обслуживать и локальные модели, и модели :cloud.Несколько хостов Ollama
Несколько хостов Ollama
ollama-large/qwen3.5:27b поступает в Ollama как qwen3.5:27b.Облегченный профиль локальной модели
Облегченный профиль локальной модели
compat.supportsTools: false только когда модель или сервер стабильно не справляются со схемами инструментов. Это обменивает возможности агента на стабильность.
localModelLean удаляет браузер, Cron и инструменты сообщений с прямой поверхности агента и по умолчанию помещает более крупные каталоги за структурированные элементы управления поиском инструментов, кроме случаев, когда запуск должен сохранить семантику прямой доставки сообщений, но не меняет контекст среды выполнения Ollama или режим мышления. Сочетайте это с явными params.num_ctx и params.thinking: false для небольших моделей мышления в стиле Qwen, которые зацикливаются или тратят бюджет ответа на скрытое рассуждение.Выбор модели
После настройки доступны все ваши модели Ollama:ollama-spark/qwen3:32b, OpenClaw удаляет только этот
префикс перед вызовом Ollama, поэтому сервер получает qwen3:32b.
Для медленных локальных моделей предпочитайте настройку запросов в рамках провайдера, прежде чем увеличивать
тайм-аут всей среды выполнения агента:
timeoutSeconds применяется к HTTP-запросу модели, включая установку соединения,
заголовки, потоковую передачу тела и полное прерывание защищенной выборки. params.keep_alive
передается в Ollama как верхнеуровневый keep_alive в нативных запросах /api/chat;
задавайте его для каждой модели, когда узким местом является время загрузки первого хода.
Быстрая проверка
127.0.0.1 на хост, используемый в baseUrl. Если curl работает, а OpenClaw — нет, проверьте, не работает ли Gateway на другой машине, в контейнере или под другой сервисной учетной записью.
Веб-поиск Ollama
OpenClaw поддерживает веб-поиск Ollama как встроенный провайдерweb_search.
| Свойство | Подробности |
|---|---|
| Хост | Использует настроенный хост Ollama (models.providers.ollama.baseUrl, если задан, иначе http://127.0.0.1:11434); https://ollama.com использует размещенный API напрямую |
| Аутентификация | Без ключа для локальных хостов Ollama с выполненным входом; OLLAMA_API_KEY или настроенная аутентификация провайдера для прямого поиска через https://ollama.com или хостов, защищенных аутентификацией |
| Требование | Локальные/самостоятельно размещенные хосты должны быть запущены и авторизованы через ollama signin; прямой размещенный поиск требует baseUrl: "https://ollama.com" плюс настоящий ключ API Ollama |
openclaw onboard или openclaw configure --section web, либо задайте:
/api/experimental/web_search. Для https://ollama.com он напрямую вызывает размещенную конечную точку /api/web_search.
Расширенная конфигурация
Устаревший OpenAI-совместимый режим
Устаревший OpenAI-совместимый режим
api: "openai-completions":params: { streaming: false } в конфигурации модели.Когда api: "openai-completions" используется с Ollama, OpenClaw по умолчанию внедряет options.num_ctx, чтобы Ollama не откатывалась молча к контекстному окну 4096. Если ваш прокси или вышестоящий сервис отклоняет неизвестные поля options, отключите это поведение:Контекстные окна
Контекстные окна
PARAMETER num_ctx из пользовательских Modelfiles. В противном случае он откатывается к контекстному окну Ollama по умолчанию, используемому OpenClaw.Вы можете задать значения по умолчанию contextWindow, contextTokens и maxTokens на уровне провайдера для каждой модели под этим провайдером Ollama, а затем переопределять их для отдельных моделей при необходимости. contextWindow — это бюджет промпта и Compaction в OpenClaw. Нативные запросы Ollama оставляют options.num_ctx незаданным, если вы явно не настроите params.num_ctx, поэтому Ollama может применить собственное значение по умолчанию на основе модели, OLLAMA_CONTEXT_LENGTH или VRAM. Чтобы ограничить или принудительно задать контекст среды выполнения Ollama для каждого запроса без пересборки Modelfile, задайте params.num_ctx; недопустимые, нулевые, отрицательные и не конечные значения игнорируются. Если вы обновили старую конфигурацию, которая использовала только contextWindow или maxTokens для принудительного задания контекста нативного запроса Ollama, запустите openclaw doctor --fix, чтобы скопировать эти явные бюджеты провайдера или модели в params.num_ctx. OpenAI-совместимый адаптер Ollama по-прежнему по умолчанию внедряет options.num_ctx из настроенных params.num_ctx или contextWindow; отключите это с помощью injectNumCtxForOpenAICompat: false, если ваш вышестоящий сервис отклоняет options.Нативные записи моделей Ollama также принимают общие параметры среды выполнения Ollama в params, включая temperature, top_p, top_k, min_p, num_predict, stop, repeat_penalty, num_batch, num_thread и use_mmap. OpenClaw пересылает только ключи запросов Ollama, поэтому параметры среды выполнения OpenClaw, такие как streaming, не попадают в Ollama. Используйте params.think или params.thinking, чтобы отправить верхнеуровневый think Ollama; 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 Ollama для конкретной настроенной модели. OpenClaw сохраняет эти явные параметры модели, когда активный запуск имеет только неявное значение по умолчанию off; команды среды выполнения не off, такие как /think medium, все равно переопределяют активный запуск.Модели рассуждения
Модели рассуждения
deepseek-r1, reasoning или think как поддерживающие рассуждение.Стоимость моделей
Стоимость моделей
Эмбеддинги памяти
Эмбеддинги памяти
/api/embed и, когда
возможно, объединяет несколько фрагментов памяти в один запрос input.Когда proxy.enabled=true, запросы эмбеддингов памяти Ollama к точному
host-local loopback origin, выведенному из настроенного baseUrl, используют
защищенный прямой путь OpenClaw вместо управляемого прокси пересылки.
Настроенное имя хоста само должно быть localhost или буквальным loopback
IP-адресом; DNS-имена, которые лишь разрешаются в loopback, все равно
используют путь управляемого прокси. LAN, tailnet, частные сети и публичные
хосты Ollama также остаются на пути управляемого прокси. Перенаправления на
другой хост или порт не наследуют доверие. Операторы все еще могут задать
глобальную настройку proxy.loopbackMode: "proxy", чтобы отправлять loopback
трафик через прокси, или proxy.loopbackMode: "block", чтобы запрещать
loopback подключения до открытия соединения; см.
Управляемый прокси для
эффекта этой настройки на весь процесс.| Свойство | Значение |
|---|---|
| Модель по умолчанию | nomic-embed-text |
| Автозагрузка | Да — модель эмбеддингов загружается автоматически, если ее нет локально |
nomic-embed-text, qwen3-embedding и mxbai-embed-large. Пакеты документов памяти остаются необработанными, чтобы существующим индексам не требовалась миграция формата.Чтобы выбрать Ollama как поставщика эмбеддингов для поиска по памяти:Конфигурация потоковой передачи
Конфигурация потоковой передачи
/api/chat), который полностью поддерживает потоковую передачу и вызов инструментов одновременно. Специальная конфигурация не требуется.Для нативных запросов /api/chat OpenClaw также напрямую передает Ollama управление thinking: /think off и openclaw agent --thinking off отправляют верхнеуровневое think: false, если не настроено явное значение модели params.think/params.thinking, а /think low|medium|high отправляют соответствующую верхнеуровневую строку усилия think. /think max сопоставляется с самым высоким нативным усилием Ollama, think: "high".Устранение неполадок
Цикл сбоев WSL2 (повторные перезагрузки)
Цикл сбоев WSL2 (повторные перезагрузки)
ollama.service с Restart=always. Если эта служба запускается автоматически и загружает модель с поддержкой GPU во время загрузки WSL2, Ollama может закрепить память хоста на время загрузки модели. Возврат памяти Hyper-V не всегда может вернуть эти закрепленные страницы, поэтому Windows может завершить VM WSL2, systemd снова запускает Ollama, и цикл повторяется.Типичные признаки:- повторные перезагрузки или завершения WSL2 со стороны Windows
- высокая CPU-нагрузка в
app.sliceилиollama.serviceвскоре после запуска WSL2 - SIGTERM от systemd, а не событие Linux OOM-killer
ollama.service с Restart=always и видимые маркеры CUDA.Смягчение:%USERPROFILE%\.wslconfig на стороне Windows, затем выполните 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. - Удаленному хосту нужны изменения firewall или привязки LAN на стороне Ollama.
- Модель присутствует в daemon на вашем ноутбуке, но отсутствует в удаленном daemon.
Модель выводит JSON инструмента как текст
Модель выводит JSON инструмента как текст
compat.supportsTools: false для записи этой модели и протестируйте повторно.Kimi или GLM возвращает искаженные символы
Kimi или GLM возвращает искаженные символы
Cloud + Local или Cloud only, затем попробуйте новый сеанс и fallback модель:Холодная локальная модель превышает тайм-аут
Холодная локальная модель превышает тайм-аут
timeoutSeconds также расширяет защищенный тайм-аут подключения Undici для этого поставщика.Модель с большим контекстом слишком медленная или исчерпывает память
Модель с большим контекстом слишком медленная или исчерпывает память
params.num_ctx. Ограничьте и бюджет OpenClaw, и контекст запроса Ollama, когда вам нужна предсказуемая задержка до первого токена:contextWindow, если OpenClaw отправляет слишком большой prompt. Уменьшите params.num_ctx, если Ollama загружает контекст среды выполнения, слишком большой для машины. Уменьшите maxTokens, если генерация выполняется слишком долго.