Локальні LLM з Ollama: CLI, API та мережування у WSL
Запустіть локальний LLM за допомогою Ollama: виберіть моделі, які підходять, за допомогою llmfit, перегляньте теги через ollama show та отримайте доступ до API Ollama, розміщеного на Windows, через WSL за допомогою IP-адреси шлюзу.
Джерела: Setting up local LLMs with Ollama
Локальні LLM знову стали цікавими, коли покращилася якість програмного забезпечення з відкритим кодом та досягли схожих характеристик графічні процесори ноутбуків. Перейшовши на HP OMEN Max з графічним процесором NVIDIA RTX 5070 Ti (12 ГБ VRAM), використання моделей вдома більше не нагадувало науковий проєкт, а стало звичайним інструментом щодня.
Існує багато інструментів для їх запуску, які роблять цей процес простим: Ollama, vLLM, LM Studio, llama.cpp. Я обрав Ollama через швидкість налаштування. Окрім неформальних розмов, мені потрібні фреймворки типу LangChain DeepAgents, які будуть взаємодіяти з локальним API, а не спалювати кошти на облакові послуги під час кожного експерименту.
Яка модель підходить для цієї машини?
Каталог розширюється щотижня. Постійне запитання — «яку модель з відкритим кодом мені насправді слід запустити на цьому GPU?» — тепер має допоміжний інструмент: llmfit, який показує, які моделі підходять до вашого обладнання, щоб ви не завантажували десятки гігабайт випадково. Це вже саме по собі дозволяє заощадити час на безкінечних спробах та помилках.
Інтерфейс чату Ollama
Інтерфейс здається знайомим, якщо ви користувалися ChatGPT або Gemini. Виберіть модель, розміщену в хмарі, або локальну (наприклад qwen3.6), якщо це дозволяє VRAM. Переключувач у вигляді кулі дозволяє увімкнути або вимкнути доступ до мережі для моделі, коли ви хочете отримувати відповіді через мережу або без неї.
Команди CLI, які розкривають справжню модель
Позначки в інтерфейсі, такі як qwen3.6, приховують деталі архітектури — кількість параметрів, родини моделей та особливості файлів моделей. CLI швидко заповнює цю прогалину.
Список того, що встановлено локально:
ollama list
NAME ID SIZE MODIFIED
qwen3.6:latest 07d35212591f 23 GB 2 months ago
gemma4:latest c6eb396dbd59 9.6 GB 3 months ago
Показати параметри та архітектуру вказаної тег-значення:
ollama show qwen3.6:latest
Model
architecture qwen35moe
parameters 36.0B
context length 262144
embedding length 2048
quantization Q4_K_M
Capabilities
completion
vision
tools
thinking
Parameters
temperature 1
top_k 20
top_p 0.95
min_p 0
presence_penalty 1.5
repeat_penalty 1
License
Apache License
Version 2.0, January 2004
...
Вивести файл моделі, який використовувався для її створення:
ollama show --modelfile qwen3.6:latest
# Modelfile generated by "ollama show"
# To build a new Modelfile based on this, replace FROM with:
# FROM qwen3.6:latest
FROM C:\Users\Guangyuan\.ollama\models\blobs\sha256-f5ee307a2982106a6eb82b62b2c00b575c9072145a759ae4660378acda8dcf2d
TEMPLATE {{ .Prompt }}
RENDERER qwen3.5
PARSER qwen3.5
PARAMETER min_p 0
PARAMETER presence_penalty 1.5
PARAMETER repeat_penalty 1
PARAMETER temperature 1
PARAMETER top_k 20
PARAMETER top_p 0.95
LICENSE """
Ці три команди дають відповідь на запитання «що саме працює?» без необхідності перегляду документації чи здогадок на основі маркетингової назви.
Взаємодія з моделями через HTTP
Ollama надає HTTP API, схожий за принципом на ендпоїнти OpenAI чи Claude. Це ідеально підходить для експериментів з LangGraph чи DeepAgents без необхідності оплати за кожен токен під час тестування різних запитів та інструментів.
Перевірити ендпоїнт тег-значень:
curl http://localhost:11434/api/tags
StatusCode : 200
StatusDescription : OK
Content : {"models":[{"name":"qwen3.6:latest","model":"qwen3.6:latest","modified_at":"2026-05-17T22:03:48.7536396+01:00","size":23938333577,"digest":"07d35212591fc27746f0a317c975a6d68754fb38e9053d82e25f06057af2...
RawContent : HTTP/1.1 200 OK
Content-Length: 843
Content-Type: application/json; charset=utf-8
Date: Fri, 14 Aug 2026 21:04:05 GMT
{"models":[{"name":"qwen3.6:latest","model":"qwen3.6:latest","modified_at":"...
Forms : {}
Headers : {[Content-Length, 843], [Content-Type, application/json; charset=utf-8], [Date, Fri, 14 Aug 2026 21:04:05 GMT]}
Images : {}
InputFields : {}
Links : {}
ParsedHtml : mshtml.HTMLDocumentClass
RawContentLength : 843
Варіант WSL у Windows
Якщо Ollama працює у Windows, а код вашого агента — усередині WSL, стандартний localhost вказує не на потрібну машину — він спрямований на Linux-ВМ, а не на Windows-хост, де працює Ollama. У налаштуваннях Ollama увімкніть опцію Expose Ollama to the network, а потім з’ясуйте IP-адресу Windows-хоста з WSL:
wsl
ip route | grep default
default via 172.20.160.1 dev eth0 proto kernel
Зверніться до IP-адреси гейтвею на порту 11434:
curl http://172.20.160.1:11434/api/tags
{"models":[{"name":"qwen3.6:latest","model":"qwen3.6:latest","modified_at":"2026-05-17T22:03:48.7536396+01:00","size":23938333577,"digest":"07d35212591fc27746f0a317c975a6d68754fb38e9053d82e25f06057af28522","details":{"parent_model":"","format":"gguf","family":"qwen35moe","families":["qwen35moe"],"parameter_size":"36.0B","quantization_level":"Q4_K_M","context_length":262144,"embedding_length":2048},"capabilities":["vision","completion","tools","thinking"]},{"name":"gemma4:latest","model":"gemma4:latest","modified_at":"2026-05-08T20:45:49.3801369+01:00","size":9608350718,"digest":"c6eb396dbd5992bbe3f5cdb947e8bbc0ee413d7c17e2beaae69f5d569cf982eb","details":{"parent_model":"","format":"gguf","family":"gemma4","families":["gemma4"],"parameter_size":"8.0B","quantization_level":"Q4_K_M"},"capabilities":["completion","tools","thinking"]}]}
Тепер код на Python чи Node в Linux може отримати доступ до моделей, розміщених під Windows, так само, як він би звертався до localhost у сценарії з однією операційною системою.
Наскільки корисними є локальні LLM у повсякденному використанні, все ще залежить від завдань, які ви їм доручаєте — встановіть відповідні очікування, а потім продовжуйте роботу за допомогою наведеного вище CLI та API, поки затримка та якість не відповідатимуть вашому робочому процесу.