
Как увеличить контекст Ollama для локального агента и проверить результат
На странице · 6 разделов
Чтобы увеличить контекст Ollama для локального агента, задайте `num_ctx` в сессии или запросе либо настройте `OLLAMA_CONTEXT_LENGTH` для своего сервера. Затем выполните запрос и посмотрите столбцы `CONTEXT` и `PROCESSOR` команды `ollama ps`: первое показывает выделенное окно, второе — размещение на CPU/GPU. Размер окна не гарантирует, что агент использует всю историю без обрезки, а слишком большой контекст увеличивает потребность в памяти.
Источники сверены 25 сентября 2026 года. Git-документы Ollama закреплены на commit
7af39318; библиотека тегов снята в тот же день. Команды — пример по документации: Modelium не запускал модель и не измерял RAM, VRAM, скорость или качество ответа. Поисковая подсказка подтверждает формулировку, не частотность запроса.
Когда агенту нужно больше контекста?
Контекст — число токенов, доступных модели при генерации ответа; в агентном диалоге там могут находиться инструкции, история, результаты инструментов и текущая задача s1s7. Если история выходит за выделенное окно, одного обещанного размера из карточки модели недостаточно: клиент может ещё и сокращать историю до отправки на сервер. Разделите три вопроса: сколько модель допускает, сколько Ollama выделила при загрузке и сколько сообщений клиент действительно послал в запросе s1s3.
Разработчик Ollama рекомендует для агентных и coding-задач окно от 64 тысяч токенов, но это совет разработчика, не гарантированное требование каждого агента: длинное окно расходует больше памяти s1. Начните с короткого контрольного диалога и явного значения 8192, затем увеличивайте постепенно только если ваш выбранный тег, память и задача это допускают. Не называйте файл весов объёмом требуемой VRAM: к весам добавляются runtime и буферы контекста; фактическое размещение проверяют отдельно s1s2.
В закреплённой ревизии официальные страницы расходятся: context-length описывает значения по умолчанию в зависимости от VRAM, а FAQ называет 4096 токенов. Ни одно из них не стоит объявлять универсальным default для вашей версии и устройства: смотрите CONTEXT у загруженной модели и передавайте num_ctx явно s1s2.
Что подготовить до изменения настройки?
Нужны запущенный локальный, а не облачный сервер Ollama и точный установленный тег. Для небольшого учебного примера библиотека Ollama показывает qwen3:0.6b; это только подтверждённое имя тега, не обещание достаточного качества agent/tool calling или работы с 64 тысячами токенов s8. Если тега ещё нет, по инструкции установки сначала получите его через ollama pull qwen3:0.6b; команда скачивает веса, поэтому проверьте объём и условия в собственной среде до запуска. Используйте вместо него свою модель, если тест делается на рабочем стеке.
Проверьте список локальных моделей через ollama list, а для выбранной — ollama show --modelfile qwen3:0.6b; справка CLI и Modelfile описывают эти команды s5s4. POST /api/show выдаёт параметры и сведения о модели, включая model info; запись о максимальном окне модели не равна фактическому выделению памяти для текущего сеанса s3s1. Зафиксируйте ОС, версию Ollama, точный тег, RAM/VRAM, другие загруженные модели и тестовую задачу. Не отправляйте настоящие секреты в историю агента.
Как увеличить окно в CLI и проверить его?
В интерактивном ollama run qwen3:0.6b выполните команду /set parameter num_ctx 8192, затем задайте короткий безличный вопрос. Команду изменения параметра num_ctx документирует FAQ; она относится к этой интерактивной сессии, а не к настройкам чужого агентного клиента s2. Пока модель загружена, в другом терминале выполните:
ollama ps
Проверьте оба столбца: CONTEXT — выделенное окно в токенах, PROCESSOR — GPU, CPU или смешанное размещение. Это показывает состояние загруженной модели, а не число токенов, фактически использованных клиентом, и не подтверждает качество ответа s1s2. Если модель быстро выгружается, повторите запрос непосредственно перед проверкой; ollama ps показывает только загруженные модели s2s5.
Как задать num_ctx через native API для клиента-агента?
Когда клиент вызывает native POST /api/chat, он может передавать options.num_ctx непосредственно в запросе; API также принимает список сообщений messages и описание инструментов tools для агентного сценария s3s7. Для проверки окна без инструментов выполните запрос к локальному серверу:
curl -sS http://127.0.0.1:11434/api/chat \
-H 'Content-Type: application/json' \
-d '{"model":"qwen3:0.6b","messages":[{"role":"user","content":"Назови два числа: 2 и 3."}],"options":{"num_ctx":8192},"stream":false}'
ollama ps
Ожидайте JSON с ответом и, пока модель загружена, строку именно для qwen3:0.6b с колонкой CONTEXT; сравните её с выбранными 8192 s1s3. Если CONTEXT иной, не утверждайте, что настройка применена: уточните тег, версию, адрес сервера, параллельные запросы, настройки клиента и наличие ошибки в ответе API. Для машинной проверки GET /api/ps возвращает у загруженных моделей context_length и size_vram; последнее — поле работающего процесса, а не аппаратный минимум s3. num_ctx сам по себе не заставит приложение хранить все предыдущие сообщения: убедитесь, что ваш клиент действительно включает нужную историю в messages s3.
Если ваш клиент использует OpenAI-совместимый /v1/chat/completions, не переносите туда без проверки поле native API options.num_ctx: официальная инструкция для совместимого endpoint предлагает создать новый тег с параметром контекста в Modelfile и обращаться к нему по новому имени s6.
Когда использовать настройку сервера или Modelfile?
Для самостоятельно запущенного сервера Ollama документирует пример OLLAMA_CONTEXT_LENGTH=64000 ollama serve s1. Не поднимайте второй ollama serve поверх установленного сервиса: на Linux с systemd переменную задают в override ollama.service, затем делают daemon-reload и restart; на macOS-приложении и Windows процедура иная s2. После изменения снова посмотрите ollama ps на реально запущенной модели: переменная в вашей оболочке не означает, что её получил действующий сервис.
Если нужно отдельное, явно названное поведение для клиента с OpenAI-совместимым API, Modelfile содержит FROM qwen3:0.6b и PARAMETER num_ctx 8192. Сохраните его как Modelfile, создайте новый тег через ollama create agent-context-8k -f Modelfile и обращайтесь к нему, а не к исходному тегу s4s6. Сначала убедитесь, что у исходной модели поддерживается нужный размер окна и что полученный ответ пригоден для вашей задачи. Изменение имени не доказывает, что длинный контекст действительно помещается в память.
Как проверить результат и что делать при нехватке памяти?
- Снимите
ollama psпосле запроса: сохранитеNAME,CONTEXT,PROCESSOR, версию Ollama, тег, ОС и занятость RAM/VRAM своим системным монитором s1s2. Сопоставьте выделенное окно с тем, что клиент передал в запросе; если есть tool calling, отдельно проверьте получениеtool_callsи возврат результата инструмента — окно не гарантирует правильный вызов s7. - Повторите на короткой и длинной обезличенной истории, содержащей известный факт в начале, и зафиксируйте, пришёл ли он в
messagesи был ли верно использован. Это ваш тест функциональности, не обещанный benchmark модели. Если клиент сам обрезал историю, увеличение настройки Ollama не исправит его политику. - Если вместо ожидаемого GPU видите
100% CPUлибо смешанный режим, снизьтеnum_ctx, уберите ненужные параллельные запросы, выгрузите лишние модели или выберите вариант поменьше. По документации Ollama при параллельной обработке потребность в памяти растёт вместе с числом одновременных запросов и длиной контекста;OLLAMA_NUM_PARALLELпроверяйте на вашем сервисе s2. Не покупайте GPU только по размеру файла весов или примеру с чужого компьютера.
Откат: верните прежнее значение num_ctx в CLI/клиенте или настройку сервиса; временный тег Modelfile удаляйте только после проверки, что агент к нему больше не обращается (ollama rm agent-context-8k документирован CLI) s5. Следующий шаг: подготовьте локальную Ollama и точный тег, выполните контрольный запрос выше и сохраните реальный CONTEXT, PROCESSOR и ответ. Затем соберите безопасный тестовый агент уже с измеренной конфигурацией.
Источники
- Ollama — Context length — revision 7af393188defd52d370464de0d2064649cab9b41. Получено 25.09.2026.
- Ollama — FAQ: context window, GPU, concurrency and service environment — revision 7af393188defd52d370464de0d2064649cab9b41. Получено 25.09.2026.
- Ollama — API reference: chat, ps and show — revision 7af393188defd52d370464de0d2064649cab9b41. Получено 25.09.2026.
- Ollama — Modelfile reference — revision 7af393188defd52d370464de0d2064649cab9b41. Получено 25.09.2026.
- Ollama — CLI reference — revision 7af393188defd52d370464de0d2064649cab9b41. Получено 25.09.2026.
- Ollama — OpenAI compatibility and context size — revision 7af393188defd52d370464de0d2064649cab9b41. Получено 25.09.2026.
- Ollama — Tool calling — revision 7af393188defd52d370464de0d2064649cab9b41. Получено 25.09.2026.
- Ollama library — Qwen3 tags — Живая библиотека, снимок s8-qwen3.html; тег qwen3:0.6b подтверждён, лицензия/требования не выводятся из размера файла.. Получено 25.09.2026.